Files
TAIXIN/sdk/include/osal/irq.h

40 lines
801 B
C
Raw Normal View History

#ifndef __OS_IRQ_H_
#define __OS_IRQ_H_
#ifdef __cplusplus
extern "C" {
#endif
typedef void (*irq_handle)(void *data);
struct sys_hwirq {
void *data;
irq_handle handle;
#ifdef SYS_IRQ_STAT
uint32 trig_cnt;
uint16 max, min;
uint32 tot_cycle;
#endif
};
#ifdef CONFIG_SLEEP
__dsleep_text void irq_enable(uint32 irq);
__dsleep_text void irq_disable(uint32 irq);
__dsleep_text uint32 disable_irq(void);
__dsleep_text void enable_irq(uint32 flag);
#else
void irq_enable(uint32 irq);
void irq_disable(uint32 irq);
uint32 disable_irq(void);
void enable_irq(uint32 flag);
#endif
void irq_priority(uint32 irq, uint32 prio);
int32 request_irq(uint32 irq_num, irq_handle handle, void *data);
int32 release_irq(uint32 irq_num);
uint32 sysirq_time(void);
#ifdef __cplusplus
}
#endif
#endif