Lines Matching +full:imx +full:- +full:sc +full:- +full:wdt
1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright 2018-2019 NXP.
6 #include <linux/arm-smccc.h>
7 #include <linux/firmware/imx/sci.h>
65 return -EACCES; in imx_sc_wdt_start()
70 return res.a0 ? -EACCES : 0; in imx_sc_wdt_start()
80 return res.a0 ? -EACCES : 0; in imx_sc_wdt_stop()
88 wdog->timeout = timeout; in imx_sc_wdt_set_timeout()
92 return res.a0 ? -EACCES : 0; in imx_sc_wdt_set_timeout()
106 (wdog->timeout - pretimeout) * 1000, 0, 0, 0, in imx_sc_wdt_set_pretimeout()
109 return -EACCES; in imx_sc_wdt_set_pretimeout()
111 wdog->pretimeout = pretimeout; in imx_sc_wdt_set_pretimeout()
126 watchdog_notify_pretimeout(&imx_sc_wdd->wdd); in imx_sc_wdt_notify()
151 .identity = "i.MX SC watchdog timer",
160 struct device *dev = &pdev->dev; in imx_sc_wdt_probe()
165 return -ENOMEM; in imx_sc_wdt_probe()
169 wdog = &imx_sc_wdd->wdd; in imx_sc_wdt_probe()
170 wdog->info = &imx_sc_wdt_info; in imx_sc_wdt_probe()
171 wdog->ops = &imx_sc_wdt_ops; in imx_sc_wdt_probe()
172 wdog->min_timeout = 1; in imx_sc_wdt_probe()
173 wdog->max_timeout = MAX_TIMEOUT; in imx_sc_wdt_probe()
174 wdog->parent = dev; in imx_sc_wdt_probe()
175 wdog->timeout = DEFAULT_TIMEOUT; in imx_sc_wdt_probe()
179 ret = imx_sc_wdt_set_timeout(wdog, wdog->timeout); in imx_sc_wdt_probe()
194 imx_sc_wdd->wdt_notifier.notifier_call = imx_sc_wdt_notify; in imx_sc_wdt_probe()
195 ret = imx_scu_irq_register_notifier(&imx_sc_wdd->wdt_notifier); in imx_sc_wdt_probe()
206 &imx_sc_wdd->wdt_notifier); in imx_sc_wdt_probe()
217 { .compatible = "fsl,imx-sc-wdt", },
225 .name = "imx-sc-wdt",