Lines Matching refs:rtc
175 struct da9063_compatible_rtc *rtc) in da9063_data_to_tm() argument
177 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_data_to_tm()
190 struct da9063_compatible_rtc *rtc) in da9063_tm_to_data() argument
192 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_tm_to_data()
217 struct da9063_compatible_rtc *rtc = dev_get_drvdata(dev); in da9063_rtc_stop_alarm() local
218 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_rtc_stop_alarm()
220 return regmap_update_bits(rtc->regmap, in da9063_rtc_stop_alarm()
228 struct da9063_compatible_rtc *rtc = dev_get_drvdata(dev); in da9063_rtc_start_alarm() local
229 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_rtc_start_alarm()
231 return regmap_update_bits(rtc->regmap, in da9063_rtc_start_alarm()
239 struct da9063_compatible_rtc *rtc = dev_get_drvdata(dev); in da9063_rtc_read_time() local
240 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_rtc_read_time()
246 ret = regmap_bulk_read(rtc->regmap, in da9063_rtc_read_time()
259 da9063_data_to_tm(data, tm, rtc); in da9063_rtc_read_time()
262 rtc_tm_to_time(&rtc->alarm_time, &al_secs); in da9063_rtc_read_time()
265 if (rtc->rtc_sync == true && al_secs - tm_secs == 1) in da9063_rtc_read_time()
266 memcpy(tm, &rtc->alarm_time, sizeof(struct rtc_time)); in da9063_rtc_read_time()
268 rtc->rtc_sync = false; in da9063_rtc_read_time()
275 struct da9063_compatible_rtc *rtc = dev_get_drvdata(dev); in da9063_rtc_set_time() local
276 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_rtc_set_time()
280 da9063_tm_to_data(tm, data, rtc); in da9063_rtc_set_time()
281 ret = regmap_bulk_write(rtc->regmap, in da9063_rtc_set_time()
292 struct da9063_compatible_rtc *rtc = dev_get_drvdata(dev); in da9063_rtc_read_alarm() local
293 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_rtc_read_alarm()
299 ret = regmap_bulk_read(rtc->regmap, in da9063_rtc_read_alarm()
306 da9063_data_to_tm(data, &alrm->time, rtc); in da9063_rtc_read_alarm()
310 ret = regmap_read(rtc->regmap, in da9063_rtc_read_alarm()
326 struct da9063_compatible_rtc *rtc = dev_get_drvdata(dev); in da9063_rtc_set_alarm() local
327 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_rtc_set_alarm()
331 da9063_tm_to_data(&alrm->time, data, rtc); in da9063_rtc_set_alarm()
339 ret = regmap_bulk_write(rtc->regmap, in da9063_rtc_set_alarm()
348 da9063_data_to_tm(data, &rtc->alarm_time, rtc); in da9063_rtc_set_alarm()
372 struct da9063_compatible_rtc *rtc = data; in da9063_alarm_event() local
373 const struct da9063_compatible_rtc_regmap *config = rtc->config; in da9063_alarm_event()
375 regmap_update_bits(rtc->regmap, in da9063_alarm_event()
380 rtc->rtc_sync = true; in da9063_alarm_event()
381 rtc_update_irq(rtc->rtc_dev, 1, RTC_IRQF | RTC_AF); in da9063_alarm_event()
396 struct da9063_compatible_rtc *rtc; in da9063_rtc_probe() local
409 rtc = devm_kzalloc(&pdev->dev, sizeof(*rtc), GFP_KERNEL); in da9063_rtc_probe()
410 if (!rtc) in da9063_rtc_probe()
413 rtc->config = match->data; in da9063_rtc_probe()
418 rtc->config = &da9063_ad_regs; in da9063_rtc_probe()
421 rtc->regmap = dev_get_regmap(pdev->dev.parent, NULL); in da9063_rtc_probe()
422 if (!rtc->regmap) { in da9063_rtc_probe()
427 config = rtc->config; in da9063_rtc_probe()
428 ret = regmap_update_bits(rtc->regmap, in da9063_rtc_probe()
437 ret = regmap_update_bits(rtc->regmap, in da9063_rtc_probe()
446 ret = regmap_update_bits(rtc->regmap, in da9063_rtc_probe()
455 ret = regmap_update_bits(rtc->regmap, in da9063_rtc_probe()
464 ret = regmap_update_bits(rtc->regmap, in da9063_rtc_probe()
474 ret = regmap_bulk_read(rtc->regmap, in da9063_rtc_probe()
484 platform_set_drvdata(pdev, rtc); in da9063_rtc_probe()
486 rtc->rtc_dev = devm_rtc_device_register(&pdev->dev, DA9063_DRVNAME_RTC, in da9063_rtc_probe()
488 if (IS_ERR(rtc->rtc_dev)) in da9063_rtc_probe()
489 return PTR_ERR(rtc->rtc_dev); in da9063_rtc_probe()
491 da9063_data_to_tm(data, &rtc->alarm_time, rtc); in da9063_rtc_probe()
492 rtc->rtc_sync = false; in da9063_rtc_probe()
499 rtc->rtc_dev->uie_unsupported = 1; in da9063_rtc_probe()
505 "ALARM", rtc); in da9063_rtc_probe()