Lines Matching refs:tim

95 static int mcp795_set_time(struct device *dev, struct rtc_time *tim)  in mcp795_set_time()  argument
106 data[0] = (data[0] & 0x80) | ((tim->tm_sec / 10) << 4) | (tim->tm_sec % 10); in mcp795_set_time()
107 data[1] = (data[1] & 0x80) | ((tim->tm_min / 10) << 4) | (tim->tm_min % 10); in mcp795_set_time()
108 data[2] = ((tim->tm_hour / 10) << 4) | (tim->tm_hour % 10); in mcp795_set_time()
109 data[4] = ((tim->tm_mday / 10) << 4) | ((tim->tm_mday) % 10); in mcp795_set_time()
110 data[5] = (data[5] & 0x10) | (tim->tm_mon / 10) | (tim->tm_mon % 10); in mcp795_set_time()
112 if (tim->tm_year > 100) in mcp795_set_time()
113 tim->tm_year -= 100; in mcp795_set_time()
115 data[6] = ((tim->tm_year / 10) << 4) | (tim->tm_year % 10); in mcp795_set_time()
123 tim->tm_year + 1900, tim->tm_mon, tim->tm_mday, in mcp795_set_time()
124 tim->tm_hour, tim->tm_min, tim->tm_sec); in mcp795_set_time()
129 static int mcp795_read_time(struct device *dev, struct rtc_time *tim) in mcp795_read_time() argument
139 tim->tm_sec = ((data[0] & 0x70) >> 4) * 10 + (data[0] & 0x0f); in mcp795_read_time()
140 tim->tm_min = ((data[1] & 0x70) >> 4) * 10 + (data[1] & 0x0f); in mcp795_read_time()
141 tim->tm_hour = ((data[2] & 0x30) >> 4) * 10 + (data[2] & 0x0f); in mcp795_read_time()
142 tim->tm_mday = ((data[4] & 0x30) >> 4) * 10 + (data[4] & 0x0f); in mcp795_read_time()
143 tim->tm_mon = ((data[5] & 0x10) >> 4) * 10 + (data[5] & 0x0f); in mcp795_read_time()
144 tim->tm_year = ((data[6] & 0xf0) >> 4) * 10 + (data[6] & 0x0f) + 100; /* Assume we are in 20xx */ in mcp795_read_time()
147 tim->tm_year + 1900, tim->tm_mon, tim->tm_mday, in mcp795_read_time()
148 tim->tm_hour, tim->tm_min, tim->tm_sec); in mcp795_read_time()
150 return rtc_valid_tm(tim); in mcp795_read_time()