11#ifndef ZEPHYR_INCLUDE_IRQ_H_
12#define ZEPHYR_INCLUDE_IRQ_H_
48#define IRQ_CONNECT(irq_p, priority_p, isr_p, isr_param_p, flags_p) \
49 ARCH_IRQ_CONNECT(irq_p, priority_p, isr_p, isr_param_p, flags_p)
66 void (*routine)(
const void *parameter),
91 void (*routine)(
const void *parameter),
136#define IRQ_DIRECT_CONNECT(irq_p, priority_p, isr_p, flags_p) \
137 ARCH_IRQ_DIRECT_CONNECT(irq_p, priority_p, isr_p, flags_p)
146#define ISR_DIRECT_HEADER() ARCH_ISR_DIRECT_HEADER()
163#define ISR_DIRECT_FOOTER(check_reschedule) \
164 ARCH_ISR_DIRECT_FOOTER(check_reschedule)
174#define ISR_DIRECT_PM() ARCH_ISR_DIRECT_PM()
205#define ISR_DIRECT_DECLARE(name) ARCH_ISR_DIRECT_DECLARE(name)
249unsigned int z_smp_global_lock(
void);
250#define irq_lock() z_smp_global_lock()
252#define irq_lock() arch_irq_lock()
277void z_smp_global_unlock(
unsigned int key);
278#define irq_unlock(key) z_smp_global_unlock(key)
280#define irq_unlock(key) arch_irq_unlock(key)
290#define irq_enable(irq) arch_irq_enable(irq)
299#define irq_disable(irq) arch_irq_disable(irq)
310#define irq_is_enabled(irq) arch_irq_is_enabled(irq)
int arch_irq_disconnect_dynamic(unsigned int irq, unsigned int priority, void(*routine)(const void *parameter), const void *parameter, uint32_t flags)
Arch-specific hook to dynamically uninstall a shared interrupt.
int arch_irq_connect_dynamic(unsigned int irq, unsigned int priority, void(*routine)(const void *parameter), const void *parameter, uint32_t flags)
Arch-specific hook to install a dynamic interrupt.
static int irq_connect_dynamic(unsigned int irq, unsigned int priority, void(*routine)(const void *parameter), const void *parameter, uint32_t flags)
Configure a dynamic interrupt.
Definition irq.h:65
static int irq_disconnect_dynamic(unsigned int irq, unsigned int priority, void(*routine)(const void *parameter), const void *parameter, uint32_t flags)
Disconnect a dynamic interrupt.
Definition irq.h:90
flags
Definition parser.h:96
__UINT32_TYPE__ uint32_t
Definition stdint.h:90