Lines Matching refs:rtc_tm
174 static int ds1511_rtc_set_time(struct device *dev, struct rtc_time *rtc_tm)
182 if (rtc_tm->tm_year < 1900)
183 rtc_tm->tm_year += 1900;
185 if (rtc_tm->tm_year < 1970)
188 yrs = rtc_tm->tm_year % 100;
189 cen = rtc_tm->tm_year / 100;
190 mon = rtc_tm->tm_mon + 1; /* tm_mon starts at zero */
191 day = rtc_tm->tm_mday;
192 dow = rtc_tm->tm_wday & 0x7; /* automatic BCD */
193 hrs = rtc_tm->tm_hour;
194 min = rtc_tm->tm_min;
195 sec = rtc_tm->tm_sec;
200 if (day > rtc_month_days(rtc_tm->tm_mon, rtc_tm->tm_year))
233 static int ds1511_rtc_read_time(struct device *dev, struct rtc_time *rtc_tm)
241 rtc_tm->tm_sec = rtc_read(RTC_SEC) & 0x7f;
242 rtc_tm->tm_min = rtc_read(RTC_MIN) & 0x7f;
243 rtc_tm->tm_hour = rtc_read(RTC_HOUR) & 0x3f;
244 rtc_tm->tm_mday = rtc_read(RTC_DOM) & 0x3f;
245 rtc_tm->tm_wday = rtc_read(RTC_DOW) & 0x7;
246 rtc_tm->tm_mon = rtc_read(RTC_MON) & 0x1f;
247 rtc_tm->tm_year = rtc_read(RTC_YEAR) & 0x7f;
253 rtc_tm->tm_sec = bcd2bin(rtc_tm->tm_sec);
254 rtc_tm->tm_min = bcd2bin(rtc_tm->tm_min);
255 rtc_tm->tm_hour = bcd2bin(rtc_tm->tm_hour);
256 rtc_tm->tm_mday = bcd2bin(rtc_tm->tm_mday);
257 rtc_tm->tm_wday = bcd2bin(rtc_tm->tm_wday);
258 rtc_tm->tm_mon = bcd2bin(rtc_tm->tm_mon);
259 rtc_tm->tm_year = bcd2bin(rtc_tm->tm_year);
266 century += rtc_tm->tm_year;
267 rtc_tm->tm_year = century - 1900;
269 rtc_tm->tm_mon--;