Lines Matching refs:pdata
48 struct rtc_plat_data *pdata = dev_get_drvdata(dev); in mv_rtc_set_time() local
49 void __iomem *ioaddr = pdata->ioaddr; in mv_rtc_set_time()
68 struct rtc_plat_data *pdata = dev_get_drvdata(dev); in mv_rtc_read_time() local
69 void __iomem *ioaddr = pdata->ioaddr; in mv_rtc_read_time()
99 struct rtc_plat_data *pdata = dev_get_drvdata(dev); in mv_rtc_read_alarm() local
100 void __iomem *ioaddr = pdata->ioaddr; in mv_rtc_read_alarm()
132 struct rtc_plat_data *pdata = dev_get_drvdata(dev); in mv_rtc_set_alarm() local
133 void __iomem *ioaddr = pdata->ioaddr; in mv_rtc_set_alarm()
172 struct rtc_plat_data *pdata = dev_get_drvdata(dev); in mv_rtc_alarm_irq_enable() local
173 void __iomem *ioaddr = pdata->ioaddr; in mv_rtc_alarm_irq_enable()
175 if (pdata->irq < 0) in mv_rtc_alarm_irq_enable()
187 struct rtc_plat_data *pdata = data; in mv_rtc_interrupt() local
188 void __iomem *ioaddr = pdata->ioaddr; in mv_rtc_interrupt()
196 rtc_update_irq(pdata->rtc, 1, RTC_IRQF | RTC_AF); in mv_rtc_interrupt()
210 struct rtc_plat_data *pdata; in mv_rtc_probe() local
214 pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL); in mv_rtc_probe()
215 if (!pdata) in mv_rtc_probe()
218 pdata->ioaddr = devm_platform_ioremap_resource(pdev, 0); in mv_rtc_probe()
219 if (IS_ERR(pdata->ioaddr)) in mv_rtc_probe()
220 return PTR_ERR(pdata->ioaddr); in mv_rtc_probe()
222 pdata->clk = devm_clk_get(&pdev->dev, NULL); in mv_rtc_probe()
224 if (!IS_ERR(pdata->clk)) in mv_rtc_probe()
225 clk_prepare_enable(pdata->clk); in mv_rtc_probe()
228 rtc_time = readl(pdata->ioaddr + RTC_TIME_REG_OFFS); in mv_rtc_probe()
238 rtc_time = readl(pdata->ioaddr + RTC_TIME_REG_OFFS); in mv_rtc_probe()
246 pdata->irq = platform_get_irq(pdev, 0); in mv_rtc_probe()
248 platform_set_drvdata(pdev, pdata); in mv_rtc_probe()
250 pdata->rtc = devm_rtc_allocate_device(&pdev->dev); in mv_rtc_probe()
251 if (IS_ERR(pdata->rtc)) { in mv_rtc_probe()
252 ret = PTR_ERR(pdata->rtc); in mv_rtc_probe()
256 if (pdata->irq >= 0) { in mv_rtc_probe()
257 writel(0, pdata->ioaddr + RTC_ALARM_INTERRUPT_MASK_REG_OFFS); in mv_rtc_probe()
258 if (devm_request_irq(&pdev->dev, pdata->irq, mv_rtc_interrupt, in mv_rtc_probe()
260 pdev->name, pdata) < 0) { in mv_rtc_probe()
262 pdata->irq = -1; in mv_rtc_probe()
266 if (pdata->irq >= 0) in mv_rtc_probe()
269 clear_bit(RTC_FEATURE_ALARM, pdata->rtc->features); in mv_rtc_probe()
271 pdata->rtc->ops = &mv_rtc_ops; in mv_rtc_probe()
272 pdata->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; in mv_rtc_probe()
273 pdata->rtc->range_max = RTC_TIMESTAMP_END_2099; in mv_rtc_probe()
275 ret = devm_rtc_register_device(pdata->rtc); in mv_rtc_probe()
279 if (!IS_ERR(pdata->clk)) in mv_rtc_probe()
280 clk_disable_unprepare(pdata->clk); in mv_rtc_probe()
287 struct rtc_plat_data *pdata = platform_get_drvdata(pdev); in mv_rtc_remove() local
289 if (pdata->irq >= 0) in mv_rtc_remove()
292 if (!IS_ERR(pdata->clk)) in mv_rtc_remove()
293 clk_disable_unprepare(pdata->clk); in mv_rtc_remove()