diff options
author | Guenter Roeck <guenter.roeck@ericsson.com> | 2010-04-19 08:37:11 -0700 |
---|---|---|
committer | Wim Van Sebroeck <wim@iguana.be> | 2010-04-26 18:14:03 +0000 |
commit | 86913315de5ed13debd1566dfea15c4179b1f0c0 (patch) | |
tree | 4001fdd34f196f7ab7544ebab429b7401a4ca9ab /drivers/watchdog | |
parent | b91ce4d14a21fc04d165be30319541e0f9204f15 (diff) |
Watchdog: sb_wdog.c: Fix sibyte watchdog initialization
Watchdog configuration register and timer count register were interchanged,
causing wrong values to be written into both registers.
This caused watchdog triggered resets even if the watchdog was reset in time.
Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/watchdog')
-rw-r--r-- | drivers/watchdog/sb_wdog.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/watchdog/sb_wdog.c b/drivers/watchdog/sb_wdog.c index c8eadd47817..88c83aa5730 100644 --- a/drivers/watchdog/sb_wdog.c +++ b/drivers/watchdog/sb_wdog.c @@ -67,8 +67,8 @@ static DEFINE_SPINLOCK(sbwd_lock); void sbwdog_set(char __iomem *wdog, unsigned long t) { spin_lock(&sbwd_lock); - __raw_writeb(0, wdog - 0x10); - __raw_writeq(t & 0x7fffffUL, wdog); + __raw_writeb(0, wdog); + __raw_writeq(t & 0x7fffffUL, wdog - 0x10); spin_unlock(&sbwd_lock); } |