summaryrefslogtreecommitdiff
path: root/bsp
diff options
context:
space:
mode:
authorYaochenger <[email protected]>2023-03-02 10:34:35 +0800
committerGitHub <[email protected]>2023-03-01 21:34:35 -0500
commit892ef3dc5bcb6e504629513b57ec4e1023a0d9d1 (patch)
treed29a597122e019a408b9069929afd3620cd258f1 /bsp
parent00ad3921e419e36070d2d3e41e491cdb80156d28 (diff)
[libcpu/risc-v]将cv32e40p文件夹中文件移至BSP (#7002)
Diffstat (limited to 'bsp')
-rw-r--r--bsp/core-v-mcu/Libraries/core_v_hal_libraries/SConscript1
-rw-r--r--bsp/core-v-mcu/Libraries/core_v_hal_libraries/bmsis/core-v-mcu/source/trap_gcc.S16
2 files changed, 17 insertions, 0 deletions
diff --git a/bsp/core-v-mcu/Libraries/core_v_hal_libraries/SConscript b/bsp/core-v-mcu/Libraries/core_v_hal_libraries/SConscript
index ee0ab6bb49..98d5fe70f6 100644
--- a/bsp/core-v-mcu/Libraries/core_v_hal_libraries/SConscript
+++ b/bsp/core-v-mcu/Libraries/core_v_hal_libraries/SConscript
@@ -20,6 +20,7 @@ core_v_hal/source/hal_timer_irq.c
bmsis/core-v-mcu/source/core-v-mcu.c
bmsis/core-v-mcu/source/crt0.S
bmsis/core-v-mcu/source/vectors.S
+bmsis/core-v-mcu/source/trap_gcc.S
core_v_udma_driver/source/udma_uart_driver.c
core_v_udma_driver/source/udma_cam_driver.c
core_v_udma_driver/source/udma_i2cm_driver.c
diff --git a/bsp/core-v-mcu/Libraries/core_v_hal_libraries/bmsis/core-v-mcu/source/trap_gcc.S b/bsp/core-v-mcu/Libraries/core_v_hal_libraries/bmsis/core-v-mcu/source/trap_gcc.S
new file mode 100644
index 0000000000..be10e64d3b
--- /dev/null
+++ b/bsp/core-v-mcu/Libraries/core_v_hal_libraries/bmsis/core-v-mcu/source/trap_gcc.S
@@ -0,0 +1,16 @@
+#include "cpuport.h"
+
+ .globl rt_hw_do_after_save_above
+ .type rt_hw_do_after_save_above,@function
+rt_hw_do_after_save_above:
+ addi sp, sp, -4
+ STORE ra, 0 * REGBYTES(sp)
+
+ csrr a0, mcause
+ csrr a1, mepc
+ mv a2, sp
+ call rt_rv32_system_irq_handler
+
+ LOAD ra, 0 * REGBYTES(sp)
+ addi sp, sp, 4
+ ret