diff options
| author | Carlos Maiolino <[email protected]> | 2025-07-10 22:18:39 +0200 |
|---|---|---|
| committer | Carlos Maiolino <[email protected]> | 2025-07-10 22:18:39 +0200 |
| commit | 8c6fc0c15415b32080a848bbde640e104098cf13 (patch) | |
| tree | 04a21bd28f9dc82c8e216390d6208ed93b9bcd11 /riscv/riscv-probe/libfemto/drivers/sifive_test.c | |
Initial drop
Add some riscv code
Signed-off-by: Carlos Maiolino <[email protected]>
Diffstat (limited to 'riscv/riscv-probe/libfemto/drivers/sifive_test.c')
| -rw-r--r-- | riscv/riscv-probe/libfemto/drivers/sifive_test.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/riscv/riscv-probe/libfemto/drivers/sifive_test.c b/riscv/riscv-probe/libfemto/drivers/sifive_test.c new file mode 100644 index 0000000..1bda9e9 --- /dev/null +++ b/riscv/riscv-probe/libfemto/drivers/sifive_test.c @@ -0,0 +1,28 @@ +// See LICENSE for license details. + +#include "femto.h" + +enum { + SIFIVE_TEST_FAIL = 0x3333, + SIFIVE_TEST_PASS = 0x5555, +}; + +static volatile uint32_t *test; + +static void sifive_test_init() +{ + test = (uint32_t *)(void *)getauxval(SIFIVE_TEST_CTRL_ADDR); +} + +static void sifive_test_poweroff(int status) +{ + *test = SIFIVE_TEST_PASS; + while (1) { + asm volatile(""); + } +} + +poweroff_device_t poweroff_sifive_test = { + sifive_test_init, + sifive_test_poweroff +}; |
