From ddf757078b2f1a63acd7d3f5d93d25d847c0d911 Mon Sep 17 00:00:00 2001 From: slmnemo Date: Mon, 27 Jun 2022 18:56:35 -0700 Subject: [PATCH] Added reset read testcodes to GPIO --- .../references/WALLY-gpio-01.reference_output | 13 +++++++++++++ .../rv32i_m/privilege/src/WALLY-gpio-01.S | 18 +++++++++++++++--- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/tests/wally-riscv-arch-test/riscv-test-suite/rv32i_m/privilege/references/WALLY-gpio-01.reference_output b/tests/wally-riscv-arch-test/riscv-test-suite/rv32i_m/privilege/references/WALLY-gpio-01.reference_output index 3cbf56ae..3f6dcc8e 100644 --- a/tests/wally-riscv-arch-test/riscv-test-suite/rv32i_m/privilege/references/WALLY-gpio-01.reference_output +++ b/tests/wally-riscv-arch-test/riscv-test-suite/rv32i_m/privilege/references/WALLY-gpio-01.reference_output @@ -1,5 +1,18 @@ 00000000 # test reset to zero 00000000 +00000000 # output_en +00000000 # output_val +00000000 # rise_ie +00000000 # rise_ip +00000000 # fall_ie +00000000 # fall_ip +00000000 # high_ie +00000000 # high_ip +00000000 # fall_ie +ffffffff # fall_ip +00000000 # iof_en +00000000 # iof_sel +00000000 # out_xor A5A5A5A5 # test output pins 5A5AFFFF 00000000 # test input enables diff --git a/tests/wally-riscv-arch-test/riscv-test-suite/rv32i_m/privilege/src/WALLY-gpio-01.S b/tests/wally-riscv-arch-test/riscv-test-suite/rv32i_m/privilege/src/WALLY-gpio-01.S index be40c0e2..4b2496a7 100644 --- a/tests/wally-riscv-arch-test/riscv-test-suite/rv32i_m/privilege/src/WALLY-gpio-01.S +++ b/tests/wally-riscv-arch-test/riscv-test-suite/rv32i_m/privilege/src/WALLY-gpio-01.S @@ -70,9 +70,21 @@ test_cases: # =========== Verify all registers reset to zero =========== -.4byte input_val, 0x00000000, read32_test # input_val reset to zero -.4byte input_en, 0x00000000, read32_test # input_en reset to zero -# *** add more +.4byte input_val, 0x00000000, read32_test # input_val reset to zero +.4byte input_en, 0x00000000, read32_test # input_en reset to zero +.4byte output_en, 0x00000000, read32_test # output_en reset to zero +.4byte output_val, 0x00000000, read32_test # output_val reset to zero +.4byte rise_ie, 0x00000000, read32_test # rise_ie reset to zero +.4byte rise_ip, 0x00000000, read32_test # rise_ip reset to zero +.4byte fall_ie, 0x00000000, read32_test # fall_ie reset to zero +.4byte fall_ip, 0xffffffff, read32_test # fall_ip reset to ones (input_val is zero) +.4byte high_ie, 0x00000000, read32_test # high_ie reset to zero +.4byte high_ip, 0x00000000, read32_test # high_ip reset to zero +.4byte low_ie, 0x00000000, read32_test # low_ie reset to zero +.4byte low_ip, 0x00000000, read32_test # low_ip reset to zero +.4byte iof_en, 0x00000000, read32_test # iof_en reset to zero +.4byte iof_sel, 0x00000000, read32_test # iof_sel reset to zero +.4byte out_xor, 0x00000000, read32_test # out_xor reset to zero # =========== Test output and input pins ===========