From 83e17e29456ec9b6d45f4d9f2634eb280c6f414f Mon Sep 17 00:00:00 2001 From: stefan Date: Wed, 19 Apr 2023 20:50:10 -0400 Subject: ticket locks --- sys/kern/entry.S | 69 -------------------------------------------------------- 1 file changed, 69 deletions(-) delete mode 100644 sys/kern/entry.S (limited to 'sys/kern/entry.S') diff --git a/sys/kern/entry.S b/sys/kern/entry.S deleted file mode 100644 index 9bf72ea..0000000 --- a/sys/kern/entry.S +++ /dev/null @@ -1,69 +0,0 @@ -.section ".text.init" - -// entrypoint for boot hart(s). a0: hartid, a1: *fdt -.globl _start - - -// entrypoint for other harts. a0: hartid, a1: unused for now -.global _mpentry - -_start: - /* disable interrupts and paging */ - csrw satp, zero - csrw sie, zero - csrw sip, zero - - .option push - .option norelax - la gp, __global_pointer$ - .option pop - - /* setup stack. - * stack grows toward lower address so sp will mark end of frame. - */ - addi t0, a0, 1 - li t1, PAGE_SIZE - la sp, __stack_start - mul t1, t1, t0 - add sp, sp, t1 - - /* setup thread pointer */ - mv tp, a0 - - /* the label _boot_hart is shared between threads. after the first atomic swap, all other harts will branch to mpentry */ - li a2, 1 - lla a3, _boot_hart - amoswap.w a3, a2, (a3) - bnez a3, _mpentry - - /* clear the bss section */ - la a2, __bss_start - la a3, __bss_end -1: - sd zero, (a2) - addi a2, a2, __SIZEOF_POINTER__ - blt a2, a3, 1b -2: - call init - j _spin - -_mpentry: - /* satp = 0, sstatus.sie = 0, a0 = hartid, a1 = opaque */ - - call mpinit - /* shouldn't reach this point */ - j _spin - -_spin: - wfi - j _spin - -.section ".data" -_boot_hart: - .word 0 - -.section ".rodata" -/* linker imports */ -.globl HEAP_START -HEAP_START: .dword __heap_start - -- cgit v1.2.3