aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/irq.h
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2010-10-01 09:17:14 -0400
committerThomas Gleixner <tglx@linutronix.de>2010-10-04 07:40:24 -0400
commitbd151412263a67b5321e9dd1d5b4bf6d96fdebf3 (patch)
tree7571b3eaf7ebc2ef200fb00688543f00a451c5f9 /include/linux/irq.h
parent21e2b8c62cca8f7dbec0c8c131ca1637e4a5670f (diff)
genirq: Provide config option to disable deprecated code
This option covers now the old chip functions and the irq_desc data fields which are moving to struct irq_data. More stuff will follow. Pretty handy for testing a conversion, whether something broke or not. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/irq.h')
-rw-r--r--include/linux/irq.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h
index 0c83cbd2df4e..82ed8231394a 100644
--- a/include/linux/irq.h
+++ b/include/linux/irq.h
@@ -155,6 +155,7 @@ struct irq_data {
155 */ 155 */
156struct irq_chip { 156struct irq_chip {
157 const char *name; 157 const char *name;
158#ifndef CONFIG_GENERIC_HARDIRQS_NO_DEPRECATED
158 unsigned int (*startup)(unsigned int irq); 159 unsigned int (*startup)(unsigned int irq);
159 void (*shutdown)(unsigned int irq); 160 void (*shutdown)(unsigned int irq);
160 void (*enable)(unsigned int irq); 161 void (*enable)(unsigned int irq);
@@ -175,7 +176,7 @@ struct irq_chip {
175 176
176 void (*bus_lock)(unsigned int irq); 177 void (*bus_lock)(unsigned int irq);
177 void (*bus_sync_unlock)(unsigned int irq); 178 void (*bus_sync_unlock)(unsigned int irq);
178 179#endif
179 unsigned int (*irq_startup)(struct irq_data *data); 180 unsigned int (*irq_startup)(struct irq_data *data);
180 void (*irq_shutdown)(struct irq_data *data); 181 void (*irq_shutdown)(struct irq_data *data);
181 void (*irq_enable)(struct irq_data *data); 182 void (*irq_enable)(struct irq_data *data);
@@ -225,6 +226,9 @@ struct irq_2_iommu;
225 */ 226 */
226struct irq_desc { 227struct irq_desc {
227 228
229#ifdef CONFIG_GENERIC_HARDIRQS_NO_DEPRECATED
230 struct irq_data irq_data;
231#else
228 /* 232 /*
229 * This union will go away, once we fixed the direct access to 233 * This union will go away, once we fixed the direct access to
230 * irq_desc all over the place. The direct fields are a 1:1 234 * irq_desc all over the place. The direct fields are a 1:1
@@ -247,6 +251,8 @@ struct irq_desc {
247#endif 251#endif
248 }; 252 };
249 }; 253 };
254#endif
255
250 struct timer_rand_state *timer_rand_state; 256 struct timer_rand_state *timer_rand_state;
251 unsigned int *kstat_irqs; 257 unsigned int *kstat_irqs;
252 irq_flow_handler_t handle_irq; 258 irq_flow_handler_t handle_irq;