[PATCH] Fix IXP4xx watchdog errata workaround

From: Deepak Saxena
Date: Tue Jan 03 2006 - 15:50:20 EST


The IXP4xx driver bails out on all A0 CPUs, but it should only do
so on IXP42x as IXP46x has functioning HW.

Signed-off-by: Deepak Saxena <dsaxena@xxxxxxxxxxx>

---


Index: linux-2.6-git/drivers/char/watchdog/ixp4xx_wdt.c
===================================================================
--- linux-2.6-git.orig/drivers/char/watchdog/ixp4xx_wdt.c
+++ linux-2.6-git/drivers/char/watchdog/ixp4xx_wdt.c
@@ -186,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;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/