Hi List,
As I posted some days ago, I am porting the kernel 2.6.15 to a CSB655 board.
I am trying to boot a vmlinux image from the umon that came with the board
without sucess: The kernel crashes when setup_arch() is called in
start_kernel() function (init/main.c), without any output to the console from
the printk()'s that are just before setup_arch().
What I could devise until now is that there is a mismatch between the memory
mappings of umon and linux. The umon sets RAMBASE to 0xa0000000, and loads
applications to addresses above 0xa0300000, only. Linux-mips sets PAGE_OFFSET
to 0x80000000 and assumes that the kernel is loaded in KSEG0 (correct me
please if I am saying something that is not true).
Now, if set LOADADD e.g. to 0xa0400000 in arch/mips/Makefile, the vmlinux
booting fails for a more or less obvious reason (mismatch to PAGE_OFFSET).
But if I adjust the PAGE_OFFSET to match the umon's mapping (i.e. to 0xa000
0000) the kernel booting. In both cases at the same point described above.
What am I missing here?
Thanks in advance and best regards.
--
Carlos Mitidieri
SYSGO AG - Office Ulm
|