• Home
  • Raw
  • Download

Lines Matching refs:rtc

81 	struct rtc_device *rtc;  member
106 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev); in mpc5121_rtc_read_time() local
107 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5121_rtc_read_time()
128 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev); in mpc5121_rtc_set_time() local
129 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5121_rtc_set_time()
152 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev); in mpc5200_rtc_read_time() local
153 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5200_rtc_read_time()
179 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev); in mpc5200_rtc_set_time() local
180 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5200_rtc_set_time()
201 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev); in mpc5121_rtc_read_alarm() local
202 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5121_rtc_read_alarm()
204 *alarm = rtc->wkalarm; in mpc5121_rtc_read_alarm()
213 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev); in mpc5121_rtc_set_alarm() local
214 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5121_rtc_set_alarm()
239 rtc->wkalarm = *alarm; in mpc5121_rtc_set_alarm()
245 struct mpc5121_rtc_data *rtc = dev_get_drvdata((struct device *)dev); in mpc5121_rtc_handler() local
246 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5121_rtc_handler()
253 rtc_update_irq(rtc->rtc, 1, RTC_IRQF | RTC_AF); in mpc5121_rtc_handler()
262 struct mpc5121_rtc_data *rtc = dev_get_drvdata((struct device *)dev); in mpc5121_rtc_handler_upd() local
263 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5121_rtc_handler_upd()
269 rtc_update_irq(rtc->rtc, 1, RTC_IRQF | RTC_UF); in mpc5121_rtc_handler_upd()
279 struct mpc5121_rtc_data *rtc = dev_get_drvdata(dev); in mpc5121_rtc_alarm_irq_enable() local
280 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5121_rtc_alarm_irq_enable()
289 rtc->wkalarm.enabled = val; in mpc5121_rtc_alarm_irq_enable()
312 struct mpc5121_rtc_data *rtc; in mpc5121_rtc_probe() local
315 rtc = kzalloc(sizeof(*rtc), GFP_KERNEL); in mpc5121_rtc_probe()
316 if (!rtc) in mpc5121_rtc_probe()
319 rtc->regs = of_iomap(op->dev.of_node, 0); in mpc5121_rtc_probe()
320 if (!rtc->regs) { in mpc5121_rtc_probe()
328 dev_set_drvdata(&op->dev, rtc); in mpc5121_rtc_probe()
330 rtc->irq = irq_of_parse_and_map(op->dev.of_node, 1); in mpc5121_rtc_probe()
331 err = request_irq(rtc->irq, mpc5121_rtc_handler, 0, in mpc5121_rtc_probe()
335 __func__, rtc->irq); in mpc5121_rtc_probe()
339 rtc->irq_periodic = irq_of_parse_and_map(op->dev.of_node, 0); in mpc5121_rtc_probe()
340 err = request_irq(rtc->irq_periodic, mpc5121_rtc_handler_upd, in mpc5121_rtc_probe()
344 __func__, rtc->irq_periodic); in mpc5121_rtc_probe()
350 ka = in_be32(&rtc->regs->keep_alive); in mpc5121_rtc_probe()
354 out_be32(&rtc->regs->keep_alive, ka); in mpc5121_rtc_probe()
357 rtc->rtc = rtc_device_register("mpc5121-rtc", &op->dev, in mpc5121_rtc_probe()
360 rtc->rtc = rtc_device_register("mpc5200-rtc", &op->dev, in mpc5121_rtc_probe()
364 if (IS_ERR(rtc->rtc)) { in mpc5121_rtc_probe()
365 err = PTR_ERR(rtc->rtc); in mpc5121_rtc_probe()
368 rtc->rtc->uie_unsupported = 1; in mpc5121_rtc_probe()
373 free_irq(rtc->irq_periodic, &op->dev); in mpc5121_rtc_probe()
375 irq_dispose_mapping(rtc->irq_periodic); in mpc5121_rtc_probe()
376 free_irq(rtc->irq, &op->dev); in mpc5121_rtc_probe()
378 irq_dispose_mapping(rtc->irq); in mpc5121_rtc_probe()
379 iounmap(rtc->regs); in mpc5121_rtc_probe()
381 kfree(rtc); in mpc5121_rtc_probe()
388 struct mpc5121_rtc_data *rtc = dev_get_drvdata(&op->dev); in mpc5121_rtc_remove() local
389 struct mpc5121_rtc_regs __iomem *regs = rtc->regs; in mpc5121_rtc_remove()
395 rtc_device_unregister(rtc->rtc); in mpc5121_rtc_remove()
396 iounmap(rtc->regs); in mpc5121_rtc_remove()
397 free_irq(rtc->irq, &op->dev); in mpc5121_rtc_remove()
398 free_irq(rtc->irq_periodic, &op->dev); in mpc5121_rtc_remove()
399 irq_dispose_mapping(rtc->irq); in mpc5121_rtc_remove()
400 irq_dispose_mapping(rtc->irq_periodic); in mpc5121_rtc_remove()
402 kfree(rtc); in mpc5121_rtc_remove()