Lines Matching refs:cros_ec_rtc
28 struct cros_ec_rtc { struct
74 struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(dev); in cros_ec_rtc_read_time() local
75 struct cros_ec_device *cros_ec = cros_ec_rtc->cros_ec; in cros_ec_rtc_read_time()
93 struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(dev); in cros_ec_rtc_set_time() local
94 struct cros_ec_device *cros_ec = cros_ec_rtc->cros_ec; in cros_ec_rtc_set_time()
110 struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(dev); in cros_ec_rtc_read_alarm() local
111 struct cros_ec_device *cros_ec = cros_ec_rtc->cros_ec; in cros_ec_rtc_read_alarm()
140 struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(dev); in cros_ec_rtc_set_alarm() local
141 struct cros_ec_device *cros_ec = cros_ec_rtc->cros_ec; in cros_ec_rtc_set_alarm()
169 cros_ec_rtc->saved_alarm = (u32)alarm_time; in cros_ec_rtc_set_alarm()
197 struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(dev); in cros_ec_rtc_alarm_irq_enable() local
198 struct cros_ec_device *cros_ec = cros_ec_rtc->cros_ec; in cros_ec_rtc_alarm_irq_enable()
210 if (cros_ec_rtc->saved_alarm < current_time) in cros_ec_rtc_alarm_irq_enable()
213 alarm_offset = cros_ec_rtc->saved_alarm - current_time; in cros_ec_rtc_alarm_irq_enable()
238 cros_ec_rtc->saved_alarm = EC_RTC_ALARM_CLEAR; in cros_ec_rtc_alarm_irq_enable()
240 cros_ec_rtc->saved_alarm = alarm_value; in cros_ec_rtc_alarm_irq_enable()
258 struct cros_ec_rtc *cros_ec_rtc; in cros_ec_rtc_event() local
263 cros_ec_rtc = container_of(nb, struct cros_ec_rtc, notifier); in cros_ec_rtc_event()
264 rtc = cros_ec_rtc->rtc; in cros_ec_rtc_event()
265 cros_ec = cros_ec_rtc->cros_ec; in cros_ec_rtc_event()
288 struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(&pdev->dev); in cros_ec_rtc_suspend() local
291 return enable_irq_wake(cros_ec_rtc->cros_ec->irq); in cros_ec_rtc_suspend()
299 struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(&pdev->dev); in cros_ec_rtc_resume() local
302 return disable_irq_wake(cros_ec_rtc->cros_ec->irq); in cros_ec_rtc_resume()
315 struct cros_ec_rtc *cros_ec_rtc; in cros_ec_rtc_probe() local
319 cros_ec_rtc = devm_kzalloc(&pdev->dev, sizeof(*cros_ec_rtc), in cros_ec_rtc_probe()
321 if (!cros_ec_rtc) in cros_ec_rtc_probe()
324 platform_set_drvdata(pdev, cros_ec_rtc); in cros_ec_rtc_probe()
325 cros_ec_rtc->cros_ec = cros_ec; in cros_ec_rtc_probe()
340 cros_ec_rtc->rtc = devm_rtc_allocate_device(&pdev->dev); in cros_ec_rtc_probe()
341 if (IS_ERR(cros_ec_rtc->rtc)) in cros_ec_rtc_probe()
342 return PTR_ERR(cros_ec_rtc->rtc); in cros_ec_rtc_probe()
344 cros_ec_rtc->rtc->ops = &cros_ec_rtc_ops; in cros_ec_rtc_probe()
345 cros_ec_rtc->rtc->range_max = U32_MAX; in cros_ec_rtc_probe()
356 cros_ec_rtc->rtc->alarm_offset_max = SECS_PER_DAY - 1; in cros_ec_rtc_probe()
361 ret = devm_rtc_register_device(cros_ec_rtc->rtc); in cros_ec_rtc_probe()
366 cros_ec_rtc->notifier.notifier_call = cros_ec_rtc_event; in cros_ec_rtc_probe()
368 &cros_ec_rtc->notifier); in cros_ec_rtc_probe()
379 struct cros_ec_rtc *cros_ec_rtc = platform_get_drvdata(pdev); in cros_ec_rtc_remove() local
384 &cros_ec_rtc->cros_ec->event_notifier, in cros_ec_rtc_remove()
385 &cros_ec_rtc->notifier); in cros_ec_rtc_remove()