1/* 2 * Copyright 2011, Fran��ois Revol <revol@free.fr>. 3 * All rights reserved. Distributed under the terms of the MIT License. 4 */ 5 6#include <arch/arm/arch_cpu.h> 7 8#include <asm_defs.h> 9 10 11 .text 12 13/* status_t arch_start_kernel(struct kernel_args *kernelArgs, 14 addr_t kernelEntry, addr_t kernelStackTop); 15 16 r0 - kernelArgs 17 r1 - kernelEntry 18 r2 - kernelStackTop 19*/ 20FUNCTION(arch_start_kernel): 21 22 // set the kernel stack 23 mov sp,r2 24 25 // set up kernel _start args 26 //mov r0,r0 // kernelArgs 27 mov r4,r1 28 mov r1,#0 // currentCPU=0 29 30 // call the kernel 31 mov pc,r4 32 33 // return 34 mov r0,#-1 // B_ERROR 35 mov pc,lr 36 37FUNCTION_END(arch_start_kernel) 38 39