defining ZRELADDR as PHYS_OFFSET + TEXT_OFFSET

Uwe Kleine-König u.kleine-koenig at pengutronix.de
Wed Jan 27 05:12:28 EST 2010


Hello,

currently all platforms need to define zreladdr-y in
arch/arm/mach-$mach/Makefile.boot and PHYS_OFFSET (in
arch/arm/mach-$mach/include/mach/memory.h).

Constraints for these are:

 TEXTADDR = PAGE_OFFSET + TEXT_OFFSET
 __virt_to_phys(virt) = virt - PAGE_OFFSET + PHYS_OFFSET (at least for
	"small" virtual addresses)
 ZRELADDR = __virt_to_phys(TEXTADDR)

(The equallity for __virt_to_phys only holds "normaly" according to
http://lists.arm.linux.org.uk/lurker/message/20010723.185051.94ce743c.en.html.
In practice it holds for addresses of the first bank of RAM which is
enough for the purposes of this mail.)

So we can deduce ZRELADDR = PHYS_OFFSET + TEXT_OFFSET.

Is there something I missed or is it possible to get rid of zreladdr-y
in .../Makefile.boot and define it according to the equation above?

Best regards
Uwe

-- 
Pengutronix e.K.                              | Uwe Kleine-König            |
Industrial Linux Solutions                    | http://www.pengutronix.de/  |



More information about the linux-arm-kernel mailing list