From 6c167595037a0872338d999c7ce0971a5606dedb Mon Sep 17 00:00:00 2001 From: Robert Morris Date: Mon, 5 Oct 2020 15:28:01 -0400 Subject: more explicable scratch area size for machine-mode timer interrupts --- kernel/kernelvec.S | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'kernel/kernelvec.S') diff --git a/kernel/kernelvec.S b/kernel/kernelvec.S index 3e9d3e9..f42a364 100644 --- a/kernel/kernelvec.S +++ b/kernel/kernelvec.S @@ -93,8 +93,8 @@ kernelvec: timervec: # start.c has set up the memory that mscratch points to: # scratch[0,8,16] : register save area. - # scratch[32] : address of CLINT's MTIMECMP register. - # scratch[40] : desired interval between interrupts. + # scratch[24] : address of CLINT's MTIMECMP register. + # scratch[32] : desired interval between interrupts. csrrw a0, mscratch, a0 sd a1, 0(a0) @@ -103,8 +103,8 @@ timervec: # schedule the next timer interrupt # by adding interval to mtimecmp. - ld a1, 32(a0) # CLINT_MTIMECMP(hart) - ld a2, 40(a0) # interval + ld a1, 24(a0) # CLINT_MTIMECMP(hart) + ld a2, 32(a0) # interval ld a3, 0(a1) add a3, a3, a2 sd a3, 0(a1) -- cgit v1.2.3