diff --git a/tb/sw/src/mstStartup.S b/tb/sw/src/mstStartup.S index 413f742..084413e 100644 --- a/tb/sw/src/mstStartup.S +++ b/tb/sw/src/mstStartup.S @@ -9,14 +9,7 @@ _prog_start: - la t0, trap_entry - csrw mtvec, t0 - li t0, 1 << 11 - csrw mie, t0 - csrr t0, mstatus - ori t0, t0, 1<<3 - csrw mstatus, t0 li x1, 0 li x2, 0 @@ -50,7 +43,17 @@ _prog_start: li x30, 0 li x31, 0 + la t0, trap_entry + csrw mtvec, t0 + li t0, 1 << 11 + csrw mie, t0 + li sp, 0x40011000 + + csrr t0, mstatus + ori t0, t0, 1<<3 + csrw mstatus, t0 + call main ecall diff --git a/tb/sw/src/slvStartup.S b/tb/sw/src/slvStartup.S index 09a9062..1c0eb89 100644 --- a/tb/sw/src/slvStartup.S +++ b/tb/sw/src/slvStartup.S @@ -9,14 +9,7 @@ _prog_start: - la t0, trap_entry - csrw mtvec, t0 - li t0, 1 << 11 - csrw mie, t0 - csrr t0, mstatus - ori t0, t0, 1<<3 - csrw mstatus, t0 li x1, 0 li x2, 0 @@ -50,7 +43,17 @@ _prog_start: li x30, 0 li x31, 0 + la t0, trap_entry + csrw mtvec, t0 + li t0, 1 << 11 + csrw mie, t0 + li sp, 0x40011000 + + csrr t0, mstatus + ori t0, t0, 1<<3 + csrw mstatus, t0 + call main ecall