diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2010-09-27 08:44:35 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2010-10-04 06:43:35 -0400 |
commit | 3876ec9ef3775d062345b3760d3271ecb8cd3fea (patch) | |
tree | 6c1cd233753fe09d48bdf107da34b4dbe4e003fc /kernel/irq/manage.c | |
parent | a77c4635915021c646cc017f22239e66d1aab4d5 (diff) |
genirq: Provide compat handling for bus_lock/bus_sync_unlock
Wrap the old chip functions for bus_lock/bus_sync_unlock until the
migration is complete and the old chip functions are removed.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
LKML-Reference: <20100927121841.842536121@linutronix.de>
Reviewed-by: H. Peter Anvin <hpa@zytor.com>
Reviewed-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/irq/manage.c')
-rw-r--r-- | kernel/irq/manage.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 4dfb19521d9f..dfb02ff7d2ef 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c | |||
@@ -246,11 +246,11 @@ void disable_irq_nosync(unsigned int irq) | |||
246 | if (!desc) | 246 | if (!desc) |
247 | return; | 247 | return; |
248 | 248 | ||
249 | chip_bus_lock(irq, desc); | 249 | chip_bus_lock(desc); |
250 | raw_spin_lock_irqsave(&desc->lock, flags); | 250 | raw_spin_lock_irqsave(&desc->lock, flags); |
251 | __disable_irq(desc, irq, false); | 251 | __disable_irq(desc, irq, false); |
252 | raw_spin_unlock_irqrestore(&desc->lock, flags); | 252 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
253 | chip_bus_sync_unlock(irq, desc); | 253 | chip_bus_sync_unlock(desc); |
254 | } | 254 | } |
255 | EXPORT_SYMBOL(disable_irq_nosync); | 255 | EXPORT_SYMBOL(disable_irq_nosync); |
256 | 256 | ||
@@ -323,11 +323,11 @@ void enable_irq(unsigned int irq) | |||
323 | if (!desc) | 323 | if (!desc) |
324 | return; | 324 | return; |
325 | 325 | ||
326 | chip_bus_lock(irq, desc); | 326 | chip_bus_lock(desc); |
327 | raw_spin_lock_irqsave(&desc->lock, flags); | 327 | raw_spin_lock_irqsave(&desc->lock, flags); |
328 | __enable_irq(desc, irq, false); | 328 | __enable_irq(desc, irq, false); |
329 | raw_spin_unlock_irqrestore(&desc->lock, flags); | 329 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
330 | chip_bus_sync_unlock(irq, desc); | 330 | chip_bus_sync_unlock(desc); |
331 | } | 331 | } |
332 | EXPORT_SYMBOL(enable_irq); | 332 | EXPORT_SYMBOL(enable_irq); |
333 | 333 | ||
@@ -507,7 +507,7 @@ static int irq_wait_for_interrupt(struct irqaction *action) | |||
507 | static void irq_finalize_oneshot(unsigned int irq, struct irq_desc *desc) | 507 | static void irq_finalize_oneshot(unsigned int irq, struct irq_desc *desc) |
508 | { | 508 | { |
509 | again: | 509 | again: |
510 | chip_bus_lock(irq, desc); | 510 | chip_bus_lock(desc); |
511 | raw_spin_lock_irq(&desc->lock); | 511 | raw_spin_lock_irq(&desc->lock); |
512 | 512 | ||
513 | /* | 513 | /* |
@@ -521,7 +521,7 @@ again: | |||
521 | */ | 521 | */ |
522 | if (unlikely(desc->status & IRQ_INPROGRESS)) { | 522 | if (unlikely(desc->status & IRQ_INPROGRESS)) { |
523 | raw_spin_unlock_irq(&desc->lock); | 523 | raw_spin_unlock_irq(&desc->lock); |
524 | chip_bus_sync_unlock(irq, desc); | 524 | chip_bus_sync_unlock(desc); |
525 | cpu_relax(); | 525 | cpu_relax(); |
526 | goto again; | 526 | goto again; |
527 | } | 527 | } |
@@ -531,7 +531,7 @@ again: | |||
531 | desc->irq_data.chip->unmask(irq); | 531 | desc->irq_data.chip->unmask(irq); |
532 | } | 532 | } |
533 | raw_spin_unlock_irq(&desc->lock); | 533 | raw_spin_unlock_irq(&desc->lock); |
534 | chip_bus_sync_unlock(irq, desc); | 534 | chip_bus_sync_unlock(desc); |
535 | } | 535 | } |
536 | 536 | ||
537 | #ifdef CONFIG_SMP | 537 | #ifdef CONFIG_SMP |
@@ -997,9 +997,9 @@ void free_irq(unsigned int irq, void *dev_id) | |||
997 | if (!desc) | 997 | if (!desc) |
998 | return; | 998 | return; |
999 | 999 | ||
1000 | chip_bus_lock(irq, desc); | 1000 | chip_bus_lock(desc); |
1001 | kfree(__free_irq(irq, dev_id)); | 1001 | kfree(__free_irq(irq, dev_id)); |
1002 | chip_bus_sync_unlock(irq, desc); | 1002 | chip_bus_sync_unlock(desc); |
1003 | } | 1003 | } |
1004 | EXPORT_SYMBOL(free_irq); | 1004 | EXPORT_SYMBOL(free_irq); |
1005 | 1005 | ||
@@ -1086,9 +1086,9 @@ int request_threaded_irq(unsigned int irq, irq_handler_t handler, | |||
1086 | action->name = devname; | 1086 | action->name = devname; |
1087 | action->dev_id = dev_id; | 1087 | action->dev_id = dev_id; |
1088 | 1088 | ||
1089 | chip_bus_lock(irq, desc); | 1089 | chip_bus_lock(desc); |
1090 | retval = __setup_irq(irq, desc, action); | 1090 | retval = __setup_irq(irq, desc, action); |
1091 | chip_bus_sync_unlock(irq, desc); | 1091 | chip_bus_sync_unlock(desc); |
1092 | 1092 | ||
1093 | if (retval) | 1093 | if (retval) |
1094 | kfree(action); | 1094 | kfree(action); |