Lines Matching refs:rtc

15 #include <linux/rtc.h>
83 struct rtc_device *rtc;
108 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev);
109 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
130 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev);
131 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
154 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev);
155 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
181 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev);
182 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
203 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev);
204 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
206 *alarm = rtc->wkalarm;
215 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev);
216 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
241 rtc->wkalarm = *alarm;
247 struct mpc5121_rtc_data *rtc = dev_get_drvdata((struct device *)dev);
248 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
255 rtc_update_irq(rtc->rtc, 1, RTC_IRQF | RTC_AF);
264 struct mpc5121_rtc_data *rtc = dev_get_drvdata((struct device *)dev);
265 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
271 rtc_update_irq(rtc->rtc, 1, RTC_IRQF | RTC_UF);
281 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev);
282 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
291 rtc->wkalarm.enabled = val;
314 struct mpc5121_rtc_data *rtc;
317 rtc = devm_kzalloc(&op->dev, sizeof(*rtc), GFP_KERNEL);
318 if (!rtc)
321 rtc->regs = of_iomap(op->dev.of_node, 0);
322 if (!rtc->regs) {
329 platform_set_drvdata(op, rtc);
331 rtc->irq = irq_of_parse_and_map(op->dev.of_node, 1);
332 err = request_irq(rtc->irq, mpc5121_rtc_handler, 0,
333 "mpc5121-rtc", &op->dev);
336 __func__, rtc->irq);
340 rtc->irq_periodic = irq_of_parse_and_map(op->dev.of_node, 0);
341 err = request_irq(rtc->irq_periodic, mpc5121_rtc_handler_upd,
345 __func__, rtc->irq_periodic);
349 if (of_device_is_compatible(op->dev.of_node, "fsl,mpc5121-rtc")) {
351 ka = in_be32(&rtc->regs->keep_alive);
354 "mpc5121-rtc: Battery or oscillator failure!\n");
355 out_be32(&rtc->regs->keep_alive, ka);
358 rtc->rtc = devm_rtc_device_register(&op->dev, "mpc5121-rtc",
361 rtc->rtc = devm_rtc_device_register(&op->dev, "mpc5200-rtc",
365 if (IS_ERR(rtc->rtc)) {
366 err = PTR_ERR(rtc->rtc);
369 rtc->rtc->uie_unsupported = 1;
374 free_irq(rtc->irq_periodic, &op->dev);
376 irq_dispose_mapping(rtc->irq_periodic);
377 free_irq(rtc->irq, &op->dev);
379 irq_dispose_mapping(rtc->irq);
380 iounmap(rtc->regs);
387 struct mpc5121_rtc_data *rtc = platform_get_drvdata(op);
388 struct mpc5121_rtc_regs __iomem *regs = rtc->regs;
394 iounmap(rtc->regs);
395 free_irq(rtc->irq, &op->dev);
396 free_irq(rtc->irq_periodic, &op->dev);
397 irq_dispose_mapping(rtc->irq);
398 irq_dispose_mapping(rtc->irq_periodic);
405 { .compatible = "fsl,mpc5121-rtc", },
406 { .compatible = "fsl,mpc5200-rtc", },
413 .name = "mpc5121-rtc",