Generating elf kernel ?
Guillaume Dargaud
dargaud at lpsc.in2p3.fr
Thu Sep 16 17:25:49 EST 2010
> >> Please use simpleImage.<your target dts name>.elf.
> >
> > Great, that seems to be it...
> > Except that nothing happens when I jump to 0x40000, no message from the
>
> 0x40000? I recalled the entry point should be 0x400000 for
> simepleImage.*.elf. So you have to change this on the file,
> arch/powerpc/boot/wrapper.
Correct, I skipped a zero, the address is indeed 0x400000
> And also you should confirm if the upstream kernel support your board.
Our board is a custom derivative from a ML405.
My previous project uses ARCH=PPC and has been working fine for 2 years.
I'm currently trying to go to ARCH=PowerPC and understand dts files in order to
boot my first kernel.
I assume I shouldn't have to change anything in my bootloader.
After I jump to the kernel address, I don't even get the usual:
loaded at: 00400000 004F559C
board data at: 004F3520 004F359C
relocated to: 0040505C 004050D8
zimage at: 00405E48 004F211C
avail ram: 004F6000 08000000
Linux/PPC load: console=ttyUL0,115200 rw root=/dev/nfs ip=bootp
Uncompressing Linux...done.
Now booting the kernel
Something wrong with my serial console ?
> Additionally let's assume your bootloader create the map between the
> virtual address and the physical address as 1:1. If so you want to execute
> from 0x40000. But the actual PC address should be the loader address +
> offset. You can get this by readelf. Here if your loader address is zero,
> the offset will be pc address, not 0x40000. You can dump your memory to
> check this.
The bootloader has no concept of virtual address, right ?
--
Guillaume Dargaud
http://www.gdargaud.net/
More information about the Linuxppc-dev
mailing list