Lines Matching refs:tm

93 static int rp5c01_read_time(struct device *dev, struct rtc_time *tm)  in rp5c01_read_time()  argument
100 tm->tm_sec = rp5c01_read(priv, RP5C01_10_SECOND) * 10 + in rp5c01_read_time()
102 tm->tm_min = rp5c01_read(priv, RP5C01_10_MINUTE) * 10 + in rp5c01_read_time()
104 tm->tm_hour = rp5c01_read(priv, RP5C01_10_HOUR) * 10 + in rp5c01_read_time()
106 tm->tm_mday = rp5c01_read(priv, RP5C01_10_DAY) * 10 + in rp5c01_read_time()
108 tm->tm_wday = rp5c01_read(priv, RP5C01_DAY_OF_WEEK); in rp5c01_read_time()
109 tm->tm_mon = rp5c01_read(priv, RP5C01_10_MONTH) * 10 + in rp5c01_read_time()
111 tm->tm_year = rp5c01_read(priv, RP5C01_10_YEAR) * 10 + in rp5c01_read_time()
113 if (tm->tm_year <= 69) in rp5c01_read_time()
114 tm->tm_year += 100; in rp5c01_read_time()
119 return rtc_valid_tm(tm); in rp5c01_read_time()
122 static int rp5c01_set_time(struct device *dev, struct rtc_time *tm) in rp5c01_set_time() argument
129 rp5c01_write(priv, tm->tm_sec / 10, RP5C01_10_SECOND); in rp5c01_set_time()
130 rp5c01_write(priv, tm->tm_sec % 10, RP5C01_1_SECOND); in rp5c01_set_time()
131 rp5c01_write(priv, tm->tm_min / 10, RP5C01_10_MINUTE); in rp5c01_set_time()
132 rp5c01_write(priv, tm->tm_min % 10, RP5C01_1_MINUTE); in rp5c01_set_time()
133 rp5c01_write(priv, tm->tm_hour / 10, RP5C01_10_HOUR); in rp5c01_set_time()
134 rp5c01_write(priv, tm->tm_hour % 10, RP5C01_1_HOUR); in rp5c01_set_time()
135 rp5c01_write(priv, tm->tm_mday / 10, RP5C01_10_DAY); in rp5c01_set_time()
136 rp5c01_write(priv, tm->tm_mday % 10, RP5C01_1_DAY); in rp5c01_set_time()
137 if (tm->tm_wday != -1) in rp5c01_set_time()
138 rp5c01_write(priv, tm->tm_wday, RP5C01_DAY_OF_WEEK); in rp5c01_set_time()
139 rp5c01_write(priv, (tm->tm_mon + 1) / 10, RP5C01_10_MONTH); in rp5c01_set_time()
140 rp5c01_write(priv, (tm->tm_mon + 1) % 10, RP5C01_1_MONTH); in rp5c01_set_time()
141 if (tm->tm_year >= 100) in rp5c01_set_time()
142 tm->tm_year -= 100; in rp5c01_set_time()
143 rp5c01_write(priv, tm->tm_year / 10, RP5C01_10_YEAR); in rp5c01_set_time()
144 rp5c01_write(priv, tm->tm_year % 10, RP5C01_1_YEAR); in rp5c01_set_time()