aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/watchdog
diff options
context:
space:
mode:
authorJohn W. Linville <linville@tuxdriver.com>2011-08-22 14:28:50 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-08-22 14:28:50 -0400
commitb38d355eaa223e420d0c45ff7a3279ea811552c5 (patch)
tree4a6b3341e1b8b72afdc19e3b9bfe8c40219c04aa /drivers/watchdog
parentca1ba7caa68520864e4b9227e67f3bbc6fed373b (diff)
parentaf2bf4b4ee58d262a9a5c1d4ce6f81835058f8b5 (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem
Conflicts: drivers/staging/ath6kl/miscdrv/ar3kps/ar3kpsparser.c drivers/staging/ath6kl/os/linux/ar6000_drv.c
Diffstat (limited to 'drivers/watchdog')
-rw-r--r--drivers/watchdog/bcm47xx_wdt.c27
1 files changed, 25 insertions, 2 deletions
diff --git a/drivers/watchdog/bcm47xx_wdt.c b/drivers/watchdog/bcm47xx_wdt.c
index bd44417c84d..5c5f4b14fd0 100644
--- a/drivers/watchdog/bcm47xx_wdt.c
+++ b/drivers/watchdog/bcm47xx_wdt.c
@@ -54,12 +54,35 @@ static atomic_t ticks;
54static inline void bcm47xx_wdt_hw_start(void) 54static inline void bcm47xx_wdt_hw_start(void)
55{ 55{
56 /* this is 2,5s on 100Mhz clock and 2s on 133 Mhz */ 56 /* this is 2,5s on 100Mhz clock and 2s on 133 Mhz */
57 ssb_watchdog_timer_set(&ssb_bcm47xx, 0xfffffff); 57 switch (bcm47xx_bus_type) {
58#ifdef CONFIG_BCM47XX_SSB
59 case BCM47XX_BUS_TYPE_SSB:
60 ssb_watchdog_timer_set(&bcm47xx_bus.ssb, 0xfffffff);
61 break;
62#endif
63#ifdef CONFIG_BCM47XX_BCMA
64 case BCM47XX_BUS_TYPE_BCMA:
65 bcma_chipco_watchdog_timer_set(&bcm47xx_bus.bcma.bus.drv_cc,
66 0xfffffff);
67 break;
68#endif
69 }
58} 70}
59 71
60static inline int bcm47xx_wdt_hw_stop(void) 72static inline int bcm47xx_wdt_hw_stop(void)
61{ 73{
62 return ssb_watchdog_timer_set(&ssb_bcm47xx, 0); 74 switch (bcm47xx_bus_type) {
75#ifdef CONFIG_BCM47XX_SSB
76 case BCM47XX_BUS_TYPE_SSB:
77 return ssb_watchdog_timer_set(&bcm47xx_bus.ssb, 0);
78#endif
79#ifdef CONFIG_BCM47XX_BCMA
80 case BCM47XX_BUS_TYPE_BCMA:
81 bcma_chipco_watchdog_timer_set(&bcm47xx_bus.bcma.bus.drv_cc, 0);
82 return 0;
83#endif
84 }
85 return -EINVAL;
63} 86}
64 87
65static void bcm47xx_timer_tick(unsigned long unused) 88static void bcm47xx_timer_tick(unsigned long unused)