1STRUCT IRQ_DATA(9) Structures STRUCT IRQ_DATA(9)
2
3
4
6 struct_irq_data - per irq and irq chip data passed down to chip
7 functions
8
10 struct irq_data {
11 unsigned int irq;
12 unsigned long hwirq;
13 unsigned int node;
14 unsigned int state_use_accessors;
15 struct irq_chip * chip;
16 struct irq_domain * domain;
17 void * handler_data;
18 void * chip_data;
19 struct msi_desc * msi_desc;
20 cpumask_var_t affinity;
21 };
22
24 irq
25 interrupt number
26
27 hwirq
28 hardware interrupt number, local to the interrupt domain
29
30 node
31 node index useful for balancing
32
33 state_use_accessors
34 status information for irq chip functions. Use accessor functions
35 to deal with it
36
37 chip
38 low level interrupt hardware access
39
40 domain
41 Interrupt translation domain; responsible for mapping between hwirq
42 number and linux irq number.
43
44 handler_data
45 per-IRQ data for the irq_chip methods
46
47 chip_data
48 platform-specific per-chip private data for the chip methods, to
49 allow shared chip implementations
50
51 msi_desc
52 MSI descriptor
53
54 affinity
55 IRQ affinity on SMP
56
58 The fields here need to overlay the ones in irq_desc until we cleaned
59 up the direct references and switched everything over to irq_data.
60
62 Thomas Gleixner <tglx@linutronix.de>
63 Author.
64
65 Ingo Molnar <mingo@elte.hu>
66 Author.
67
69Kernel Hackers Manual 3.10 June 2019 STRUCT IRQ_DATA(9)