Lines Matching refs:imx7ulp_wdt

210 	struct imx7ulp_wdt_device *imx7ulp_wdt;  in imx7ulp_wdt_probe()  local
215 imx7ulp_wdt = devm_kzalloc(dev, sizeof(*imx7ulp_wdt), GFP_KERNEL); in imx7ulp_wdt_probe()
216 if (!imx7ulp_wdt) in imx7ulp_wdt_probe()
219 platform_set_drvdata(pdev, imx7ulp_wdt); in imx7ulp_wdt_probe()
221 imx7ulp_wdt->base = devm_platform_ioremap_resource(pdev, 0); in imx7ulp_wdt_probe()
222 if (IS_ERR(imx7ulp_wdt->base)) in imx7ulp_wdt_probe()
223 return PTR_ERR(imx7ulp_wdt->base); in imx7ulp_wdt_probe()
225 imx7ulp_wdt->clk = devm_clk_get(dev, NULL); in imx7ulp_wdt_probe()
226 if (IS_ERR(imx7ulp_wdt->clk)) { in imx7ulp_wdt_probe()
228 return PTR_ERR(imx7ulp_wdt->clk); in imx7ulp_wdt_probe()
231 ret = clk_prepare_enable(imx7ulp_wdt->clk); in imx7ulp_wdt_probe()
235 ret = devm_add_action_or_reset(dev, imx7ulp_wdt_action, imx7ulp_wdt->clk); in imx7ulp_wdt_probe()
239 wdog = &imx7ulp_wdt->wdd; in imx7ulp_wdt_probe()
250 watchdog_set_drvdata(wdog, imx7ulp_wdt); in imx7ulp_wdt_probe()
251 ret = imx7ulp_wdt_init(imx7ulp_wdt->base, wdog->timeout * WDOG_CLOCK_RATE); in imx7ulp_wdt_probe()
260 struct imx7ulp_wdt_device *imx7ulp_wdt = dev_get_drvdata(dev); in imx7ulp_wdt_suspend() local
262 if (watchdog_active(&imx7ulp_wdt->wdd)) in imx7ulp_wdt_suspend()
263 imx7ulp_wdt_stop(&imx7ulp_wdt->wdd); in imx7ulp_wdt_suspend()
265 clk_disable_unprepare(imx7ulp_wdt->clk); in imx7ulp_wdt_suspend()
272 struct imx7ulp_wdt_device *imx7ulp_wdt = dev_get_drvdata(dev); in imx7ulp_wdt_resume() local
273 u32 timeout = imx7ulp_wdt->wdd.timeout * WDOG_CLOCK_RATE; in imx7ulp_wdt_resume()
276 ret = clk_prepare_enable(imx7ulp_wdt->clk); in imx7ulp_wdt_resume()
280 if (imx7ulp_wdt_is_enabled(imx7ulp_wdt->base)) in imx7ulp_wdt_resume()
281 imx7ulp_wdt_init(imx7ulp_wdt->base, timeout); in imx7ulp_wdt_resume()
283 if (watchdog_active(&imx7ulp_wdt->wdd)) in imx7ulp_wdt_resume()
284 imx7ulp_wdt_start(&imx7ulp_wdt->wdd); in imx7ulp_wdt_resume()