[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