Lines Matching refs:xdev
53 struct xwdt_device *xdev = watchdog_get_drvdata(wdd); in xilinx_wdt_start() local
55 spin_lock(&xdev->spinlock); in xilinx_wdt_start()
58 control_status_reg = ioread32(xdev->base + XWT_TWCSR0_OFFSET); in xilinx_wdt_start()
62 xdev->base + XWT_TWCSR0_OFFSET); in xilinx_wdt_start()
64 iowrite32(XWT_CSRX_EWDT2_MASK, xdev->base + XWT_TWCSR1_OFFSET); in xilinx_wdt_start()
66 spin_unlock(&xdev->spinlock); in xilinx_wdt_start()
74 struct xwdt_device *xdev = watchdog_get_drvdata(wdd); in xilinx_wdt_stop() local
76 spin_lock(&xdev->spinlock); in xilinx_wdt_stop()
78 control_status_reg = ioread32(xdev->base + XWT_TWCSR0_OFFSET); in xilinx_wdt_stop()
81 xdev->base + XWT_TWCSR0_OFFSET); in xilinx_wdt_stop()
83 iowrite32(0, xdev->base + XWT_TWCSR1_OFFSET); in xilinx_wdt_stop()
85 spin_unlock(&xdev->spinlock); in xilinx_wdt_stop()
94 struct xwdt_device *xdev = watchdog_get_drvdata(wdd); in xilinx_wdt_keepalive() local
96 spin_lock(&xdev->spinlock); in xilinx_wdt_keepalive()
98 control_status_reg = ioread32(xdev->base + XWT_TWCSR0_OFFSET); in xilinx_wdt_keepalive()
100 iowrite32(control_status_reg, xdev->base + XWT_TWCSR0_OFFSET); in xilinx_wdt_keepalive()
102 spin_unlock(&xdev->spinlock); in xilinx_wdt_keepalive()
121 static u32 xwdt_selftest(struct xwdt_device *xdev) in xwdt_selftest() argument
127 spin_lock(&xdev->spinlock); in xwdt_selftest()
129 timer_value1 = ioread32(xdev->base + XWT_TBR_OFFSET); in xwdt_selftest()
130 timer_value2 = ioread32(xdev->base + XWT_TBR_OFFSET); in xwdt_selftest()
135 timer_value2 = ioread32(xdev->base + XWT_TBR_OFFSET); in xwdt_selftest()
138 spin_unlock(&xdev->spinlock); in xwdt_selftest()
151 struct xwdt_device *xdev; in xwdt_probe() local
154 xdev = devm_kzalloc(&pdev->dev, sizeof(*xdev), GFP_KERNEL); in xwdt_probe()
155 if (!xdev) in xwdt_probe()
158 xilinx_wdt_wdd = &xdev->xilinx_wdt_wdd; in xwdt_probe()
164 xdev->base = devm_ioremap_resource(&pdev->dev, res); in xwdt_probe()
165 if (IS_ERR(xdev->base)) in xwdt_probe()
166 return PTR_ERR(xdev->base); in xwdt_probe()
174 &xdev->wdt_interval); in xwdt_probe()
191 if (pfreq && xdev->wdt_interval) in xwdt_probe()
192 xilinx_wdt_wdd->timeout = 2 * ((1 << xdev->wdt_interval) / in xwdt_probe()
195 spin_lock_init(&xdev->spinlock); in xwdt_probe()
196 watchdog_set_drvdata(xilinx_wdt_wdd, xdev); in xwdt_probe()
198 rc = xwdt_selftest(xdev); in xwdt_probe()
211 xdev->base, xilinx_wdt_wdd->timeout); in xwdt_probe()
213 platform_set_drvdata(pdev, xdev); in xwdt_probe()
220 struct xwdt_device *xdev = platform_get_drvdata(pdev); in xwdt_remove() local
222 watchdog_unregister_device(&xdev->xilinx_wdt_wdd); in xwdt_remove()