Thread (5 messages) flat view 5 messages, 2 authors, 2007-07-16

Re: boottime kernel relocation, what I missed?

From: meerkat <hidden>
Date: 2007-07-13 22:07:44

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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help