Lines Matching refs:alrm
188 static int rk808_rtc_readalarm(struct device *dev, struct rtc_wkalrm *alrm)
203 alrm->time.tm_sec = bcd2bin(alrm_data[0] & SECONDS_REG_MSK);
204 alrm->time.tm_min = bcd2bin(alrm_data[1] & MINUTES_REG_MAK);
205 alrm->time.tm_hour = bcd2bin(alrm_data[2] & HOURS_REG_MSK);
206 alrm->time.tm_mday = bcd2bin(alrm_data[3] & DAYS_REG_MSK);
207 alrm->time.tm_mon = (bcd2bin(alrm_data[4] & MONTHS_REG_MSK)) - 1;
208 alrm->time.tm_year = (bcd2bin(alrm_data[5] & YEARS_REG_MSK)) + 100;
209 rockchip_to_gregorian(&alrm->time);
217 dev_dbg(dev, "alrm read RTC date/time %ptRd(%d) %ptRt\n",
218 &alrm->time, alrm->time.tm_wday, &alrm->time);
220 alrm->enabled = (int_reg & BIT_RTC_INTERRUPTS_REG_IT_ALARM_M) ? 1 : 0;
246 static int rk808_rtc_setalarm(struct device *dev, struct rtc_wkalrm *alrm)
257 dev_dbg(dev, "alrm set RTC date/time %ptRd(%d) %ptRt\n",
258 &alrm->time, alrm->time.tm_wday, &alrm->time);
260 gregorian_to_rockchip(&alrm->time);
261 alrm_data[0] = bin2bcd(alrm->time.tm_sec);
262 alrm_data[1] = bin2bcd(alrm->time.tm_min);
263 alrm_data[2] = bin2bcd(alrm->time.tm_hour);
264 alrm_data[3] = bin2bcd(alrm->time.tm_mday);
265 alrm_data[4] = bin2bcd(alrm->time.tm_mon + 1);
266 alrm_data[5] = bin2bcd(alrm->time.tm_year - 100);
275 if (alrm->enabled) {