Merge ../linus
[pandora-kernel.git] / arch / arm / mach-ixp4xx / nslu2-power.c
index 18fbc8c..6d38e97 100644 (file)
 #include <linux/module.h>
 #include <linux/reboot.h>
 #include <linux/interrupt.h>
+#include <linux/reboot.h>
 
 #include <asm/mach-types.h>
 
-extern void ctrl_alt_del(void);
-
 static irqreturn_t nslu2_power_handler(int irq, void *dev_id, struct pt_regs *regs)
 {
        /* Signal init to do the ctrlaltdel action, this will bypass init if
@@ -54,9 +53,6 @@ static int __init nslu2_power_init(void)
        set_irq_type(NSLU2_RB_IRQ, IRQT_LOW);
        set_irq_type(NSLU2_PB_IRQ, IRQT_HIGH);
 
-       gpio_line_isr_clear(NSLU2_RB_GPIO);
-       gpio_line_isr_clear(NSLU2_PB_GPIO);
-
        if (request_irq(NSLU2_RB_IRQ, &nslu2_reset_handler,
                SA_INTERRUPT, "NSLU2 reset button", NULL) < 0) {
 
@@ -80,6 +76,9 @@ static int __init nslu2_power_init(void)
 
 static void __exit nslu2_power_exit(void)
 {
+       if (!(machine_is_nslu2()))
+               return;
+
        free_irq(NSLU2_RB_IRQ, NULL);
        free_irq(NSLU2_PB_IRQ, NULL);
 }