Lines Matching refs:alrm
224 static int rc5t619_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm)
255 alrm->time.tm_sec = bcd2bin(buff[0]);
256 alrm->time.tm_min = bcd2bin(buff[1]);
259 alrm->time.tm_hour = bcd2bin(buff[2]);
261 alrm->time.tm_hour = rtc5t619_12hour_bcd2bin(buff[2]);
263 alrm->time.tm_mday = bcd2bin(buff[3]);
264 alrm->time.tm_mon = bcd2bin(buff[4]) - 1;
265 alrm->time.tm_year = bcd2bin(buff[5]) + 100 * cent_flag;
266 alrm->enabled = !!(ctrl1 & CTRL1_ALARM_ENABLED);
267 dev_dbg(dev, "read alarm: %ptR\n", &alrm->time);
272 static int rc5t619_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm)
291 if (alrm->enabled == 0)
294 if (alrm->time.tm_year >= 100)
299 alrm->time.tm_mon += 1;
300 buff[0] = bin2bcd(alrm->time.tm_sec);
301 buff[1] = bin2bcd(alrm->time.tm_min);
304 buff[2] = bin2bcd(alrm->time.tm_hour);
306 buff[2] = rtc5t619_12hour_bin2bcd(alrm->time.tm_hour);
308 buff[3] = bin2bcd(alrm->time.tm_mday);
309 buff[4] = bin2bcd(alrm->time.tm_mon);
310 buff[5] = bin2bcd(alrm->time.tm_year - 100 * cent_flag);
318 return rc5t619_rtc_alarm_enable(dev, alrm->enabled);