diff --git a/code/os/11-syscall/plic.c b/code/os/11-syscall/plic.c index c28a8d18064089cadb059c0f01b3e1429a127608..6dcf2f95218be377b3c9d9e979753ff5dd997d60 100644 --- a/code/os/11-syscall/plic.c +++ b/code/os/11-syscall/plic.c @@ -2,7 +2,7 @@ void plic_init(void) { - int hart = r_tp(); + int hart = r_mhartid(); /* * Set priority for UART0. @@ -56,7 +56,7 @@ void plic_init(void) */ int plic_claim(void) { - int hart = r_tp(); + int hart = r_mhartid(); int irq = *(uint32_t*)PLIC_MCLAIM(hart); return irq; } @@ -73,6 +73,6 @@ int plic_claim(void) */ void plic_complete(int irq) { - int hart = r_tp(); + int hart = r_mhartid(); *(uint32_t*)PLIC_MCOMPLETE(hart) = irq; }