Lines Matching refs:wdog
129 static int imx7ulp_wdt_enable(struct watchdog_device *wdog, bool enable)
131 struct imx7ulp_wdt_device *wdt = watchdog_get_drvdata(wdog);
147 static int imx7ulp_wdt_ping(struct watchdog_device *wdog)
149 struct imx7ulp_wdt_device *wdt = watchdog_get_drvdata(wdog);
156 static int imx7ulp_wdt_start(struct watchdog_device *wdog)
158 return imx7ulp_wdt_enable(wdog, true);
161 static int imx7ulp_wdt_stop(struct watchdog_device *wdog)
163 return imx7ulp_wdt_enable(wdog, false);
186 static int imx7ulp_wdt_set_timeout(struct watchdog_device *wdog,
189 struct imx7ulp_wdt_device *wdt = watchdog_get_drvdata(wdog);
203 wdog->timeout = timeout;
207 static int imx7ulp_wdt_restart(struct watchdog_device *wdog,
210 struct imx7ulp_wdt_device *wdt = watchdog_get_drvdata(wdog);
213 ret = imx7ulp_wdt_enable(wdog, true);
221 /* wait for wdog to fire */
255 /* unlock the wdog for reconfiguration */
315 struct watchdog_device *wdog;
337 wdog = &imx7ulp_wdt->wdd;
338 wdog->info = &imx7ulp_wdt_info;
339 wdog->ops = &imx7ulp_wdt_ops;
340 wdog->min_timeout = 1;
341 wdog->max_timeout = MAX_TIMEOUT;
342 wdog->parent = dev;
343 wdog->timeout = DEFAULT_TIMEOUT;
345 watchdog_init_timeout(wdog, 0, dev);
346 watchdog_stop_on_reboot(wdog);
347 watchdog_stop_on_unregister(wdog);
348 watchdog_set_drvdata(wdog, imx7ulp_wdt);
351 ret = imx7ulp_wdt_init(imx7ulp_wdt, wdog->timeout * imx7ulp_wdt->hw->wdog_clock_rate);
355 return devm_watchdog_register_device(dev, wdog);