boottime kernel relocation, what I missed?
meerkat
yiming at windriver.com
Sat Jul 14 08:07:41 EST 2007
Figure that out, the bootstrap actually mapped the first 16M from C000000 to
the physicall address,
so calling a c routine, as long as it is in the first 16M, is OK
meerkat wrote:
>
> Good day all,
>
> For the first time I begin working on PPC, and on low level, and right
> start from boot sequence, one issue puzzled me.
>
> After bootstrap code (zImage) uncompressed the kernel vmLinux to physical
> memory (say from addr 0),
> it jumps to the kernel entry point, _start, using physically address.
>
> At this time, the MMU is not yet setup to map the kernel virtual address
> (which is statically linked against base address KERNELBASE) to the
> physically address.
>
> $ nm vmlinux |grep early_init
> c038b8e0 T early_init
>
>
> _start calls early_init before mmu is on to map the KERNEL_BASE to
> physically address
>
> The question is how "bl early_init" can branch to the early_init entry
> point, properly, as early_init is still a virtual address?
>
> Thanks
>
> Jim
>
--
View this message in context: http://www.nabble.com/boottime-kernel-relocation%2C-what-I-missed--tf4072673.html#a11588451
Sent from the linuxppc-embedded mailing list archive at Nabble.com.
More information about the Linuxppc-embedded
mailing list