Lines Matching full:wdd

57 	struct watchdog_device	wdd;  member
72 static int cgbc_wdt_start(struct watchdog_device *wdd) in cgbc_wdt_start() argument
74 struct cgbc_wdt_data *wdt_data = watchdog_get_drvdata(wdd); in cgbc_wdt_start()
76 unsigned int timeout1 = (wdd->timeout - wdd->pretimeout) * 1000; in cgbc_wdt_start()
77 unsigned int timeout2 = wdd->pretimeout * 1000; in cgbc_wdt_start()
91 if (wdd->pretimeout) { in cgbc_wdt_start()
105 static int cgbc_wdt_stop(struct watchdog_device *wdd) in cgbc_wdt_stop() argument
107 struct cgbc_wdt_data *wdt_data = watchdog_get_drvdata(wdd); in cgbc_wdt_stop()
117 static int cgbc_wdt_keepalive(struct watchdog_device *wdd) in cgbc_wdt_keepalive() argument
119 struct cgbc_wdt_data *wdt_data = watchdog_get_drvdata(wdd); in cgbc_wdt_keepalive()
126 static int cgbc_wdt_set_pretimeout(struct watchdog_device *wdd, in cgbc_wdt_set_pretimeout() argument
129 wdd->pretimeout = pretimeout; in cgbc_wdt_set_pretimeout()
131 if (watchdog_active(wdd)) in cgbc_wdt_set_pretimeout()
132 return cgbc_wdt_start(wdd); in cgbc_wdt_set_pretimeout()
137 static int cgbc_wdt_set_timeout(struct watchdog_device *wdd, in cgbc_wdt_set_timeout() argument
140 if (timeout < wdd->pretimeout) in cgbc_wdt_set_timeout()
141 wdd->pretimeout = 0; in cgbc_wdt_set_timeout()
143 wdd->timeout = timeout; in cgbc_wdt_set_timeout()
145 if (watchdog_active(wdd)) in cgbc_wdt_set_timeout()
146 return cgbc_wdt_start(wdd); in cgbc_wdt_set_timeout()
171 struct watchdog_device *wdd; in cgbc_wdt_probe() local
178 wdd = &wdt_data->wdd; in cgbc_wdt_probe()
179 wdd->parent = dev; in cgbc_wdt_probe()
181 wdd->info = &cgbc_wdt_info; in cgbc_wdt_probe()
182 wdd->ops = &cgbc_wdt_ops; in cgbc_wdt_probe()
183 wdd->max_timeout = CGBC_WDT_MAX_TIMEOUT; in cgbc_wdt_probe()
184 wdd->min_timeout = CGBC_WDT_MIN_TIMEOUT; in cgbc_wdt_probe()
186 watchdog_set_drvdata(wdd, wdt_data); in cgbc_wdt_probe()
187 watchdog_set_nowayout(wdd, nowayout); in cgbc_wdt_probe()
189 wdd->timeout = CGBC_WDT_DEFAULT_TIMEOUT; in cgbc_wdt_probe()
190 watchdog_init_timeout(wdd, timeout, dev); in cgbc_wdt_probe()
191 cgbc_wdt_set_pretimeout(wdd, pretimeout); in cgbc_wdt_probe()
194 watchdog_stop_on_reboot(wdd); in cgbc_wdt_probe()
195 watchdog_stop_on_unregister(wdd); in cgbc_wdt_probe()
197 return devm_watchdog_register_device(dev, wdd); in cgbc_wdt_probe()