summaryrefslogtreecommitdiffstats
path: root/arch/m68k/kernel
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2011-04-17 22:53:04 +0200
committerGeert Uytterhoeven <geert@linux-m68k.org>2011-11-08 22:35:47 +0100
commite8abf5e73cdb6c034d35ccba1f63a4801cd3dec5 (patch)
tree170de6cb1d0048757b2ab55b2a0bfeb87d274fd4 /arch/m68k/kernel
parent6549d537922da6a6893e9bc1be9c2b89db663719 (diff)
downloadblackbird-op-linux-e8abf5e73cdb6c034d35ccba1f63a4801cd3dec5.tar.gz
blackbird-op-linux-e8abf5e73cdb6c034d35ccba1f63a4801cd3dec5.zip
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')
-rw-r--r--arch/m68k/kernel/ints.c23
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)
if (!irq_list[irq]) {
if (contr->irq_startup)
- contr->irq_startup(irq);
+ contr->irq_startup(node);
else
- contr->irq_enable(irq);
+ contr->irq_enable(node);
}
node->next = NULL;
*prev = node;
@@ -270,9 +270,9 @@ void free_irq(unsigned int irq, void *dev_id)
if (!irq_list[irq]) {
if (contr->irq_shutdown)
- contr->irq_shutdown(irq);
+ contr->irq_shutdown(node);
else
- contr->irq_disable(irq);
+ contr->irq_disable(node);
}
local_irq_restore(flags);
@@ -295,7 +295,7 @@ void enable_irq(unsigned int irq)
if (irq_depth[irq]) {
if (!--irq_depth[irq]) {
if (contr->irq_enable)
- contr->irq_enable(irq);
+ contr->irq_enable(irq_list[irq]);
}
} else
WARN_ON(1);
@@ -318,7 +318,7 @@ void disable_irq(unsigned int irq)
local_irq_save(flags);
if (!irq_depth[irq]++) {
if (contr->irq_disable)
- contr->irq_disable(irq);
+ contr->irq_disable(irq_list[irq]);
}
local_irq_restore(flags);
}
@@ -329,7 +329,7 @@ void disable_irq_nosync(unsigned int irq) __attribute__((alias("disable_irq")));
EXPORT_SYMBOL(disable_irq_nosync);
-unsigned int m68k_irq_startup(unsigned int irq)
+unsigned int m68k_irq_startup_irq(unsigned int irq)
{
if (irq <= IRQ_AUTO_7)
vectors[VEC_SPUR + irq] = auto_inthandler;
@@ -338,8 +338,15 @@ unsigned int m68k_irq_startup(unsigned int irq)
return 0;
}
-void m68k_irq_shutdown(unsigned int irq)
+unsigned int m68k_irq_startup(struct irq_data *data)
{
+ return m68k_irq_startup_irq(data->irq);
+}
+
+void m68k_irq_shutdown(struct irq_data *data)
+{
+ unsigned int irq = data->irq;
+
if (irq <= IRQ_AUTO_7)
vectors[VEC_SPUR + irq] = bad_inthandler;
else
OpenPOWER on IntegriCloud