2008-03-05 10:42:36 Questions on booting u-boot
J.J. Krabbendam (NETHERLANDS)
Message: 52107 I just started working on the blackfin environment so please be patient...
I have a couple of questions on the boot process. I take the bootloaders.html file as a starting point.
check BMODE pins
check OTP memory (if available)
configure selected boot source
load LDR from source and execute the init section
returns to Boot ROM
load the rest of the application into external memory (if necessary)
usually this is Das U-Boot
could be MicroMonitor
could be a standalone application
could be the Linux kernel
I have a u-boot.ldr programmed into NOR flash at address 0x2000.0000
4) The command bfin-uclinux-ldr -s u-boot.ldr shows that there is 1 init section with size 0x12C which is loaded at address 0xFFA0.0000, however if I do bfin-uclinux-objdump -S u-boot then I see only one routine in the 0xFFA0.0000 area and that is _bfin_reset (FFA0.000C - FFA0.0032). I don understand what is executed here. Can someone explain?
5) Until now I was used to a u-boot that runs from flash at reset until it copies itself to RAM and continues from there. When dealing with blackfin, does u-boot entirely run from RAM? Is it possible to do a RAM test before u-boot is copied into RAM by the blackfin bootrom?
Edit: fixed layout
2008-03-05 11:02:16 Re: Questions on booting u-boot
Mike Frysinger (UNITED STATES)
Message: 52109 you should read the documentation on the Boot ROM wrt typical LDR initialization ... this is documented in the HRM for your part as well as some of the VDSP loader manuals. we do not document these things in our wiki. you can find pointers and such here:
if you look at how the ldr is generated, you see this flag:
that means we set that object as the initcode block
yes, the blackfin port relocates to ram before executing anything else ... we plan on providing POST hooks for people to run pre-ram-relocation tests, but that does not exist yet