diff options
author | Geert Uytterhoeven <geert@linux-m68k.org> | 2011-04-17 16:53:04 -0400 |
---|---|---|
committer | Geert Uytterhoeven <geert@linux-m68k.org> | 2011-11-08 16:35:47 -0500 |
commit | e8abf5e73cdb6c034d35ccba1f63a4801cd3dec5 (patch) | |
tree | 170de6cb1d0048757b2ab55b2a0bfeb87d274fd4 /arch/m68k/kernel/ints.c | |
parent | 6549d537922da6a6893e9bc1be9c2b89db663719 (diff) |
m68k/irq: Switch irq_chip methods to "struct irq_data *data"
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/m68k/kernel/ints.c')
-rw-r--r-- | arch/m68k/kernel/ints.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/arch/m68k/kernel/ints.c b/arch/m68k/kernel/ints.c index 88779320d406..404d832f5d35 100644 --- a/arch/m68k/kernel/ints.c +++ b/arch/m68k/kernel/ints.c | |||
@@ -203,9 +203,9 @@ int setup_irq(unsigned int irq, struct irq_data *node) | |||
203 | 203 | ||
204 | if (!irq_list[irq]) { | 204 | if (!irq_list[irq]) { |
205 | if (contr->irq_startup) | 205 | if (contr->irq_startup) |
206 | contr->irq_startup(irq); | 206 | contr->irq_startup(node); |
207 | else | 207 | else |
208 | contr->irq_enable(irq); | 208 | contr->irq_enable(node); |
209 | } | 209 | } |
210 | node->next = NULL; | 210 | node->next = NULL; |
211 | *prev = node; | 211 | *prev = node; |
@@ -270,9 +270,9 @@ void free_irq(unsigned int irq, void *dev_id) | |||
270 | 270 | ||
271 | if (!irq_list[irq]) { | 271 | if (!irq_list[irq]) { |
272 | if (contr->irq_shutdown) | 272 | if (contr->irq_shutdown) |
273 | contr->irq_shutdown(irq); | 273 | contr->irq_shutdown(node); |
274 | else | 274 | else |
275 | contr->irq_disable(irq); | 275 | contr->irq_disable(node); |
276 | } | 276 | } |
277 | 277 | ||
278 | local_irq_restore(flags); | 278 | local_irq_restore(flags); |
@@ -295,7 +295,7 @@ void enable_irq(unsigned int irq) | |||
295 | if (irq_depth[irq]) { | 295 | if (irq_depth[irq]) { |
296 | if (!--irq_depth[irq]) { | 296 | if (!--irq_depth[irq]) { |
297 | if (contr->irq_enable) | 297 | if (contr->irq_enable) |
298 | contr->irq_enable(irq); | 298 | contr->irq_enable(irq_list[irq]); |
299 | } | 299 | } |
300 | } else | 300 | } else |
301 | WARN_ON(1); | 301 | WARN_ON(1); |
@@ -318,7 +318,7 @@ void disable_irq(unsigned int irq) | |||
318 | local_irq_save(flags); | 318 | local_irq_save(flags); |
319 | if (!irq_depth[irq]++) { | 319 | if (!irq_depth[irq]++) { |
320 | if (contr->irq_disable) | 320 | if (contr->irq_disable) |
321 | contr->irq_disable(irq); | 321 | contr->irq_disable(irq_list[irq]); |
322 | } | 322 | } |
323 | local_irq_restore(flags); | 323 | local_irq_restore(flags); |
324 | } | 324 | } |
@@ -329,7 +329,7 @@ void disable_irq_nosync(unsigned int irq) __attribute__((alias("disable_irq"))); | |||
329 | 329 | ||
330 | EXPORT_SYMBOL(disable_irq_nosync); | 330 | EXPORT_SYMBOL(disable_irq_nosync); |
331 | 331 | ||
332 | unsigned int m68k_irq_startup(unsigned int irq) | 332 | unsigned int m68k_irq_startup_irq(unsigned int irq) |
333 | { | 333 | { |
334 | if (irq <= IRQ_AUTO_7) | 334 | if (irq <= IRQ_AUTO_7) |
335 | vectors[VEC_SPUR + irq] = auto_inthandler; | 335 | vectors[VEC_SPUR + irq] = auto_inthandler; |
@@ -338,8 +338,15 @@ unsigned int m68k_irq_startup(unsigned int irq) | |||
338 | return 0; | 338 | return 0; |
339 | } | 339 | } |
340 | 340 | ||
341 | void m68k_irq_shutdown(unsigned int irq) | 341 | unsigned int m68k_irq_startup(struct irq_data *data) |
342 | { | 342 | { |
343 | return m68k_irq_startup_irq(data->irq); | ||
344 | } | ||
345 | |||
346 | void m68k_irq_shutdown(struct irq_data *data) | ||
347 | { | ||
348 | unsigned int irq = data->irq; | ||
349 | |||
343 | if (irq <= IRQ_AUTO_7) | 350 | if (irq <= IRQ_AUTO_7) |
344 | vectors[VEC_SPUR + irq] = bad_inthandler; | 351 | vectors[VEC_SPUR + irq] = bad_inthandler; |
345 | else | 352 | else |