删除文件 Port/port_x32/RISC-V32/port_rv32_FSL.S

This commit is contained in:
零中断延迟的RTOS
2026-08-14 12:03:53 +00:00
committed by Gitee
parent 7ee44c7713
commit 4e9c468ff5
-69
View File
@@ -1,69 +0,0 @@
/**************************************************************************//**
* @item CosyOS-III Port
* @file port_rv32_FSL.S
* @brief RISC-V32 Core Port File for Interrupt FIFO Service Loading
* @author 迟凯峰
* @version v3.0.1
* @date 2026.07.30
******************************************************************************/
#include "syscfg.h"
#include "mcucfg_rv32.h"
////////////////////////////////////////////////////////////////////////////////
/* 中断FIFO服务装载器 */
#if (SYSCFG_PENDSVFIFO_DEPTH > 0)
.global mPendSV_FIFOLoader
.align 2
mPendSV_FIFOLoader:
/* FIFO选择 */
la a2, m_fifo_lock
lb a3, (a2)
beqz a3, 1f
la a1, mPendSV_FIFO_0
j 2f
1: la a1, mPendSV_FIFO_1
/* 计数溢出 */
2:
#if (0) //
lw a2, (a1)
li a3, 0x80000000
bltu a3, a2, 4f
#endif
/* FIFO计数 */
/* 0、关闭总中断(嵌套方式)*/
#if (MCUCFG_PENDSVFIFO_MUTEX == 0)
csrr a3, mstatus
csrc mstatus, 0x8
fence.i
lw a2, (a1)
addi a2, a2, 1
sw a2, (a1)
csrw mstatus, a3
/* 1、[lr][sc]指令 */
#elif (MCUCFG_PENDSVFIFO_MUTEX == 1)
3: lr.w a2, (a1)
addi a2, a2, 1
sc.w a3, a2, (a1)
bnez a3, 3b
/* 2、[amoadd]指令 */
#elif (MCUCFG_PENDSVFIFO_MUTEX == 2)
li a3, 1
amoadd.w a2, a3, (a1)
addi a2, a2, 1
#endif
/* FIFO溢出 */
li a3, SYSCFG_PENDSVFIFO_DEPTH
bltu a3, a2, 4f
/* FIFO装载 */
slli a2, a2, 2
add a1, a1, a2
sw a0, (a1)
4: ret
#endif