[U-Boot] Kernel loading and memory layout

Wolfgang Denk wd at denx.de
Wed Jan 21 20:03:39 CET 2009


Dear Jerry Van Baren,

In message <49771642.1050705 at ge.com> you wrote:
>
> U-Boot loads the linux kernel in RAM where ever you tell it to and then 
> jumps to the linux kernel entry point.  The linux kernel, on start up, 
> relocates itself to where *it* wants to live and then proceeds.

This is not correct. You load the kernel to some memory  address  (in
RAM  or  flash or SRAM etc.). U-Boot will then copy (or "load") it to
the address givenm in the "load address" parameter of the image file,
and then jumpt to the entry point address given in the  "entry  point
address" parameter of the image file. Normally (at leats on PowerPC),
Linux  will NOT relocate itself (it may set up the MMU later, but the
initial execution starts exactly at the "entry point address").


Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The sooner our happiness together begins, the longer it will last.
	-- Miramanee, "The Paradise Syndrome", stardate 4842.6


More information about the U-Boot mailing list