Lines Matching full:tm
78 static int ds1216_rtc_read_time(struct device *dev, struct rtc_time *tm) in ds1216_rtc_read_time() argument
86 tm->tm_sec = bcd2bin(regs.sec); in ds1216_rtc_read_time()
87 tm->tm_min = bcd2bin(regs.min); in ds1216_rtc_read_time()
90 tm->tm_hour = bcd2bin(regs.hour & 0x1f); in ds1216_rtc_read_time()
92 tm->tm_hour += 12; in ds1216_rtc_read_time()
94 tm->tm_hour = bcd2bin(regs.hour & 0x3f); in ds1216_rtc_read_time()
95 tm->tm_wday = (regs.wday & 7) - 1; in ds1216_rtc_read_time()
96 tm->tm_mday = bcd2bin(regs.mday & 0x3f); in ds1216_rtc_read_time()
97 tm->tm_mon = bcd2bin(regs.month & 0x1f); in ds1216_rtc_read_time()
98 tm->tm_year = bcd2bin(regs.year); in ds1216_rtc_read_time()
99 if (tm->tm_year < 70) in ds1216_rtc_read_time()
100 tm->tm_year += 100; in ds1216_rtc_read_time()
105 static int ds1216_rtc_set_time(struct device *dev, struct rtc_time *tm) in ds1216_rtc_set_time() argument
114 regs.sec = bin2bcd(tm->tm_sec); in ds1216_rtc_set_time()
115 regs.min = bin2bcd(tm->tm_min); in ds1216_rtc_set_time()
117 if (regs.hour && tm->tm_hour > 12) { in ds1216_rtc_set_time()
119 tm->tm_hour -= 12; in ds1216_rtc_set_time()
121 regs.hour |= bin2bcd(tm->tm_hour); in ds1216_rtc_set_time()
123 regs.wday |= tm->tm_wday; in ds1216_rtc_set_time()
124 regs.mday = bin2bcd(tm->tm_mday); in ds1216_rtc_set_time()
125 regs.month = bin2bcd(tm->tm_mon); in ds1216_rtc_set_time()
126 regs.year = bin2bcd(tm->tm_year % 100); in ds1216_rtc_set_time()