1STRUCT IRQ_DESC(9)                Structures                STRUCT IRQ_DESC(9)
2
3
4

NAME

6       struct_irq_desc - interrupt descriptor
7

SYNOPSIS

9       struct irq_desc {
10         unsigned int irq;
11         struct timer_rand_state * timer_rand_state;
12         unsigned int * kstat_irqs;
13       #ifdef CONFIG_INTR_REMAP
14         struct irq_2_iommu * irq_2_iommu;
15       #endif
16         irq_flow_handler_t handle_irq;
17         struct irq_chip * chip;
18         struct msi_desc * msi_desc;
19         void * handler_data;
20         void * chip_data;
21         struct irqaction * action;
22         unsigned int status;
23         unsigned int depth;
24         unsigned int wake_depth;
25         unsigned int irq_count;
26         unsigned long last_unhandled;
27         unsigned int irqs_unhandled;
28         raw_spinlock_t lock;
29       #ifdef CONFIG_SMP
30         cpumask_var_t affinity;
31         unsigned int node;
32       #ifdef CONFIG_GENERIC_PENDING_IRQ
33         cpumask_var_t pending_mask;
34       #endif
35       #endif
36         atomic_t threads_active;
37         wait_queue_head_t wait_for_threads;
38       #ifdef CONFIG_PROC_FS
39         struct proc_dir_entry * dir;
40       #endif
41         const char * name;
42       };
43

MEMBERS

45       irq
46           interrupt number for this descriptor
47
48       timer_rand_state
49           pointer to timer rand state struct
50
51       kstat_irqs
52           irq stats per cpu
53
54       irq_2_iommu
55           iommu with this irq
56
57       handle_irq
58           highlevel irq-events handler [if NULL, __do_IRQ]
59
60       chip
61           low level interrupt hardware access
62
63       msi_desc
64           MSI descriptor
65
66       handler_data
67           per-IRQ data for the irq_chip methods
68
69       chip_data
70           platform-specific per-chip private data for the chip methods, to
71           allow shared chip implementations
72
73       action
74           the irq action chain
75
76       status
77           status information
78
79       depth
80           disable-depth, for nested irq_disable calls
81
82       wake_depth
83           enable depth, for multiple set_irq_wake callers
84
85       irq_count
86           stats field to detect stalled irqs
87
88       last_unhandled
89           aging timer for unhandled count
90
91       irqs_unhandled
92           stats field for spurious unhandled interrupts
93
94       lock
95           locking for SMP
96
97       affinity
98           IRQ affinity on SMP
99
100       node
101           node index useful for balancing
102
103       pending_mask
104           pending rebalanced interrupts
105
106       threads_active
107           number of irqaction threads currently running
108
109       wait_for_threads
110           wait queue for sync_irq to wait for threaded handlers
111
112       dir
113           /proc/irq/ procfs entry
114
115       name
116           flow handler name for /proc/interrupts output
117

AUTHORS

119       Thomas Gleixner <tglx@linutronix.de>
120           Author.
121
122       Ingo Molnar <mingo@elte.hu>
123           Author.
124
126Kernel Hackers Manual 2.6.       November 2011              STRUCT IRQ_DESC(9)
Impressum