Linux Kernel
3.7.1
|
#include <irqdomain.h>
Data Fields | |
int(* | match )(struct irq_domain *d, struct device_node *node) |
int(* | map )(struct irq_domain *d, unsigned int virq, irq_hw_number_t hw) |
void(* | unmap )(struct irq_domain *d, unsigned int virq) |
int(* | xlate )(struct irq_domain *d, struct device_node *node, const u32 *intspec, unsigned int intsize, unsigned long *out_hwirq, unsigned int *out_type) |
struct irq_domain_ops - Methods for irq_domain objects : Match an interrupt controller device node to a host, returns 1 on a match : Create or update a mapping between a virtual irq number and a hw irq number. This is called only once for a given mapping. : Dispose of such a mapping : Given a device tree node and interrupt specifier, decode the hardware irq number and linux irq type value.
Functions below are provided by the driver and called whenever a new mapping is created or an old mapping is disposed. The driver can then proceed to whatever internal data structures management is required. It also needs to setup the irq_desc when returning from map().
Definition at line 60 of file irqdomain.h.
int(* map)(struct irq_domain *d, unsigned int virq, irq_hw_number_t hw) |
Definition at line 62 of file irqdomain.h.
int(* match)(struct irq_domain *d, struct device_node *node) |
Definition at line 61 of file irqdomain.h.
void(* unmap)(struct irq_domain *d, unsigned int virq) |
Definition at line 63 of file irqdomain.h.
int(* xlate)(struct irq_domain *d, struct device_node *node, const u32 *intspec, unsigned int intsize, unsigned long *out_hwirq, unsigned int *out_type) |
Definition at line 64 of file irqdomain.h.