Lines Matching +full:dw +full:- +full:wdt
4 * SPDX-License-Identifier: GPL-2.0+
12 #include <wdt.h>
40 i = log_2_n_round_up(timeout * priv->rate / 1000) - 16; in rockchip_wdt_settimeout()
46 writel((i | (i << 4)), priv->base + WDT_TORR); in rockchip_wdt_settimeout()
53 u32 val = readl(priv->base + WDT_CR); in rockchip_wdt_enable()
60 writel(val, priv->base + WDT_CR); in rockchip_wdt_enable()
67 val = readl(priv->base + WDT_CR); in rockchip_wdt_is_enabled()
78 writel(WDT_CRR_RESTART_VAL, priv->base + WDT_CRR); in rockchip_wdt_reset()
89 if (priv->rst.dev) in rockchip_wdt_start()
90 reset_deassert(&priv->rst); in rockchip_wdt_start()
104 if (priv->rst.dev) { in rockchip_wdt_stop()
105 reset_assert(&priv->rst); in rockchip_wdt_stop()
106 reset_deassert(&priv->rst); in rockchip_wdt_stop()
124 priv->base = dev_read_addr_ptr(dev); in rockchip_wdt_ofdata_to_platdata()
125 if (!priv->base) in rockchip_wdt_ofdata_to_platdata()
126 return -ENOENT; in rockchip_wdt_ofdata_to_platdata()
136 ret = reset_get_by_name(dev, "reset", &priv->rst); in rockchip_wdt_probe()
139 priv->rst.dev = NULL; in rockchip_wdt_probe()
142 ret = clk_get_by_index(dev, 0, &priv->clk); in rockchip_wdt_probe()
147 priv->rate = clk_get_rate(&priv->clk); in rockchip_wdt_probe()
148 if (priv->rate < 0) in rockchip_wdt_probe()
149 return -EINVAL; in rockchip_wdt_probe()
155 { .compatible = "snps,dw-wdt" },