Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / drivers / char / watchdog / ixp4xx_wdt.c
index 82396e0..3800835 100644 (file)
 #include <asm/hardware.h>
 #include <asm/uaccess.h>
 
-#ifdef CONFIG_WATCHDOG_NOWAYOUT
-static int nowayout = 1;
-#else
-static int nowayout = 0;
-#endif
+static int nowayout = WATCHDOG_NOWAYOUT;
 static int heartbeat = 60;     /* (secs) Default is 1 minute */
 static unsigned long wdt_status;
 static unsigned long boot_status;
@@ -156,7 +152,7 @@ ixp4xx_wdt_release(struct inode *inode, struct file *file)
        if (test_bit(WDT_OK_TO_CLOSE, &wdt_status)) {
                wdt_disable();
        } else {
-               printk(KERN_CRIT "WATCHDOG: Device closed unexpectdly - "
+               printk(KERN_CRIT "WATCHDOG: Device closed unexpectedly - "
                                        "timer will not stop\n");
        }
 
@@ -180,7 +176,7 @@ static struct file_operations ixp4xx_wdt_fops =
 static struct miscdevice ixp4xx_wdt_miscdev =
 {
        .minor          = WATCHDOG_MINOR,
-       .name           = "IXP4xx Watchdog",
+       .name           = "watchdog",
        .fops           = &ixp4xx_wdt_fops,
 };
 
@@ -190,8 +186,8 @@ static int __init ixp4xx_wdt_init(void)
        unsigned long processor_id;
 
        asm("mrc p15, 0, %0, cr0, cr0, 0;" : "=r"(processor_id) :);
-       if (!(processor_id & 0xf)) {
-               printk("IXP4XXX Watchdog: Rev. A0 CPU detected - "
+       if (!(processor_id & 0xf) && !cpu_is_ixp46x()) {
+               printk("IXP4XXX Watchdog: Rev. A0 IXP42x CPU detected - "
                        "watchdog disabled\n");
 
                return -ENODEV;