summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-20 11:37:49 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-20 11:37:49 -0700
commit91b90475e793e84a57d956af8c52645e292badcb (patch)
tree8de670e02f99a2a2bde82384104dcb8cb09cdadf /drivers
parentbcc408b75b707f46da1f81058ffa3c9df6f0170f (diff)
parentf0ffeddc897a5cc5d5c6cc1b99a8799a8b34b28f (diff)
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Diffstat (limited to 'drivers')
-rw-r--r--drivers/char/watchdog/ixp2000_wdt.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/char/watchdog/ixp2000_wdt.c b/drivers/char/watchdog/ixp2000_wdt.c
index ab659d37b4d..4e98c215e5b 100644
--- a/drivers/char/watchdog/ixp2000_wdt.c
+++ b/drivers/char/watchdog/ixp2000_wdt.c
@@ -192,7 +192,12 @@ static struct miscdevice ixp2000_wdt_miscdev =
static int __init ixp2000_wdt_init(void)
{
- wdt_tick_rate = (*IXP2000_T1_CLD * HZ)/ 256;;
+ if ((*IXP2000_PRODUCT_ID & 0x001ffef0) == 0x00000000) {
+ printk(KERN_INFO "Unable to use IXP2000 watchdog due to IXP2800 erratum #25.\n");
+ return -EIO;
+ }
+
+ wdt_tick_rate = (*IXP2000_T1_CLD * HZ) / 256;
return misc_register(&ixp2000_wdt_miscdev);
}