Lines Matching refs:wdt_dev
56 struct watchdog_device wdt_dev; member
61 static int meson_wdt_restart(struct watchdog_device *wdt_dev, in meson_wdt_restart() argument
64 struct meson_wdt_dev *meson_wdt = watchdog_get_drvdata(wdt_dev); in meson_wdt_restart()
77 static int meson_wdt_ping(struct watchdog_device *wdt_dev) in meson_wdt_ping() argument
79 struct meson_wdt_dev *meson_wdt = watchdog_get_drvdata(wdt_dev); in meson_wdt_ping()
86 static void meson_wdt_change_timeout(struct watchdog_device *wdt_dev, in meson_wdt_change_timeout() argument
89 struct meson_wdt_dev *meson_wdt = watchdog_get_drvdata(wdt_dev); in meson_wdt_change_timeout()
98 static int meson_wdt_set_timeout(struct watchdog_device *wdt_dev, in meson_wdt_set_timeout() argument
101 wdt_dev->timeout = timeout; in meson_wdt_set_timeout()
103 meson_wdt_change_timeout(wdt_dev, timeout); in meson_wdt_set_timeout()
104 meson_wdt_ping(wdt_dev); in meson_wdt_set_timeout()
109 static int meson_wdt_stop(struct watchdog_device *wdt_dev) in meson_wdt_stop() argument
111 struct meson_wdt_dev *meson_wdt = watchdog_get_drvdata(wdt_dev); in meson_wdt_stop()
121 static int meson_wdt_start(struct watchdog_device *wdt_dev) in meson_wdt_start() argument
123 struct meson_wdt_dev *meson_wdt = watchdog_get_drvdata(wdt_dev); in meson_wdt_start()
126 meson_wdt_change_timeout(wdt_dev, meson_wdt->wdt_dev.timeout); in meson_wdt_start()
127 meson_wdt_ping(wdt_dev); in meson_wdt_start()
177 meson_wdt->wdt_dev.parent = dev; in meson_wdt_probe()
178 meson_wdt->wdt_dev.info = &meson_wdt_info; in meson_wdt_probe()
179 meson_wdt->wdt_dev.ops = &meson_wdt_ops; in meson_wdt_probe()
180 meson_wdt->wdt_dev.max_timeout = in meson_wdt_probe()
182 meson_wdt->wdt_dev.min_timeout = MESON_WDT_MIN_TIMEOUT; in meson_wdt_probe()
183 meson_wdt->wdt_dev.timeout = min_t(unsigned int, in meson_wdt_probe()
185 meson_wdt->wdt_dev.max_timeout); in meson_wdt_probe()
187 watchdog_set_drvdata(&meson_wdt->wdt_dev, meson_wdt); in meson_wdt_probe()
189 watchdog_init_timeout(&meson_wdt->wdt_dev, timeout, dev); in meson_wdt_probe()
190 watchdog_set_nowayout(&meson_wdt->wdt_dev, nowayout); in meson_wdt_probe()
191 watchdog_set_restart_priority(&meson_wdt->wdt_dev, 128); in meson_wdt_probe()
193 meson_wdt_stop(&meson_wdt->wdt_dev); in meson_wdt_probe()
195 watchdog_stop_on_reboot(&meson_wdt->wdt_dev); in meson_wdt_probe()
196 err = devm_watchdog_register_device(dev, &meson_wdt->wdt_dev); in meson_wdt_probe()
201 meson_wdt->wdt_dev.timeout, nowayout); in meson_wdt_probe()