Lines Matching refs:rtc

24 	struct rtc_device *rtc;  member
29 static int da9055_rtc_enable_alarm(struct da9055_rtc *rtc, bool enable) in da9055_rtc_enable_alarm() argument
33 ret = da9055_reg_update(rtc->da9055, DA9055_REG_ALARM_Y, in da9055_rtc_enable_alarm()
37 dev_err(rtc->da9055->dev, "Failed to enable ALM: %d\n", in da9055_rtc_enable_alarm()
39 rtc->alarm_enable = 1; in da9055_rtc_enable_alarm()
41 ret = da9055_reg_update(rtc->da9055, DA9055_REG_ALARM_Y, in da9055_rtc_enable_alarm()
44 dev_err(rtc->da9055->dev, in da9055_rtc_enable_alarm()
46 rtc->alarm_enable = 0; in da9055_rtc_enable_alarm()
53 struct da9055_rtc *rtc = data; in da9055_rtc_alm_irq() local
55 da9055_rtc_enable_alarm(rtc, 0); in da9055_rtc_alm_irq()
56 rtc_update_irq(rtc->rtc, 1, RTC_IRQF | RTC_AF); in da9055_rtc_alm_irq()
132 struct da9055_rtc *rtc = dev_get_drvdata(dev); in da9055_rtc_read_time() local
136 ret = da9055_reg_read(rtc->da9055, DA9055_REG_COUNT_S); in da9055_rtc_read_time()
147 ret = da9055_group_read(rtc->da9055, DA9055_REG_COUNT_S, 6, v); in da9055_rtc_read_time()
149 dev_err(rtc->da9055->dev, "Failed to read RTC time : %d\n", in da9055_rtc_read_time()
166 struct da9055_rtc *rtc; in da9055_rtc_set_time() local
169 rtc = dev_get_drvdata(dev); in da9055_rtc_set_time()
178 return da9055_group_write(rtc->da9055, DA9055_REG_COUNT_S, 6, v); in da9055_rtc_set_time()
185 struct da9055_rtc *rtc = dev_get_drvdata(dev); in da9055_rtc_read_alarm() local
187 ret = da9055_read_alarm(rtc->da9055, tm); in da9055_rtc_read_alarm()
192 alrm->enabled = da9055_rtc_get_alarm_status(rtc->da9055); in da9055_rtc_read_alarm()
201 struct da9055_rtc *rtc = dev_get_drvdata(dev); in da9055_rtc_set_alarm() local
203 ret = da9055_rtc_enable_alarm(rtc, 0); in da9055_rtc_set_alarm()
207 ret = da9055_set_alarm(rtc->da9055, tm); in da9055_rtc_set_alarm()
211 ret = da9055_rtc_enable_alarm(rtc, 1); in da9055_rtc_set_alarm()
218 struct da9055_rtc *rtc = dev_get_drvdata(dev); in da9055_rtc_alarm_irq_enable() local
220 return da9055_rtc_enable_alarm(rtc, enabled); in da9055_rtc_alarm_irq_enable()
273 struct da9055_rtc *rtc; in da9055_rtc_probe() local
277 rtc = devm_kzalloc(&pdev->dev, sizeof(struct da9055_rtc), GFP_KERNEL); in da9055_rtc_probe()
278 if (!rtc) in da9055_rtc_probe()
281 rtc->da9055 = dev_get_drvdata(pdev->dev.parent); in da9055_rtc_probe()
282 pdata = dev_get_platdata(rtc->da9055->dev); in da9055_rtc_probe()
283 platform_set_drvdata(pdev, rtc); in da9055_rtc_probe()
285 ret = da9055_rtc_device_init(rtc->da9055, pdata); in da9055_rtc_probe()
289 ret = da9055_reg_read(rtc->da9055, DA9055_REG_ALARM_Y); in da9055_rtc_probe()
294 rtc->alarm_enable = 1; in da9055_rtc_probe()
298 rtc->rtc = devm_rtc_device_register(&pdev->dev, pdev->name, in da9055_rtc_probe()
300 if (IS_ERR(rtc->rtc)) { in da9055_rtc_probe()
301 ret = PTR_ERR(rtc->rtc); in da9055_rtc_probe()
312 "ALM", rtc); in da9055_rtc_probe()
314 dev_err(rtc->da9055->dev, "irq registration failed: %d\n", ret); in da9055_rtc_probe()
326 struct da9055_rtc *rtc = dev_get_drvdata(&pdev->dev); in da9055_rtc_suspend() local
331 ret = da9055_rtc_enable_alarm(rtc, 0); in da9055_rtc_suspend()
345 struct da9055_rtc *rtc = dev_get_drvdata(&pdev->dev); in da9055_rtc_resume() local
349 if (rtc->alarm_enable) { in da9055_rtc_resume()
350 ret = da9055_rtc_enable_alarm(rtc, 1); in da9055_rtc_resume()
364 struct da9055_rtc *rtc = dev_get_drvdata(&pdev->dev); in da9055_rtc_freeze() local
367 ret = da9055_rtc_enable_alarm(rtc, 0); in da9055_rtc_freeze()