[U-Boot-Users] u-boot on top of another bootloader

Seingier François-Xavier Francois-Xavier.Seingier at thomson.net
Tue Jun 22 10:17:40 CEST 2004


> Can u-boot run on top of another bootloader? The board I'm 
> working on has a
> proprietary boot loader. I cannot totally abandon this 
> bootloader because
> the vendor is unwilling to disclose some critical details of 
> the board. So
> I'm thinking of putting u-boot on top of it. Is this idea feasible?

reminds me something ;) (see post a few weeks ago...)
> 
> The original boot loader is at 0xFFF00000. One thing I need 
> to do is to
> move the u-boot location to somewhere else. AFAIK u-boot 
> usually locates at
> 0xFFF00000. What feature of a board decides the address of the first
> instruction?
> 
I did the following:
The manufacturer provided a srec version of its bootloader and a flash
utility. Using a debugger, I made sure I could put back the original
bootloader if anything went wrong with u-boot. After this I gathered as much
information about the board as I could by:
- using the debugger and writing down the values of initialized registers
(done by the original bootloader)
- using some "utilities" provided by the original bootloader
Then I decided where to flash u-boot. On a ppc cpu, the processor first
jumps at address 0xfffffffc. At this very address there is a branch
instruction to a bootloader. For example, with the original bootloader this
could be 0xfff00000. You could replace this value and the position of u-boot
in flash by using the config.mk file in the board/$BOARD directory. This
will place the .text section at the defined position and replace the branch
address from the reset vector to the correct one.

hope this helps,

regards

François-Xavier SEINGIER 




More information about the U-Boot mailing list