Lines Matching defs:cmos

10  * The original "cmos clock" chip was an MC146818 chip, now obsolete.
253 struct cmos_rtc *cmos;
269 if (p->cmos->day_alrm) {
271 time->tm_mday = CMOS_READ(p->cmos->day_alrm) & 0x3f;
275 if (p->cmos->mon_alrm) {
276 time->tm_mon = CMOS_READ(p->cmos->mon_alrm);
287 struct cmos_rtc *cmos = dev_get_drvdata(dev);
289 .cmos = cmos,
294 if (!is_valid_irq(cmos->irq))
327 if (cmos->day_alrm) {
333 if (cmos->mon_alrm) {
348 static void cmos_checkintr(struct cmos_rtc *cmos, unsigned char rtc_control)
362 rtc_update_irq(cmos->rtc, 1, rtc_intr);
365 static void cmos_irq_enable(struct cmos_rtc *cmos, unsigned char mask)
373 cmos_checkintr(cmos, rtc_control);
381 if (cmos->wake_on)
382 cmos->wake_on(cmos->dev);
385 cmos_checkintr(cmos, rtc_control);
388 static void cmos_irq_disable(struct cmos_rtc *cmos, unsigned char mask)
399 if (cmos->wake_off)
400 cmos->wake_off(cmos->dev);
403 cmos_checkintr(cmos, rtc_control);
408 struct cmos_rtc *cmos = dev_get_drvdata(dev);
413 if (!cmos->day_alrm) {
425 } else if (!cmos->mon_alrm) {
474 struct cmos_rtc *cmos;
489 cmos_irq_disable(p->cmos, RTC_AIE);
497 if (p->cmos->day_alrm) {
498 CMOS_WRITE(p->mday, p->cmos->day_alrm);
499 if (p->cmos->mon_alrm)
500 CMOS_WRITE(p->mon, p->cmos->mon_alrm);
513 cmos_irq_enable(p->cmos, RTC_AIE);
518 struct cmos_rtc *cmos = dev_get_drvdata(dev);
520 .cmos = cmos,
527 if (!is_valid_irq(cmos->irq))
562 cmos->alarm_expires = rtc_tm_to_time64(&t->time);
569 struct cmos_rtc *cmos = dev_get_drvdata(dev);
575 cmos_irq_enable(cmos, RTC_AIE);
577 cmos_irq_disable(cmos, RTC_AIE);
587 struct cmos_rtc *cmos = dev_get_drvdata(dev);
613 cmos->rtc->irq_freq,
666 struct cmos_rtc *cmos = priv;
679 if (off == cmos->day_alrm
680 || off == cmos->mon_alrm
681 || off == cmos->century)
754 struct cmos_rtc *cmos = dev_get_drvdata(dev);
766 cmos_interrupt(0, (void *)cmos->rtc);
776 rtc_update_irq(cmos->rtc, 1, rtc_intr);
876 struct cmos_rtc *cmos = dev_get_drvdata(dev);
891 rtc_update_irq(cmos->rtc, 1, mask);
1159 struct cmos_rtc *cmos = dev_get_drvdata(dev);
1162 cmos_do_shutdown(cmos->irq);
1164 if (is_valid_irq(cmos->irq)) {
1165 free_irq(cmos->irq, cmos->rtc);
1173 cmos->rtc = NULL;
1175 ports = cmos->iomem;
1180 cmos->iomem = NULL;
1182 cmos->dev = NULL;
1187 struct cmos_rtc *cmos = dev_get_drvdata(dev);
1193 if (!cmos->alarm_expires)
1216 if (cmos->alarm_expires == t_now + 1) {
1223 } else if (cmos->alarm_expires > t_now + 1) {
1232 struct cmos_rtc *cmos = dev_get_drvdata(dev);
1237 cmos->suspend_ctrl = tmp = CMOS_READ(RTC_CONTROL);
1249 cmos_checkintr(cmos, tmp);
1254 cmos->enabled_wake = 1;
1255 if (cmos->wake_on)
1256 cmos->wake_on(dev);
1258 enable_irq_wake(cmos->irq);
1261 memset(&cmos->saved_wkalrm, 0, sizeof(struct rtc_wkalrm));
1262 cmos_read_alarm(dev, &cmos->saved_wkalrm);
1287 struct cmos_rtc *cmos = dev_get_drvdata(dev);
1295 if (!(cmos->suspend_ctrl & RTC_AIE))
1305 if (t_now >= cmos->alarm_expires && cmos_use_acpi_alarm()) {
1307 cmos_interrupt(0, (void *)cmos->rtc);
1315 t_saved_expires = rtc_tm_to_time64(&cmos->saved_wkalrm.time);
1317 cmos->saved_wkalrm.enabled != current_alarm.enabled) {
1318 cmos_set_alarm(dev, &cmos->saved_wkalrm);
1324 struct cmos_rtc *cmos = dev_get_drvdata(dev);
1327 if (cmos->enabled_wake && !cmos_use_acpi_alarm()) {
1328 if (cmos->wake_off)
1329 cmos->wake_off(dev);
1331 disable_irq_wake(cmos->irq);
1332 cmos->enabled_wake = 0;
1339 tmp = cmos->suspend_ctrl;
1340 cmos->suspend_ctrl = 0;
1361 rtc_update_irq(cmos->rtc, 1, mask);
1421 struct cmos_rtc *cmos = dev_get_drvdata(dev);
1430 cmos_do_shutdown(cmos->irq);
1517 struct cmos_rtc *cmos = dev_get_drvdata(dev);
1526 cmos_do_shutdown(cmos->irq);