27typedef volatile struct __attribute__((packed,aligned(4))) {
39#define NEORV32_XIRQ ((neorv32_xirq_t*) (NEORV32_XIRQ_BASE))
47#define XIRQ_TRIGGER_LEVEL_LOW (0b00)
48#define XIRQ_TRIGGER_LEVEL_HIGH (0b01)
49#define XIRQ_TRIGGER_EDGE_FALLING (0b10)
50#define XIRQ_TRIGGER_EDGE_RISING (0b11)
void neorv32_xirq_setup_trigger(int channel, int config)
Definition neorv32_xirq.c:157
int neorv32_xirq_uninstall(int channel)
Definition neorv32_xirq.c:242
int neorv32_xirq_get_num(void)
Definition neorv32_xirq.c:126
void neorv32_xirq_global_enable(void)
Definition neorv32_xirq.c:102
void neorv32_xirq_clear_pending(int channel)
Definition neorv32_xirq.c:185
int neorv32_xirq_install(int channel, void(*handler)(void))
Definition neorv32_xirq.c:223
int neorv32_xirq_setup(void)
Definition neorv32_xirq.c:81
int neorv32_xirq_available(void)
Definition neorv32_xirq.c:62
void neorv32_xirq_channel_enable(int channel)
Definition neorv32_xirq.c:197
void neorv32_xirq_global_disable(void)
Definition neorv32_xirq.c:114
void neorv32_xirq_channel_disable(int channel)
Definition neorv32_xirq.c:209
Definition neorv32_xirq.h:27
uint32_t TPOL
Definition neorv32_xirq.h:32
uint32_t EIP
Definition neorv32_xirq.h:29
const uint32_t reserved0
Definition neorv32_xirq.h:33
uint32_t TTYP
Definition neorv32_xirq.h:31
const uint32_t reserved1
Definition neorv32_xirq.h:34
uint32_t ESC
Definition neorv32_xirq.h:30
uint32_t EIE
Definition neorv32_xirq.h:28
const uint32_t reserved2
Definition neorv32_xirq.h:35