Lines Matching +full:short +full:- +full:ping
1 // SPDX-License-Identifier: GPL-2.0-or-later
36 #define DRVNAME "lenovo-se10-wdt"
38 /*The timeout range is 1-255 seconds*/
44 static unsigned short bram_base;
66 return -EBUSY; in set_bram()
111 wdog->timeout = timeout; in wdt_set_timeout()
112 return set_bram(CUS_WDT_CFG, wdog->timeout); in wdt_set_timeout()
125 return -EBUSY; in wdt_get_time()
136 return -EBUSY; in wdt_ping()
151 .ping = wdt_ping,
172 struct device *dev = &pdev->dev; in se10_wdt_probe()
178 return -EBUSY; in se10_wdt_probe()
183 return -ENODEV; in se10_wdt_probe()
194 return -ENOMEM; in se10_wdt_probe()
196 watchdog_set_drvdata(&priv->wdd, priv); in se10_wdt_probe()
198 priv->wdd.parent = dev; in se10_wdt_probe()
199 priv->wdd.info = &wdt_info; in se10_wdt_probe()
200 priv->wdd.ops = &se10_wdt_ops; in se10_wdt_probe()
201 priv->wdd.timeout = WATCHDOG_TIMEOUT; /* Set default timeout */ in se10_wdt_probe()
202 priv->wdd.min_timeout = MIN_TIMEOUT; in se10_wdt_probe()
203 priv->wdd.max_timeout = MAX_TIMEOUT; in se10_wdt_probe()
207 watchdog_init_timeout(&priv->wdd, timeout, dev); in se10_wdt_probe()
208 watchdog_set_nowayout(&priv->wdd, nowayout); in se10_wdt_probe()
209 watchdog_stop_on_reboot(&priv->wdd); in se10_wdt_probe()
210 watchdog_stop_on_unregister(&priv->wdd); in se10_wdt_probe()
212 ret = devm_watchdog_register_device(dev, &priv->wdd); in se10_wdt_probe()
214 dev_dbg(&pdev->dev, "initialized. timeout=%d sec (nowayout=%d)\n", in se10_wdt_probe()
215 priv->wdd.timeout, nowayout); in se10_wdt_probe()
231 se10_pdev = platform_device_alloc("lenovo-se10-wdt", -1); in se10_create_platform_device()
233 return -ENOMEM; in se10_create_platform_device()
244 .ident = "LENOVO-SE10",
252 .ident = "LENOVO-SE10",
260 .ident = "LENOVO-SE10",
268 .ident = "LENOVO-SE10",
276 .ident = "LENOVO-SE10",
290 return -ENODEV; in se10_wdt_init()
307 MODULE_AUTHOR("Mark Pearson <mpearson-lenovo@squebb.ca>");