aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--isa/rv64mi/ipi.S20
1 files changed, 3 insertions, 17 deletions
diff --git a/isa/rv64mi/ipi.S b/isa/rv64mi/ipi.S
index 457a9cd..a427b76 100644
--- a/isa/rv64mi/ipi.S
+++ b/isa/rv64mi/ipi.S
@@ -26,30 +26,16 @@ RVTEST_CODE_BEGIN
1:li a3, 1
bgeu a2, a3, 1b
- # wait for all cores to boot
- 1: lw a1, (a0)
- bltu a1, a3, 1b
-
- # IPI dominoes
- csrr a0, mhartid
- 1: bnez a0, 1b
- add a0, a0, 1
- rem a0, a0, a3
- csrw send_ipi, a0
+ # send a self-IPI
+ csrwi mipi, 0
1: j 1b
mtvec_handler:
- csrr a0, mhartid
- bnez a0, 2f
+ bnez a2, fail
RVTEST_PASS
TEST_PASSFAIL
- 2: add a0, a0, 1
- rem a0, a0, a3
- csrw send_ipi, a0
- 1: j 1b
-
RVTEST_CODE_END
.data