39#ifdef LOSCFG_KERNEL_SMP
41#define HWI_LOCK(state) LOS_SpinLockSave(&g_hwiSpin, &(state))
42#define HWI_UNLOCK(state) LOS_SpinUnlockRestore(&g_hwiSpin, (state))
44#define HWI_LOCK(state) LOS_SpinLockSave(NULL, &(state))
45#define HWI_UNLOCK(state) LOS_SpinUnlockRestore(NULL, (state))
48#define OS_HWI_INVALID_IRQ 0xFFFFFFFF
53#define OS_HWI_UNSUPPORTED_STATUS 0xFFFFFFFF
62#ifdef LOSCFG_SHARED_IRQ
89#ifdef LOSCFG_KERNEL_SMP
93#ifdef LOSCFG_DEBUG_HWI
109#ifdef LOSCFG_HWI_BOTTOM_HALF
112#ifdef LOSCFG_DEBUG_HWI
114extern VOID OsHwiStatusAllPrint(
VOID);
145 if (hwiForm ==
NULL) {
148#ifdef LOSCFG_SHARED_IRQ
149 return (hwiForm->next !=
NULL);
159 if (hwiForm ==
NULL) {
192#define HWI_IS_REGISTED(num) OsIntIsRegisted(num)
#define NULL
Definition common_def.h:21
#define STATIC
Definition common_def.h:57
#define INLINE
Definition common_def.h:65
UINT16 HWI_PRIOR_T
Definition los_hwi.h:323
void(* HWI_PROC_FUNC)(void)
Define the type of a hardware interrupt handling function.
Definition los_hwi.h:356
void(* HWI_BOTTOM_HALF_FUNC)(void *)
Define the type of an interrupt bottom half function.
Definition los_hwi.h:376
UINTPTR HWI_ARG_T
Definition los_hwi.h:336
UINT32 HWI_HANDLE_T
Definition los_hwi.h:317
#define LOS_ERRNO_HWI_PROC_FUNC_NULL
Definition los_hwi.h:119
size_t OsIrqNestingCntGet(VOID)
struct tagBhwork HwiBhworkItem
const HwiControllerOps * g_hwiOps
STATIC INLINE VOID OsHwiControllerReg(const HwiControllerOps *ops)
Definition los_hwi_pri.h:187
STATIC INLINE HwiHandleInfo * OsGetHwiForm(UINT32 hwiNum)
Definition los_hwi_pri.h:125
STATIC INLINE HWI_ARG_T OsIntGetPara(UINT32 num)
Definition los_hwi_pri.h:155
VOID OsIrqNestingCntSet(size_t val)
STATIC INLINE BOOL OsIntIsRegisted(UINT32 num)
Definition los_hwi_pri.h:141
STATIC INLINE CHAR * OsIntVersionGet(VOID)
Definition los_hwi_pri.h:165
VOID OsIntHandle(UINT32 hwiNum, HwiHandleInfo *handleForm)
STATIC INLINE UINT32 OsIntNumGet(VOID)
Definition los_hwi_pri.h:133
struct tagHwiHandleForm HwiHandleInfo
#define VOID
Definition los_typedef.h:88
unsigned int UINT32
Definition los_typedef.h:52
char CHAR
Definition los_typedef.h:58
size_t BOOL
Definition los_typedef.h:83
Definition los_hwi_pri.h:79
CHAR *(* getIrqVersion)(VOID)
Definition los_hwi_pri.h:86
HwiHandleInfo *(* getHandleForm)(HWI_HANDLE_T hwiNum)
Definition los_hwi_pri.h:87
UINT32(* getCurIrqNum)(VOID)
Definition los_hwi_pri.h:85
Definition los_hwi_pri.h:71
UINT32 isCreated
Definition los_hwi_pri.h:72
UINT32 pending
Definition los_hwi_pri.h:75
UINT32 pri
Definition los_hwi_pri.h:73
UINT32 affinity
Definition los_hwi_pri.h:76
UINT32 enable
Definition los_hwi_pri.h:74
Definition los_spinlock.h:78
Definition los_hwi_pri.h:98
struct LOS_DL_LIST entry
Definition los_hwi_pri.h:99
VOID * data
Definition los_hwi_pri.h:100
HWI_BOTTOM_HALF_FUNC workFunc
Definition los_hwi_pri.h:101