diff options
author | Marcin Bukat <marcin.bukat@gmail.com> | 2018-04-10 13:26:56 +0200 |
---|---|---|
committer | Marcin Bukat <marcin.bukat@gmail.com> | 2018-06-12 10:31:15 +0200 |
commit | fbaa97496f9717d7cf45456c47ce3e271da29e28 (patch) | |
tree | 77efdc05962018111ead6edca70e49c0cf8a5797 /firmware | |
parent | 937589ca3a0a9aad62f7f181c9256244a6d2f418 (diff) |
Agptek Rocker: Implement RTC support
Add define in config file to enable RTC support in rockbox,
Fix time_menu.c to include radio.h only when tuner is present
Implement time setting function on linux (was empty stub)
Not tested.
Change-Id: I40e6c4a6c1b66ada9cf4e698e502e221d0fc44df
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/export/config/agptekrocker.h | 2 | ||||
-rw-r--r-- | firmware/target/hosted/rtc.c | 10 |
2 files changed, 9 insertions, 3 deletions
diff --git a/firmware/export/config/agptekrocker.h b/firmware/export/config/agptekrocker.h index fa010a109f..1c15117f9b 100644 --- a/firmware/export/config/agptekrocker.h +++ b/firmware/export/config/agptekrocker.h @@ -59,7 +59,7 @@ #define CONFIG_BACKLIGHT_FADING BACKLIGHT_FADING_SW_SETTING /* define this if you have a real-time clock */ -#define CONFIG_RTC 0 +#define CONFIG_RTC APPLICATION /* The number of bytes reserved for loadable codecs */ #define CODEC_SIZE 0x80000 diff --git a/firmware/target/hosted/rtc.c b/firmware/target/hosted/rtc.c index 8c430f3774..cb11d3ca3c 100644 --- a/firmware/target/hosted/rtc.c +++ b/firmware/target/hosted/rtc.c @@ -9,6 +9,7 @@ * * Based upon code (C) 2002 by Björn Stenberg * Copyright (C) 2011 by Thomas Jarosch + * Copyright (C) 2018 by Marcin Bukat * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -20,6 +21,7 @@ * ****************************************************************************/ #include <time.h> +#include <sys/time.h> void rtc_init(void) { @@ -35,6 +37,10 @@ int rtc_read_datetime(struct tm *tm) int rtc_write_datetime(const struct tm *tm) { - (void)tm; - return -1; + struct timeval tv; + + tv.tv_sec = mktime((struct tm *)tm); + tv.tv_usec = 0; + + return settimeofday(&tv, NULL); } |