Lines Matching refs:cmos
213 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_read_alarm() local
216 if (!is_valid_irq(cmos->irq)) in cmos_read_alarm()
231 if (cmos->day_alrm) { in cmos_read_alarm()
233 t->time.tm_mday = CMOS_READ(cmos->day_alrm) & 0x3f; in cmos_read_alarm()
237 if (cmos->mon_alrm) { in cmos_read_alarm()
238 t->time.tm_mon = CMOS_READ(cmos->mon_alrm); in cmos_read_alarm()
261 if (cmos->day_alrm) { in cmos_read_alarm()
267 if (cmos->mon_alrm) { in cmos_read_alarm()
283 static void cmos_checkintr(struct cmos_rtc *cmos, unsigned char rtc_control) in cmos_checkintr() argument
297 rtc_update_irq(cmos->rtc, 1, rtc_intr); in cmos_checkintr()
300 static void cmos_irq_enable(struct cmos_rtc *cmos, unsigned char mask) in cmos_irq_enable() argument
308 cmos_checkintr(cmos, rtc_control); in cmos_irq_enable()
314 cmos_checkintr(cmos, rtc_control); in cmos_irq_enable()
317 static void cmos_irq_disable(struct cmos_rtc *cmos, unsigned char mask) in cmos_irq_disable() argument
326 cmos_checkintr(cmos, rtc_control); in cmos_irq_disable()
331 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_set_alarm() local
334 if (!is_valid_irq(cmos->irq)) in cmos_set_alarm()
356 cmos_irq_disable(cmos, RTC_AIE); in cmos_set_alarm()
364 if (cmos->day_alrm) { in cmos_set_alarm()
365 CMOS_WRITE(mday, cmos->day_alrm); in cmos_set_alarm()
366 if (cmos->mon_alrm) in cmos_set_alarm()
367 CMOS_WRITE(mon, cmos->mon_alrm); in cmos_set_alarm()
376 cmos_irq_enable(cmos, RTC_AIE); in cmos_set_alarm()
429 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_alarm_irq_enable() local
432 if (!is_valid_irq(cmos->irq)) in cmos_alarm_irq_enable()
441 cmos_irq_enable(cmos, RTC_AIE); in cmos_alarm_irq_enable()
443 cmos_irq_disable(cmos, RTC_AIE); in cmos_alarm_irq_enable()
453 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_procfs() local
479 cmos->rtc->irq_freq, in cmos_procfs()
542 struct cmos_rtc *cmos; in cmos_nvram_write() local
545 cmos = dev_get_drvdata(container_of(kobj, struct device, kobj)); in cmos_nvram_write()
562 if (off == cmos->day_alrm in cmos_nvram_write()
563 || off == cmos->mon_alrm in cmos_nvram_write()
564 || off == cmos->century) in cmos_nvram_write()
838 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_do_remove() local
841 cmos_do_shutdown(cmos->irq); in cmos_do_remove()
845 if (is_valid_irq(cmos->irq)) { in cmos_do_remove()
846 free_irq(cmos->irq, cmos->rtc); in cmos_do_remove()
850 rtc_device_unregister(cmos->rtc); in cmos_do_remove()
851 cmos->rtc = NULL; in cmos_do_remove()
853 ports = cmos->iomem; in cmos_do_remove()
858 cmos->iomem = NULL; in cmos_do_remove()
860 cmos->dev = NULL; in cmos_do_remove()
867 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_suspend() local
872 cmos->suspend_ctrl = tmp = CMOS_READ(RTC_CONTROL); in cmos_suspend()
884 cmos_checkintr(cmos, tmp); in cmos_suspend()
889 cmos->enabled_wake = 1; in cmos_suspend()
890 if (cmos->wake_on) in cmos_suspend()
891 cmos->wake_on(dev); in cmos_suspend()
893 enable_irq_wake(cmos->irq); in cmos_suspend()
918 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_resume() local
921 if (cmos->enabled_wake) { in cmos_resume()
922 if (cmos->wake_off) in cmos_resume()
923 cmos->wake_off(dev); in cmos_resume()
925 disable_irq_wake(cmos->irq); in cmos_resume()
926 cmos->enabled_wake = 0; in cmos_resume()
930 tmp = cmos->suspend_ctrl; in cmos_resume()
931 cmos->suspend_ctrl = 0; in cmos_resume()
951 rtc_update_irq(cmos->rtc, 1, mask); in cmos_resume()
1095 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_pnp_shutdown() local
1100 cmos_do_shutdown(cmos->irq); in cmos_pnp_shutdown()
1201 struct cmos_rtc *cmos = dev_get_drvdata(dev); in cmos_platform_shutdown() local
1206 cmos_do_shutdown(cmos->irq); in cmos_platform_shutdown()