Searched refs:sunxi_wdt (Results 1 - 4 of 4) sorted by relevance

/linux-4.4.14/drivers/watchdog/
H A Dsunxi_wdt.c92 struct sunxi_wdt_dev *sunxi_wdt = container_of(this, sunxi_restart_handle() local
95 void __iomem *wdt_base = sunxi_wdt->wdt_base; sunxi_restart_handle()
96 const struct sunxi_wdt_reg *regs = sunxi_wdt->wdt_regs; sunxi_restart_handle()
128 struct sunxi_wdt_dev *sunxi_wdt = watchdog_get_drvdata(wdt_dev); sunxi_wdt_ping() local
129 void __iomem *wdt_base = sunxi_wdt->wdt_base; sunxi_wdt_ping()
130 const struct sunxi_wdt_reg *regs = sunxi_wdt->wdt_regs; sunxi_wdt_ping()
140 struct sunxi_wdt_dev *sunxi_wdt = watchdog_get_drvdata(wdt_dev); sunxi_wdt_set_timeout() local
141 void __iomem *wdt_base = sunxi_wdt->wdt_base; sunxi_wdt_set_timeout()
142 const struct sunxi_wdt_reg *regs = sunxi_wdt->wdt_regs; sunxi_wdt_set_timeout()
148 sunxi_wdt->wdt_dev.timeout = timeout; sunxi_wdt_set_timeout()
162 struct sunxi_wdt_dev *sunxi_wdt = watchdog_get_drvdata(wdt_dev); sunxi_wdt_stop() local
163 void __iomem *wdt_base = sunxi_wdt->wdt_base; sunxi_wdt_stop()
164 const struct sunxi_wdt_reg *regs = sunxi_wdt->wdt_regs; sunxi_wdt_stop()
174 struct sunxi_wdt_dev *sunxi_wdt = watchdog_get_drvdata(wdt_dev); sunxi_wdt_start() local
175 void __iomem *wdt_base = sunxi_wdt->wdt_base; sunxi_wdt_start()
176 const struct sunxi_wdt_reg *regs = sunxi_wdt->wdt_regs; sunxi_wdt_start()
179 ret = sunxi_wdt_set_timeout(&sunxi_wdt->wdt_dev, sunxi_wdt_start()
180 sunxi_wdt->wdt_dev.timeout); sunxi_wdt_start()
240 struct sunxi_wdt_dev *sunxi_wdt; sunxi_wdt_probe() local
245 sunxi_wdt = devm_kzalloc(&pdev->dev, sizeof(*sunxi_wdt), GFP_KERNEL); sunxi_wdt_probe()
246 if (!sunxi_wdt) sunxi_wdt_probe()
249 platform_set_drvdata(pdev, sunxi_wdt); sunxi_wdt_probe()
255 sunxi_wdt->wdt_regs = device->data; sunxi_wdt_probe()
258 sunxi_wdt->wdt_base = devm_ioremap_resource(&pdev->dev, res); sunxi_wdt_probe()
259 if (IS_ERR(sunxi_wdt->wdt_base)) sunxi_wdt_probe()
260 return PTR_ERR(sunxi_wdt->wdt_base); sunxi_wdt_probe()
262 sunxi_wdt->wdt_dev.info = &sunxi_wdt_info; sunxi_wdt_probe()
263 sunxi_wdt->wdt_dev.ops = &sunxi_wdt_ops; sunxi_wdt_probe()
264 sunxi_wdt->wdt_dev.timeout = WDT_MAX_TIMEOUT; sunxi_wdt_probe()
265 sunxi_wdt->wdt_dev.max_timeout = WDT_MAX_TIMEOUT; sunxi_wdt_probe()
266 sunxi_wdt->wdt_dev.min_timeout = WDT_MIN_TIMEOUT; sunxi_wdt_probe()
267 sunxi_wdt->wdt_dev.parent = &pdev->dev; sunxi_wdt_probe()
269 watchdog_init_timeout(&sunxi_wdt->wdt_dev, timeout, &pdev->dev); sunxi_wdt_probe()
270 watchdog_set_nowayout(&sunxi_wdt->wdt_dev, nowayout); sunxi_wdt_probe()
272 watchdog_set_drvdata(&sunxi_wdt->wdt_dev, sunxi_wdt); sunxi_wdt_probe()
274 sunxi_wdt_stop(&sunxi_wdt->wdt_dev); sunxi_wdt_probe()
276 err = watchdog_register_device(&sunxi_wdt->wdt_dev); sunxi_wdt_probe()
280 sunxi_wdt->restart_handler.notifier_call = sunxi_restart_handle; sunxi_wdt_probe()
281 sunxi_wdt->restart_handler.priority = 128; sunxi_wdt_probe()
282 err = register_restart_handler(&sunxi_wdt->restart_handler); sunxi_wdt_probe()
288 sunxi_wdt->wdt_dev.timeout, nowayout); sunxi_wdt_probe()
295 struct sunxi_wdt_dev *sunxi_wdt = platform_get_drvdata(pdev); sunxi_wdt_remove() local
297 unregister_restart_handler(&sunxi_wdt->restart_handler); sunxi_wdt_remove()
299 watchdog_unregister_device(&sunxi_wdt->wdt_dev); sunxi_wdt_remove()
300 watchdog_set_drvdata(&sunxi_wdt->wdt_dev, NULL); sunxi_wdt_remove()
307 struct sunxi_wdt_dev *sunxi_wdt = platform_get_drvdata(pdev); sunxi_wdt_shutdown() local
309 sunxi_wdt_stop(&sunxi_wdt->wdt_dev); sunxi_wdt_shutdown()
H A DMakefile51 obj-$(CONFIG_SUNXI_WATCHDOG) += sunxi_wdt.o
H A Dimgpdc_wdt.c10 * Based on drivers/watchdog/sunxi_wdt.c Copyright (c) 2013 Carlo Caione
H A Dmtk_wdt.c18 * Based on sunxi_wdt.c

Completed in 125 milliseconds