Lines Matching refs:wdd

60 	struct watchdog_device wdd;  member
66 static inline struct sprd_wdt *to_sprd_wdt(struct watchdog_device *wdd) in to_sprd_wdt() argument
68 return container_of(wdd, struct sprd_wdt, wdd); in to_sprd_wdt()
88 watchdog_notify_pretimeout(&wdt->wdd); in sprd_wdt_isr()
175 static int sprd_wdt_start(struct watchdog_device *wdd) in sprd_wdt_start() argument
177 struct sprd_wdt *wdt = to_sprd_wdt(wdd); in sprd_wdt_start()
181 ret = sprd_wdt_load_value(wdt, wdd->timeout, wdd->pretimeout); in sprd_wdt_start()
190 set_bit(WDOG_HW_RUNNING, &wdd->status); in sprd_wdt_start()
195 static int sprd_wdt_stop(struct watchdog_device *wdd) in sprd_wdt_stop() argument
197 struct sprd_wdt *wdt = to_sprd_wdt(wdd); in sprd_wdt_stop()
209 static int sprd_wdt_set_timeout(struct watchdog_device *wdd, in sprd_wdt_set_timeout() argument
212 struct sprd_wdt *wdt = to_sprd_wdt(wdd); in sprd_wdt_set_timeout()
214 if (timeout == wdd->timeout) in sprd_wdt_set_timeout()
217 wdd->timeout = timeout; in sprd_wdt_set_timeout()
219 return sprd_wdt_load_value(wdt, timeout, wdd->pretimeout); in sprd_wdt_set_timeout()
222 static int sprd_wdt_set_pretimeout(struct watchdog_device *wdd, in sprd_wdt_set_pretimeout() argument
225 struct sprd_wdt *wdt = to_sprd_wdt(wdd); in sprd_wdt_set_pretimeout()
227 if (new_pretimeout < wdd->min_timeout) in sprd_wdt_set_pretimeout()
230 wdd->pretimeout = new_pretimeout; in sprd_wdt_set_pretimeout()
232 return sprd_wdt_load_value(wdt, wdd->timeout, new_pretimeout); in sprd_wdt_set_pretimeout()
235 static u32 sprd_wdt_get_timeleft(struct watchdog_device *wdd) in sprd_wdt_get_timeleft() argument
237 struct sprd_wdt *wdt = to_sprd_wdt(wdd); in sprd_wdt_get_timeleft()
298 wdt->wdd.info = &sprd_wdt_info; in sprd_wdt_probe()
299 wdt->wdd.ops = &sprd_wdt_ops; in sprd_wdt_probe()
300 wdt->wdd.parent = dev; in sprd_wdt_probe()
301 wdt->wdd.min_timeout = SPRD_WDT_MIN_TIMEOUT; in sprd_wdt_probe()
302 wdt->wdd.max_timeout = SPRD_WDT_MAX_TIMEOUT; in sprd_wdt_probe()
303 wdt->wdd.timeout = SPRD_WDT_MAX_TIMEOUT; in sprd_wdt_probe()
316 watchdog_set_nowayout(&wdt->wdd, WATCHDOG_NOWAYOUT); in sprd_wdt_probe()
317 watchdog_init_timeout(&wdt->wdd, 0, dev); in sprd_wdt_probe()
319 ret = devm_watchdog_register_device(dev, &wdt->wdd); in sprd_wdt_probe()
333 if (watchdog_active(&wdt->wdd)) in sprd_wdt_pm_suspend()
334 sprd_wdt_stop(&wdt->wdd); in sprd_wdt_pm_suspend()
349 if (watchdog_active(&wdt->wdd)) in sprd_wdt_pm_resume()
350 ret = sprd_wdt_start(&wdt->wdd); in sprd_wdt_pm_resume()