SPIN_LOCK_UNLOCKED cleanup in arch/m68k
[linux-2.6.git] / arch / m68k / amiga / cia.c
index 0956e45..c4a4ffd 100644 (file)
@@ -82,7 +82,7 @@ unsigned char cia_able_irq(struct ciabase *base, unsigned char mask)
        return old;
 }
 
-static irqreturn_t cia_handler(int irq, void *dev_id, struct pt_regs *fp)
+static irqreturn_t cia_handler(int irq, void *dev_id)
 {
        struct ciabase *base = (struct ciabase *)dev_id;
        int mach_irq;
@@ -93,7 +93,7 @@ static irqreturn_t cia_handler(int irq, void *dev_id, struct pt_regs *fp)
        amiga_custom.intreq = base->int_mask;
        for (; ints; mach_irq++, ints >>= 1) {
                if (ints & 1)
-                       m68k_handle_int(mach_irq, fp);
+                       m68k_handle_int(mach_irq);
        }
        return IRQ_HANDLED;
 }
@@ -123,7 +123,7 @@ static void cia_disable_irq(unsigned int irq)
 
 static struct irq_controller cia_irq_controller = {
        .name           = "cia",
-       .lock           = SPIN_LOCK_UNLOCKED,
+       .lock           = __SPIN_LOCK_UNLOCKED(cia_irq_controller.lock),
        .enable         = cia_enable_irq,
        .disable        = cia_disable_irq,
 };
@@ -160,7 +160,7 @@ static void auto_disable_irq(unsigned int irq)
 
 static struct irq_controller auto_irq_controller = {
        .name           = "auto",
-       .lock           = SPIN_LOCK_UNLOCKED,
+       .lock           = __SPIN_LOCK_UNLOCKED(auto_irq_controller.lock),
        .enable         = auto_enable_irq,
        .disable        = auto_disable_irq,
 };
@@ -176,5 +176,5 @@ void __init cia_init_IRQ(struct ciabase *base)
        /* override auto int and install CIA handler */
        m68k_setup_irq_controller(&auto_irq_controller, base->handler_irq, 1);
        m68k_irq_startup(base->handler_irq);
-       request_irq(base->handler_irq, cia_handler, SA_SHIRQ, base->name, base);
+       request_irq(base->handler_irq, cia_handler, IRQF_SHARED, base->name, base);
 }