Lines Matching refs:wdt_dev
60 struct watchdog_device wdt_dev; member
126 static int sunxi_wdt_ping(struct watchdog_device *wdt_dev) in sunxi_wdt_ping() argument
128 struct sunxi_wdt_dev *sunxi_wdt = watchdog_get_drvdata(wdt_dev); in sunxi_wdt_ping()
137 static int sunxi_wdt_set_timeout(struct watchdog_device *wdt_dev, in sunxi_wdt_set_timeout() argument
140 struct sunxi_wdt_dev *sunxi_wdt = watchdog_get_drvdata(wdt_dev); in sunxi_wdt_set_timeout()
148 sunxi_wdt->wdt_dev.timeout = timeout; in sunxi_wdt_set_timeout()
155 sunxi_wdt_ping(wdt_dev); in sunxi_wdt_set_timeout()
160 static int sunxi_wdt_stop(struct watchdog_device *wdt_dev) in sunxi_wdt_stop() argument
162 struct sunxi_wdt_dev *sunxi_wdt = watchdog_get_drvdata(wdt_dev); in sunxi_wdt_stop()
171 static int sunxi_wdt_start(struct watchdog_device *wdt_dev) in sunxi_wdt_start() argument
174 struct sunxi_wdt_dev *sunxi_wdt = watchdog_get_drvdata(wdt_dev); in sunxi_wdt_start()
179 ret = sunxi_wdt_set_timeout(&sunxi_wdt->wdt_dev, in sunxi_wdt_start()
180 sunxi_wdt->wdt_dev.timeout); in sunxi_wdt_start()
262 sunxi_wdt->wdt_dev.info = &sunxi_wdt_info; in sunxi_wdt_probe()
263 sunxi_wdt->wdt_dev.ops = &sunxi_wdt_ops; in sunxi_wdt_probe()
264 sunxi_wdt->wdt_dev.timeout = WDT_MAX_TIMEOUT; in sunxi_wdt_probe()
265 sunxi_wdt->wdt_dev.max_timeout = WDT_MAX_TIMEOUT; in sunxi_wdt_probe()
266 sunxi_wdt->wdt_dev.min_timeout = WDT_MIN_TIMEOUT; in sunxi_wdt_probe()
267 sunxi_wdt->wdt_dev.parent = &pdev->dev; in sunxi_wdt_probe()
269 watchdog_init_timeout(&sunxi_wdt->wdt_dev, timeout, &pdev->dev); in sunxi_wdt_probe()
270 watchdog_set_nowayout(&sunxi_wdt->wdt_dev, nowayout); in sunxi_wdt_probe()
272 watchdog_set_drvdata(&sunxi_wdt->wdt_dev, sunxi_wdt); in sunxi_wdt_probe()
274 sunxi_wdt_stop(&sunxi_wdt->wdt_dev); in sunxi_wdt_probe()
276 err = watchdog_register_device(&sunxi_wdt->wdt_dev); in sunxi_wdt_probe()
288 sunxi_wdt->wdt_dev.timeout, nowayout); in sunxi_wdt_probe()
299 watchdog_unregister_device(&sunxi_wdt->wdt_dev); in sunxi_wdt_remove()
300 watchdog_set_drvdata(&sunxi_wdt->wdt_dev, NULL); in sunxi_wdt_remove()
309 sunxi_wdt_stop(&sunxi_wdt->wdt_dev); in sunxi_wdt_shutdown()