[GSoC] [ARM] Patch by Johannes Wischert.

Add assembler code to actually jump to the kernel.
The terminal now says:

kernel entry at 80048228
PANIC: acquire_spinlock: attempt to acquire lock 0x8012a59c with interrupts enabled
Welcome to Kernel Debugging Land...
Thread 0 "" running on CPU 0
kdebug>



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32408 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
François Revol 2009-08-15 02:16:23 +00:00
parent d20ab0b9af
commit f6e18219c3

View File

@ -83,6 +83,12 @@ platform_start_kernel(void)
dprintf("kernel entry at %lx\n",
gKernelArgs.kernel_image.elf_header.e_entry);
asm( "MOV sp, %[adr]"::[adr] "r" (stackTop) );
asm( "MOV r0, %[args]"::[args] "r" (args) );
asm( "MOV r1, #0"::);
asm( "MOV pc, %[entry]"::[entry] "r" (gKernelArgs.kernel_image.elf_header.e_entry));
/* asm("movl %0, %%eax; " // move stack out of way
"movl %%eax, %%esp; "
: : "m" (stackTop));