summaryrefslogtreecommitdiff
path: root/target/linux/brcm47xx/files/arch/mips
diff options
context:
space:
mode:
authormb <mb@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-02-19 11:58:20 +0000
committermb <mb@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-02-19 11:58:20 +0000
commit4202d050af8cf088e7dfb643d491d3b4b169e473 (patch)
treed8d70aa08fa669c17f780fdda3c7ed70d6facb03 /target/linux/brcm47xx/files/arch/mips
parente4a3634c00818e77664da2c3592a95e8c8fad5d6 (diff)
SSB: Update the watchdog fix to the patch version that will go upstream.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10494 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm47xx/files/arch/mips')
-rw-r--r--target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c b/target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c
index 2fcf684435..2c106c9b26 100644
--- a/target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c
+++ b/target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c
@@ -2,7 +2,7 @@
* Copyright (C) 2004 Florian Schirmer (jolt@tuxbox.org)
* Copyright (C) 2005 Waldemar Brodkorb <wbx@openwrt.org>
* Copyright (C) 2006 Felix Fietkau <nbd@openwrt.org>
- * Copyright (C) 2006 Michael Buesch
+ * Copyright (C) 2006-2008 Michael Buesch <mb@bu3sch.de>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -38,6 +38,7 @@
#include <asm/cfe.h>
#include <linux/pm.h>
#include <linux/ssb/ssb.h>
+#include <linux/ssb/ssb_embedded.h>
#include <nvram.h>
@@ -55,7 +56,8 @@ static void bcm47xx_machine_restart(char *command)
*/
/* Set the watchdog timer to reset immediately */
- ssb_chipco_watchdog_timer_set(&ssb.chipco, 1);
+ if (ssb_watchdog_timer_set(&ssb, 1))
+ printk(KERN_EMERG "SSB watchdog-triggered reboot failed!\n");
while (1)
cpu_relax();
}
@@ -64,7 +66,8 @@ static void bcm47xx_machine_halt(void)
{
/* Disable interrupts and watchdog and spin forever */
local_irq_disable();
- ssb_chipco_watchdog_timer_set(&ssb.chipco, 0);
+ if (ssb_watchdog_timer_set(&ssb, 0))
+ printk(KERN_EMERG "Failed to disable SSB watchdog!\n");
while (1)
cpu_relax();
}