|
WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
|


结构体 | |
| struct | tagHwiHandleForm |
| struct | HwiStatus |
| struct | HwiControllerOps |
| struct | tagBhwork |
宏定义 | |
| #define | HWI_LOCK(state) LOS_SpinLockSave(NULL, &(state)) |
| #define | HWI_UNLOCK(state) LOS_SpinUnlockRestore(NULL, (state)) |
| #define | OS_HWI_INVALID_IRQ 0xFFFFFFFF |
| #define | OS_HWI_UNSUPPORTED_STATUS 0xFFFFFFFF |
| #define | HWI_IS_REGISTED(num) OsIntIsRegisted(num) |
类型定义 | |
| typedef struct tagHwiHandleForm | HwiHandleInfo |
| typedef struct tagBhwork | HwiBhworkItem |
函数 | |
| UINT32 | OsHwiInit (VOID) |
| size_t | OsIrqNestingCntGet (VOID) |
| VOID | OsIrqNestingCntSet (size_t val) |
| VOID | OsIntEntry (VOID) |
| STATIC INLINE HwiHandleInfo * | OsGetHwiForm (UINT32 hwiNum) |
| STATIC INLINE UINT32 | OsIntNumGet (VOID) |
| STATIC INLINE BOOL | OsIntIsRegisted (UINT32 num) |
| STATIC INLINE HWI_ARG_T | OsIntGetPara (UINT32 num) |
| STATIC INLINE CHAR * | OsIntVersionGet (VOID) |
| VOID | OsIntHandle (UINT32 hwiNum, HwiHandleInfo *handleForm) |
| STATIC INLINE VOID | OsHwiControllerReg (const HwiControllerOps *ops) |
变量 | |
| const HwiControllerOps * | g_hwiOps |
| #define HWI_IS_REGISTED | ( | num | ) | OsIntIsRegisted(num) |
| #define HWI_LOCK | ( | state | ) | LOS_SpinLockSave(NULL, &(state)) |
| #define HWI_UNLOCK | ( | state | ) | LOS_SpinUnlockRestore(NULL, (state)) |
| #define OS_HWI_INVALID_IRQ 0xFFFFFFFF |
| #define OS_HWI_UNSUPPORTED_STATUS 0xFFFFFFFF |
This represents that the status of interrupt is not supported.
| typedef struct tagBhwork HwiBhworkItem |
| typedef struct tagHwiHandleForm HwiHandleInfo |
| STATIC INLINE HwiHandleInfo * OsGetHwiForm | ( | UINT32 | hwiNum | ) |
| STATIC INLINE VOID OsHwiControllerReg | ( | const HwiControllerOps * | ops | ) |
When interrupting the controller driver initialization, controller-related operations need to be implemented and registered;Because the function pointer is not judged in the abstraction layer, all function members defined in HwiControllerOps need to be registered. If this function is not supported, you can call the LOS_Panic interface in the implementation of the stub function to report an error in time.
OS Interrupt entry, called by assembly code in dispatch.S. The unified entrance of external interrupt is taken over by the kernel. The handleIrq hook function MUST be registered in the interrupt controller driver layer, otherwise it will not respond. eg: Used for arm(cortex-a/r)/arm64.
|
extern |
If the interrupt is in the scenario where the kernel does not take over, the interrupt controller driver layer realizes the general entry ISR and passes the hwiNum and handleForm to this interface. eg: Used for arm(cortex-m),xtensa,riscv.
|
extern |