From 548187dfc392d0beef4cc86e7d3d22d885276e5d Mon Sep 17 00:00:00 2001 From: Alejandro Soto Date: Mon, 2 Oct 2023 22:54:55 -0600 Subject: tb/sim: add test: smp_boot --- tb/sim/smp_boot.S | 25 +++++++++++++++++++++++++ tb/sim/smp_boot.py | 4 ++++ 2 files changed, 29 insertions(+) create mode 100644 tb/sim/smp_boot.S create mode 100644 tb/sim/smp_boot.py (limited to 'tb') diff --git a/tb/sim/smp_boot.S b/tb/sim/smp_boot.S new file mode 100644 index 0000000..669508b --- /dev/null +++ b/tb/sim/smp_boot.S @@ -0,0 +1,25 @@ +.global reset + +reset: + adr r0, cpus + +.inc_cpus: + ldrex r1, [r0] + add r1, r1, #1 + strex r2, r1, [r0] + teq r2, #0 + bne .inc_cpus + + cmp r1, #1 + movne pc, lr + + ldr r1, =0x30140000 + ldr r2, [r1] + ldr r3, =0x01010100 + str r3, [r1] + ldr r3, [r1] +.wait: + ldr r1, [r0] + b .wait + +cpus: .word 0 diff --git a/tb/sim/smp_boot.py b/tb/sim/smp_boot.py new file mode 100644 index 0000000..40c3012 --- /dev/null +++ b/tb/sim/smp_boot.py @@ -0,0 +1,4 @@ +def final(): + assert_reg(r1, 4) + assert_reg(r2, 0x01010100) + assert_reg(r3, 0) -- cgit v1.2.3