[U-Boot-Users] u-boot.bin

Fundu fundu_1999 at yahoo.com
Wed Jul 23 17:48:45 CEST 2008


Thanks gvb!
that definitely makes sense. 

i see the u-boot.elf file is a lot bigger than the u-boot.bin. why is that ?

TIA !
--- On Wed, 7/23/08, Jerry Van Baren <gerald.vanbaren at GE.com> wrote:

> From: Jerry Van Baren <gerald.vanbaren at GE.com>
> Subject: Re: [U-Boot-Users] u-boot.bin
> To: fundu_1999 at yahoo.com
> Cc: u-boot-users at lists.sourceforge.net
> Date: Wednesday, July 23, 2008, 6:24 AM
> Fundu wrote:
> > ok, looks like 0x27051956 is uboot magic number (from
> start.S)
> > why is the CFG_MONITOR_BASE points to the magic number
> ? 
> 
> Because that is the definition.  From the file README:
> 
> - CFG_MONITOR_BASE:
>                  Physical start address of boot monitor
> code (set by
>                  make config files to be same as the text
> base address
>                  (TEXT_BASE) used when linking) - same as
>                  CFG_FLASH_BASE when booting from flash.
> 
> > --- On Tue, 7/22/08, Fundu
> <fundu_1999 at yahoo.com> wrote:
> > 
> >> From: Fundu <fundu_1999 at yahoo.com>
> >> Subject: [U-Boot-Users] u-boot.bin
> >> To: u-boot-users at lists.sourceforge.net
> >> Date: Tuesday, July 22, 2008, 3:44 PM
> >> i'm working on taishan ppc440gx.
> >>
> >> now here's what i noticed. snippet of
> u-boot.bin opened
> >> with a hex editor.
> >>
> >>
> >> fffbffff : 27051956 552d426f 6f742031 2e322e30 
> 
> This is the start, it should be (and probably is) at
> fffc0000.  Why does 
> your dump start at fff*bffff* (one byte before where it
> should)?
> 
> >> '..VU-Boot 1.2.0
> >> fffc000f : 20284a75 6c203232 20323030 38202d20  
> (Jul 22
> >> 2008 -
> >> fffc001f : 31343a31 363a3037 29000000 00000000 
> >> 14:16:07).......
> >> fffc002f : 00000000 00000000 00000000 00000000 
> >> ................
> >> fffc003f : 00000000 00000000 00000000 00000000 
> >> ................
> >>
> >> and my u-boot.map  
> >>
> >> .text           0xfffc0000    0x2aa9c
> >>  cpu/ppc4xx/start.o(.text)
> >>  .text          0xfffc0000     0x2704
> cpu/ppc4xx/start.o
> 
> Note the start address is fffc0000, not fffbffff.
> 
> [snip]
> 
> >> couple of question.
> >> 1) this line ".text           0xfffc0000   
> >> 0x2aa9c" from u-boot.map 
> >> which means .text starts at 0xfffc0000 and with
> length of
> >> 0x2aa9c. right ?
> 
> Yes.
> 
> >> then looking at the hex dump of u-boot.bin looks
> like
> >> there's some data right after first word
> (U-Boot
> >> 1.2.0...) 
> >> what am i missing ? 
> 
> The first word is the u-boot magic number, followed by the
> u-boot build 
> information (text).
> 
> >> 2) when ppc440gx reset it has 0xfffffffc in its
> program
> >> counter, the instr at this location is a branch
> instr.
> >> right ?
> 
> Yes.  See cpu/ppc4xx/start.S
> 
> >> b) this branch should go to TEXT_BASE which is
> 0xfffc0000
> >> in my case. 
> 
> No, it jumps to the start of some CPU initialization code
> in the last 4K 
> page (when released from reset, only the last 4K page is
> mapped).  That 
> code maps the rest of memory and jumps to the traditional
> PPC startup 
> code.  0xfffc0000 isn't involved.
> 
> >> and that location contains 0x05195655. which looks
> like a
> >> "rlwimix" instr. (rotate left word
> immediate then
> >> mask insert). does this look start of monitor ?
> 
> No, it looks like operator error.
> 
> >> Any insight on how the bootldr starts up would be
> >> appreciated too.
> >> thanks ! 
> 
> HTH,
> gvb


      




More information about the U-Boot mailing list