Lines Matching refs:moxart_wdt

38 	struct moxart_wdt_dev *moxart_wdt = watchdog_get_drvdata(wdt_dev);  in moxart_wdt_restart()  local
40 writel(1, moxart_wdt->base + REG_COUNT); in moxart_wdt_restart()
41 writel(0x5ab9, moxart_wdt->base + REG_MODE); in moxart_wdt_restart()
42 writel(0x03, moxart_wdt->base + REG_ENABLE); in moxart_wdt_restart()
49 struct moxart_wdt_dev *moxart_wdt = watchdog_get_drvdata(wdt_dev); in moxart_wdt_stop() local
51 writel(0, moxart_wdt->base + REG_ENABLE); in moxart_wdt_stop()
58 struct moxart_wdt_dev *moxart_wdt = watchdog_get_drvdata(wdt_dev); in moxart_wdt_start() local
60 writel(moxart_wdt->clock_frequency * wdt_dev->timeout, in moxart_wdt_start()
61 moxart_wdt->base + REG_COUNT); in moxart_wdt_start()
62 writel(0x5ab9, moxart_wdt->base + REG_MODE); in moxart_wdt_start()
63 writel(0x03, moxart_wdt->base + REG_ENABLE); in moxart_wdt_start()
92 struct moxart_wdt_dev *moxart_wdt; in moxart_wdt_probe() local
99 moxart_wdt = devm_kzalloc(dev, sizeof(*moxart_wdt), GFP_KERNEL); in moxart_wdt_probe()
100 if (!moxart_wdt) in moxart_wdt_probe()
103 platform_set_drvdata(pdev, moxart_wdt); in moxart_wdt_probe()
105 moxart_wdt->base = devm_platform_ioremap_resource(pdev, 0); in moxart_wdt_probe()
106 if (IS_ERR(moxart_wdt->base)) in moxart_wdt_probe()
107 return PTR_ERR(moxart_wdt->base); in moxart_wdt_probe()
115 moxart_wdt->clock_frequency = clk_get_rate(clk); in moxart_wdt_probe()
116 if (moxart_wdt->clock_frequency == 0) { in moxart_wdt_probe()
121 max_timeout = UINT_MAX / moxart_wdt->clock_frequency; in moxart_wdt_probe()
123 moxart_wdt->dev.info = &moxart_wdt_info; in moxart_wdt_probe()
124 moxart_wdt->dev.ops = &moxart_wdt_ops; in moxart_wdt_probe()
125 moxart_wdt->dev.timeout = max_timeout; in moxart_wdt_probe()
126 moxart_wdt->dev.min_timeout = 1; in moxart_wdt_probe()
127 moxart_wdt->dev.max_timeout = max_timeout; in moxart_wdt_probe()
128 moxart_wdt->dev.parent = dev; in moxart_wdt_probe()
130 watchdog_init_timeout(&moxart_wdt->dev, heartbeat, dev); in moxart_wdt_probe()
131 watchdog_set_nowayout(&moxart_wdt->dev, nowayout); in moxart_wdt_probe()
132 watchdog_set_restart_priority(&moxart_wdt->dev, 128); in moxart_wdt_probe()
134 watchdog_set_drvdata(&moxart_wdt->dev, moxart_wdt); in moxart_wdt_probe()
136 watchdog_stop_on_unregister(&moxart_wdt->dev); in moxart_wdt_probe()
137 err = devm_watchdog_register_device(dev, &moxart_wdt->dev); in moxart_wdt_probe()
142 moxart_wdt->dev.timeout, nowayout); in moxart_wdt_probe()