Lines Matching refs:wdt

81 	struct rti_wdt_device *wdt = watchdog_get_drvdata(wdd);
89 timer_margin = (u64)wdd->timeout * wdt->freq;
93 writel_relaxed(timer_margin, wdt->base + RTIDWDPRLD);
104 /* Generate NMI when wdt expires */
105 writel_relaxed(RTIWWDRX_NMI, wdt->base + RTIWWDRXCTRL);
108 writel_relaxed(RTIWWDSIZE_50P, wdt->base + RTIWWDSIZECTRL);
110 readl_relaxed(wdt->base + RTIWWDSIZECTRL);
113 writel_relaxed(WDENABLE_KEY, wdt->base + RTIDWDCTRL);
119 struct rti_wdt_device *wdt = watchdog_get_drvdata(wdd);
122 writel_relaxed(WDKEY_SEQ0, wdt->base + RTIWDKEY);
124 writel_relaxed(WDKEY_SEQ1, wdt->base + RTIWDKEY);
176 struct rti_wdt_device *wdt = watchdog_get_drvdata(wdd);
179 val = readl_relaxed(wdt->base + RTIWDSTATUS);
183 timer_counter = readl_relaxed(wdt->base + RTIDWDCNTR);
187 do_div(timer_counter, wdt->freq);
214 struct rti_wdt_device *wdt;
223 wdt = devm_kzalloc(dev, sizeof(*wdt), GFP_KERNEL);
224 if (!wdt)
231 wdt->freq = clk_get_rate(clk);
235 if (!wdt->freq) {
247 platform_set_drvdata(pdev, wdt);
249 wdd = &wdt->wdd;
254 wdt->freq * 1000;
257 watchdog_set_drvdata(wdd, wdt);
261 wdt->base = devm_platform_ioremap_resource(pdev, 0);
262 if (IS_ERR(wdt->base)) {
263 ret = PTR_ERR(wdt->base);
267 if (readl(wdt->base + RTIDWDCTRL) == WDENABLE_KEY) {
275 heartbeat_ms = readl(wdt->base + RTIDWDPRLD);
278 do_div(heartbeat_ms, wdt->freq);
286 wsize = readl(wdt->base + RTIWWDSIZECTRL);
361 struct rti_wdt_device *wdt = platform_get_drvdata(pdev);
363 watchdog_unregister_device(&wdt->wdd);
372 { .compatible = "ti,j7-rti-wdt", },
379 .name = "rti-wdt",
398 MODULE_ALIAS("platform:rti-wdt");