Lines Matching refs:wdog
67 static int imx7ulp_wdt_enable(struct watchdog_device *wdog, bool enable)
69 struct imx7ulp_wdt_device *wdt = watchdog_get_drvdata(wdog);
98 static int imx7ulp_wdt_ping(struct watchdog_device *wdog)
100 struct imx7ulp_wdt_device *wdt = watchdog_get_drvdata(wdog);
107 static int imx7ulp_wdt_start(struct watchdog_device *wdog)
109 return imx7ulp_wdt_enable(wdog, true);
112 static int imx7ulp_wdt_stop(struct watchdog_device *wdog)
114 return imx7ulp_wdt_enable(wdog, false);
117 static int imx7ulp_wdt_set_timeout(struct watchdog_device *wdog,
120 struct imx7ulp_wdt_device *wdt = watchdog_get_drvdata(wdog);
132 wdog->timeout = timeout;
140 static int imx7ulp_wdt_restart(struct watchdog_device *wdog,
143 struct imx7ulp_wdt_device *wdt = watchdog_get_drvdata(wdog);
146 ret = imx7ulp_wdt_enable(wdog, true);
154 /* wait for wdog to fire */
182 /* unlock the wdog for reconfiguration */
212 struct watchdog_device *wdog;
239 wdog = &imx7ulp_wdt->wdd;
240 wdog->info = &imx7ulp_wdt_info;
241 wdog->ops = &imx7ulp_wdt_ops;
242 wdog->min_timeout = 1;
243 wdog->max_timeout = MAX_TIMEOUT;
244 wdog->parent = dev;
245 wdog->timeout = DEFAULT_TIMEOUT;
247 watchdog_init_timeout(wdog, 0, dev);
248 watchdog_stop_on_reboot(wdog);
249 watchdog_stop_on_unregister(wdog);
250 watchdog_set_drvdata(wdog, imx7ulp_wdt);
251 ret = imx7ulp_wdt_init(imx7ulp_wdt->base, wdog->timeout * WDOG_CLOCK_RATE);
255 return devm_watchdog_register_device(dev, wdog);