[U-Boot-Users] Re: how can I boot u-boot from 0x40000 in flash instead

Ray Zhao ray.zhao.inhand at gmail.com
Fri Jul 15 17:09:18 CEST 2005

Thanks for the answers. I apologize that I did not make it clear. 
My board is a PXA270, it will, of cause, boot from 0x0000. But our
customer has a tiny tiny boot loader which just generates some special
data and save it in flash. (So they reserved the flash blocks from the
0x0000 to 0x40000.) Then it make PXA270 jump to the 0x40000 and run
the real boot loader from there. We used blob and it works fine with
kernel 2.4. But I am porting the new Linux 2.6 to the board and I
decide to switch to u-boot. My understanding is that after the u-boot
get the control, ie, the CPU jump to the first instruct of the u-boot
code. u-boot will do some initialization on the CPU's cache to build a
simple C environment and then copy part of itself from the flash into
the cache and run from there to initial the memory controller etc. The
code then will copy all (or the rest) the u-boot from the flash to the
memory. My question is, in default, u-boot will copy itself from the
0x0000 (right?). How could I let it know that the u-boot is actually
locates in the 0x40000.
> Ray Zhao wrote:
> My board need keep the first 0x40000 flash for special purpose. Is it
> easy to modify the u-boot to load itself from 0x40000 instead from the
> 0x0000? Any help is appreciated.
> Ray

> If your hardware supports it, probably.  Otherwise no.  Perhaps you
> could tell us what your hardware is?


>It's not U-Boot code what  determines  the  boot  address,  but  your
>processor.  So  your  real  question  is if you can teach your CPU to
>start from a different reset vector. But sorry, we cannot answer this

>Best regards,

>Wolfgang Denk
Everything that has a beginning has an end.

More information about the U-Boot mailing list