9#ifndef ZEPHYR_INCLUDE_SHARED_IRQ_H_
10#define ZEPHYR_INCLUDE_SHARED_IRQ_H_
18typedef int (*
isr_t)(
const struct device *dev,
unsigned int irq_number);
23 const struct device *isr_dev);
25 const struct device *isr_dev);
27 const struct device *isr_dev);
43 const struct device *isr_dev)
45 return DEVICE_API_GET(shared_irq, dev)->isr_register(dev, isr_func, isr_dev);
54 const struct device *isr_dev)
65 const struct device *isr_dev)
#define DEVICE_API_GET(_class, _dev)
Expands to the pointer of a device's API for a given class.
Definition device.h:1375
int(* shared_irq_enable_t)(const struct device *dev, const struct device *isr_dev)
Definition shared_irq.h:24
int(* shared_irq_disable_t)(const struct device *dev, const struct device *isr_dev)
Definition shared_irq.h:26
static int shared_irq_isr_register(const struct device *dev, isr_t isr_func, const struct device *isr_dev)
Register a device ISR.
Definition shared_irq.h:41
static int shared_irq_disable(const struct device *dev, const struct device *isr_dev)
Disable ISR for device.
Definition shared_irq.h:64
int(* shared_irq_register_t)(const struct device *dev, isr_t isr_func, const struct device *isr_dev)
Definition shared_irq.h:21
static int shared_irq_enable(const struct device *dev, const struct device *isr_dev)
Enable ISR for device.
Definition shared_irq.h:53
int(* isr_t)(const struct device *dev, unsigned int irq_number)
Definition shared_irq.h:18
Runtime device structure (in ROM) per driver instance.
Definition device.h:513
Definition shared_irq.h:29
shared_irq_disable_t disable
Definition shared_irq.h:32
shared_irq_enable_t enable
Definition shared_irq.h:31
shared_irq_register_t isr_register
Definition shared_irq.h:30