rx8025.c (8d79953d03e6c5b24215609997dafe4daa623cd6) | rx8025.c (1b769881750030f10743808b9d6013e11f559350) |
---|---|
1/* 2 * (C) Copyright 2007 3 * Matthias Fuchs, esd gmbh, matthias.fuchs@esd-electronics.com. 4 * 5 * See file CREDITS for list of people who contributed to this 6 * project. 7 * 8 * This program is free software; you can redistribute it and/or --- 128 unchanged lines hidden (view full) --- 137 tmp->tm_yday = 0; 138 tmp->tm_isdst= 0; 139 140 DEBUGR ("Get DATE: %4d-%02d-%02d (wday=%d) TIME: %2d:%02d:%02d\n", 141 tmp->tm_year, tmp->tm_mon, tmp->tm_mday, tmp->tm_wday, 142 tmp->tm_hour, tmp->tm_min, tmp->tm_sec); 143} 144 | 1/* 2 * (C) Copyright 2007 3 * Matthias Fuchs, esd gmbh, matthias.fuchs@esd-electronics.com. 4 * 5 * See file CREDITS for list of people who contributed to this 6 * project. 7 * 8 * This program is free software; you can redistribute it and/or --- 128 unchanged lines hidden (view full) --- 137 tmp->tm_yday = 0; 138 tmp->tm_isdst= 0; 139 140 DEBUGR ("Get DATE: %4d-%02d-%02d (wday=%d) TIME: %2d:%02d:%02d\n", 141 tmp->tm_year, tmp->tm_mon, tmp->tm_mday, tmp->tm_wday, 142 tmp->tm_hour, tmp->tm_min, tmp->tm_sec); 143} 144 |
145 | |
146/* 147 * Set the RTC 148 */ 149void rtc_set (struct rtc_time *tmp) 150{ 151 DEBUGR ("Set DATE: %4d-%02d-%02d (wday=%d) TIME: %2d:%02d:%02d\n", 152 tmp->tm_year, tmp->tm_mon, tmp->tm_mday, tmp->tm_wday, 153 tmp->tm_hour, tmp->tm_min, tmp->tm_sec); --- 7 unchanged lines hidden (view full) --- 161 rtc_write (RTC_DATE_REG_ADDR, bin2bcd (tmp->tm_mday)); 162 rtc_write (RTC_HR_REG_ADDR, bin2bcd (tmp->tm_hour)); 163 rtc_write (RTC_MIN_REG_ADDR, bin2bcd (tmp->tm_min)); 164 rtc_write (RTC_SEC_REG_ADDR, bin2bcd (tmp->tm_sec)); 165 166 rtc_write (RTC_CTL1_REG_ADDR, RTC_CTL1_BIT_2412); 167} 168 | 145/* 146 * Set the RTC 147 */ 148void rtc_set (struct rtc_time *tmp) 149{ 150 DEBUGR ("Set DATE: %4d-%02d-%02d (wday=%d) TIME: %2d:%02d:%02d\n", 151 tmp->tm_year, tmp->tm_mon, tmp->tm_mday, tmp->tm_wday, 152 tmp->tm_hour, tmp->tm_min, tmp->tm_sec); --- 7 unchanged lines hidden (view full) --- 160 rtc_write (RTC_DATE_REG_ADDR, bin2bcd (tmp->tm_mday)); 161 rtc_write (RTC_HR_REG_ADDR, bin2bcd (tmp->tm_hour)); 162 rtc_write (RTC_MIN_REG_ADDR, bin2bcd (tmp->tm_min)); 163 rtc_write (RTC_SEC_REG_ADDR, bin2bcd (tmp->tm_sec)); 164 165 rtc_write (RTC_CTL1_REG_ADDR, RTC_CTL1_BIT_2412); 166} 167 |
169 | |
170/* 171 * Reset the RTC. We setting the date back to 1970-01-01. 172 */ 173void rtc_reset (void) 174{ 175 struct rtc_time tmp; 176 uchar buf[16]; 177 uchar ctl2; --- 17 unchanged lines hidden (view full) --- 195 196 printf ( "RTC: %4d-%02d-%02d %2d:%02d:%02d UTC\n", 197 tmp.tm_year, tmp.tm_mon, tmp.tm_mday, 198 tmp.tm_hour, tmp.tm_min, tmp.tm_sec); 199 200 return; 201} 202 | 168/* 169 * Reset the RTC. We setting the date back to 1970-01-01. 170 */ 171void rtc_reset (void) 172{ 173 struct rtc_time tmp; 174 uchar buf[16]; 175 uchar ctl2; --- 17 unchanged lines hidden (view full) --- 193 194 printf ( "RTC: %4d-%02d-%02d %2d:%02d:%02d UTC\n", 195 tmp.tm_year, tmp.tm_mon, tmp.tm_mday, 196 tmp.tm_hour, tmp.tm_min, tmp.tm_sec); 197 198 return; 199} 200 |
203 | |
204/* 205 * Helper functions 206 */ 207static void rtc_write (uchar reg, uchar val) 208{ 209 uchar buf[2]; 210 buf[0] = reg << 4; 211 buf[1] = val; --- 7 unchanged lines hidden (view full) --- 219 return ((((n >> 4) & 0x0F) * 10) + (n & 0x0F)); 220} 221 222static unsigned char bin2bcd (unsigned int n) 223{ 224 return (((n / 10) << 4) | (n % 10)); 225} 226 | 201/* 202 * Helper functions 203 */ 204static void rtc_write (uchar reg, uchar val) 205{ 206 uchar buf[2]; 207 buf[0] = reg << 4; 208 buf[1] = val; --- 7 unchanged lines hidden (view full) --- 216 return ((((n >> 4) & 0x0F) * 10) + (n & 0x0F)); 217} 218 219static unsigned char bin2bcd (unsigned int n) 220{ 221 return (((n / 10) << 4) | (n % 10)); 222} 223 |
227#endif /* CONFIG_RTC_RX8025 && (CFG_COMMANDS & CFG_CMD_DATE) */ | 224#endif /* CONFIG_RTC_RX8025 && CONFIG_CMD_DATE */ |