diff options
Diffstat (limited to 'kernel/start.S')
| -rw-r--r-- | kernel/start.S | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/kernel/start.S b/kernel/start.S new file mode 100644 index 0000000..dce0faa --- /dev/null +++ b/kernel/start.S @@ -0,0 +1,20 @@ +.section .text._start +.global _start +.type _start, @function + +_start: + csrw mstatus, zero + csrw mie, zero + + la sp, __stack_top + + la t0, __bss_start + la t1, __bss_end + beq t0, t1, 2f +1: + sw zero, 0(t0) + addi t0, t0, 4 + bltu t0, t1, 1b +2: + call kernel_main + j . |
