| /* SPDX-License-Identifier: GPL-2.0 */ |
| #ifndef LINUX_BCM47XX_WDT_H_ |
| #define LINUX_BCM47XX_WDT_H_ |
| |
| #include <linux/timer.h> |
| #include <linux/types.h> |
| #include <linux/watchdog.h> |
| |
| |
| struct bcm47xx_wdt { |
| u32 (*timer_set)(struct bcm47xx_wdt *, u32); |
| u32 (*timer_set_ms)(struct bcm47xx_wdt *, u32); |
| u32 max_timer_ms; |
| |
| void *driver_data; |
| |
| struct watchdog_device wdd; |
| |
| struct timer_list soft_timer; |
| atomic_t soft_ticks; |
| }; |
| |
| static inline void *bcm47xx_wdt_get_drvdata(struct bcm47xx_wdt *wdt) |
| { |
| return wdt->driver_data; |
| } |
| #endif /* LINUX_BCM47XX_WDT_H_ */ |