mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-11-09 13:12:37 -05:00
FS#10569 RTC driver cleanup
Change the RTC drivers so that the rtc_(read|write)_datetime functions now deal directly with the tm struct instead of passing a string of bcd digits to/from (set|get)_time . This simplifies drivers for rtc's that do not use a bcd representation internally and cleans up some target specific code and #ifdefs in generic code. Implement simple stubs for the sim to avoid #ifdefing for that too. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22839 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
66d5bd7cf8
commit
c8b87d76eb
16 changed files with 452 additions and 373 deletions
|
|
@ -142,25 +142,17 @@ int rtc_write(int address, int value)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int rtc_read_datetime(unsigned char* buf)
|
||||
int rtc_read_datetime(struct tm *tm)
|
||||
{
|
||||
time_t now = time(NULL);
|
||||
struct tm *teem = localtime(&now);
|
||||
|
||||
buf[0] = (teem->tm_sec%10) | ((teem->tm_sec/10) << 4);
|
||||
buf[1] = (teem->tm_min%10) | ((teem->tm_min/10) << 4);
|
||||
buf[2] = (teem->tm_hour%10) | ((teem->tm_hour/10) << 4);
|
||||
buf[3] = (teem->tm_wday);
|
||||
buf[4] = (teem->tm_mday%10) | ((teem->tm_mday/10) << 4);
|
||||
buf[5] = ((teem->tm_year-100)%10) | (((teem->tm_year-100)/10) << 4);
|
||||
buf[6] = ((teem->tm_mon+1)%10) | (((teem->tm_mon+1)/10) << 4);
|
||||
*tm = *localtime(&now);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int rtc_write_datetime(unsigned char* buf)
|
||||
int rtc_write_datetime(const struct tm *tm)
|
||||
{
|
||||
(void)buf;
|
||||
(void)tm;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue