Lines Matching defs:rtc_tm
185 static int ds1511_rtc_set_time(struct device *dev, struct rtc_time *rtc_tm)
193 if (rtc_tm->tm_year < 1900) {
194 rtc_tm->tm_year += 1900;
197 if (rtc_tm->tm_year < 1970) {
200 yrs = rtc_tm->tm_year % 100;
201 cen = rtc_tm->tm_year / 100;
202 mon = rtc_tm->tm_mon + 1; /* tm_mon starts at zero */
203 day = rtc_tm->tm_mday;
204 dow = rtc_tm->tm_wday & 0x7; /* automatic BCD */
205 hrs = rtc_tm->tm_hour;
206 min = rtc_tm->tm_min;
207 sec = rtc_tm->tm_sec;
213 if (day > rtc_month_days(rtc_tm->tm_mon, rtc_tm->tm_year)) {
248 static int ds1511_rtc_read_time(struct device *dev, struct rtc_time *rtc_tm)
256 rtc_tm->tm_sec = rtc_read(RTC_SEC) & 0x7f;
257 rtc_tm->tm_min = rtc_read(RTC_MIN) & 0x7f;
258 rtc_tm->tm_hour = rtc_read(RTC_HOUR) & 0x3f;
259 rtc_tm->tm_mday = rtc_read(RTC_DOM) & 0x3f;
260 rtc_tm->tm_wday = rtc_read(RTC_DOW) & 0x7;
261 rtc_tm->tm_mon = rtc_read(RTC_MON) & 0x1f;
262 rtc_tm->tm_year = rtc_read(RTC_YEAR) & 0x7f;
268 rtc_tm->tm_sec = bcd2bin(rtc_tm->tm_sec);
269 rtc_tm->tm_min = bcd2bin(rtc_tm->tm_min);
270 rtc_tm->tm_hour = bcd2bin(rtc_tm->tm_hour);
271 rtc_tm->tm_mday = bcd2bin(rtc_tm->tm_mday);
272 rtc_tm->tm_wday = bcd2bin(rtc_tm->tm_wday);
273 rtc_tm->tm_mon = bcd2bin(rtc_tm->tm_mon);
274 rtc_tm->tm_year = bcd2bin(rtc_tm->tm_year);
281 century += rtc_tm->tm_year;
282 rtc_tm->tm_year = century - 1900;
284 rtc_tm->tm_mon--;
286 if (rtc_valid_tm(rtc_tm) < 0) {
288 rtc_time_to_tm(0, rtc_tm);