Hauke Mehrtens | bc245cc | 2012-12-05 18:45:58 +0100 | [diff] [blame] | 1 | #ifndef LINUX_BCM47XX_WDT_H_ |
| 2 | #define LINUX_BCM47XX_WDT_H_ |
| 3 | |
Hauke Mehrtens | f82dedf | 2013-01-24 18:13:34 +0100 | [diff] [blame] | 4 | #include <linux/notifier.h> |
| 5 | #include <linux/timer.h> |
Hauke Mehrtens | bc245cc | 2012-12-05 18:45:58 +0100 | [diff] [blame] | 6 | #include <linux/types.h> |
Hauke Mehrtens | f82dedf | 2013-01-24 18:13:34 +0100 | [diff] [blame] | 7 | #include <linux/watchdog.h> |
Hauke Mehrtens | bc245cc | 2012-12-05 18:45:58 +0100 | [diff] [blame] | 8 | |
| 9 | |
| 10 | struct bcm47xx_wdt { |
| 11 | u32 (*timer_set)(struct bcm47xx_wdt *, u32); |
| 12 | u32 (*timer_set_ms)(struct bcm47xx_wdt *, u32); |
| 13 | u32 max_timer_ms; |
| 14 | |
| 15 | void *driver_data; |
Hauke Mehrtens | f82dedf | 2013-01-24 18:13:34 +0100 | [diff] [blame] | 16 | |
| 17 | struct watchdog_device wdd; |
| 18 | struct notifier_block notifier; |
| 19 | |
| 20 | struct timer_list soft_timer; |
| 21 | atomic_t soft_ticks; |
Hauke Mehrtens | bc245cc | 2012-12-05 18:45:58 +0100 | [diff] [blame] | 22 | }; |
| 23 | |
| 24 | static inline void *bcm47xx_wdt_get_drvdata(struct bcm47xx_wdt *wdt) |
| 25 | { |
| 26 | return wdt->driver_data; |
| 27 | } |
| 28 | #endif /* LINUX_BCM47XX_WDT_H_ */ |