summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Jarosch <tomj@simonv.com>2011-03-08 20:54:42 +0000
committerThomas Jarosch <tomj@simonv.com>2011-03-08 20:54:42 +0000
commit4e42cd712c6c4bb952efededefc4d6947b52f43b (patch)
treee359bf3bc5fff2688c5a504823be9976c8982f19
parent5c73e34d2d81545f59c5c664da3475251a5ac3c6 (diff)
downloadrockbox-4e42cd712c6c4bb952efededefc4d6947b52f43b.tar.gz
rockbox-4e42cd712c6c4bb952efededefc4d6947b52f43b.zip
RaaA: Add RTC support
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29544 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/SOURCES1
-rw-r--r--firmware/export/config/android.h3
-rw-r--r--firmware/export/config/nokian8xx.h3
-rw-r--r--firmware/export/config/nokian900.h3
-rw-r--r--firmware/export/config/pandora.h3
-rw-r--r--firmware/export/config/sdlapp.h3
-rw-r--r--firmware/target/hosted/rtc.c40
-rw-r--r--uisimulator/common/stubs.c18
8 files changed, 56 insertions, 18 deletions
diff --git a/firmware/SOURCES b/firmware/SOURCES
index 32d2a4edfe..21bb732798 100644
--- a/firmware/SOURCES
+++ b/firmware/SOURCES
@@ -7,6 +7,7 @@ load_code.c
7powermgmt.c 7powermgmt.c
8#if (CONFIG_PLATFORM & PLATFORM_HOSTED) 8#if (CONFIG_PLATFORM & PLATFORM_HOSTED)
9target/hosted/powermgmt.c 9target/hosted/powermgmt.c
10target/hosted/rtc.c
10#endif 11#endif
11system.c 12system.c
12usb.c 13usb.c
diff --git a/firmware/export/config/android.h b/firmware/export/config/android.h
index a2fe09247e..c9ae8ba191 100644
--- a/firmware/export/config/android.h
+++ b/firmware/export/config/android.h
@@ -59,6 +59,9 @@
59/* define this if you have RTC RAM available for settings */ 59/* define this if you have RTC RAM available for settings */
60//#define HAVE_RTC_RAM 60//#define HAVE_RTC_RAM
61 61
62/* define this if you have a real-time clock */
63#define CONFIG_RTC APPLICATION
64
62/* The number of bytes reserved for loadable codecs */ 65/* The number of bytes reserved for loadable codecs */
63#define CODEC_SIZE 0x100000 66#define CODEC_SIZE 0x100000
64 67
diff --git a/firmware/export/config/nokian8xx.h b/firmware/export/config/nokian8xx.h
index 0d95a8a7c2..f11fa87021 100644
--- a/firmware/export/config/nokian8xx.h
+++ b/firmware/export/config/nokian8xx.h
@@ -49,6 +49,9 @@
49/* define this if you have RTC RAM available for settings */ 49/* define this if you have RTC RAM available for settings */
50//#define HAVE_RTC_RAM 50//#define HAVE_RTC_RAM
51 51
52/* define this if you have a real-time clock */
53#define CONFIG_RTC APPLICATION
54
52/* The number of bytes reserved for loadable codecs */ 55/* The number of bytes reserved for loadable codecs */
53#define CODEC_SIZE 0x100000 56#define CODEC_SIZE 0x100000
54 57
diff --git a/firmware/export/config/nokian900.h b/firmware/export/config/nokian900.h
index 5cd41d50d0..a36aebf8db 100644
--- a/firmware/export/config/nokian900.h
+++ b/firmware/export/config/nokian900.h
@@ -49,6 +49,9 @@
49/* define this if you have RTC RAM available for settings */ 49/* define this if you have RTC RAM available for settings */
50//#define HAVE_RTC_RAM 50//#define HAVE_RTC_RAM
51 51
52/* define this if you have a real-time clock */
53#define CONFIG_RTC APPLICATION
54
52/* The number of bytes reserved for loadable codecs */ 55/* The number of bytes reserved for loadable codecs */
53#define CODEC_SIZE 0x100000 56#define CODEC_SIZE 0x100000
54 57
diff --git a/firmware/export/config/pandora.h b/firmware/export/config/pandora.h
index 9835b26db5..a740208ac0 100644
--- a/firmware/export/config/pandora.h
+++ b/firmware/export/config/pandora.h
@@ -49,6 +49,9 @@
49/* define this if you have RTC RAM available for settings */ 49/* define this if you have RTC RAM available for settings */
50//#define HAVE_RTC_RAM 50//#define HAVE_RTC_RAM
51 51
52/* define this if you have a real-time clock */
53#define CONFIG_RTC APPLICATION
54
52/* The number of bytes reserved for loadable codecs */ 55/* The number of bytes reserved for loadable codecs */
53#define CODEC_SIZE 0x100000 56#define CODEC_SIZE 0x100000
54 57
diff --git a/firmware/export/config/sdlapp.h b/firmware/export/config/sdlapp.h
index c02a188c4a..a55b7e3be3 100644
--- a/firmware/export/config/sdlapp.h
+++ b/firmware/export/config/sdlapp.h
@@ -57,6 +57,9 @@
57/* define this if you have RTC RAM available for settings */ 57/* define this if you have RTC RAM available for settings */
58//#define HAVE_RTC_RAM 58//#define HAVE_RTC_RAM
59 59
60/* define this if you have a real-time clock */
61#define CONFIG_RTC APPLICATION
62
60/* The number of bytes reserved for loadable codecs */ 63/* The number of bytes reserved for loadable codecs */
61#define CODEC_SIZE 0x100000 64#define CODEC_SIZE 0x100000
62 65
diff --git a/firmware/target/hosted/rtc.c b/firmware/target/hosted/rtc.c
new file mode 100644
index 0000000000..179e7ea909
--- /dev/null
+++ b/firmware/target/hosted/rtc.c
@@ -0,0 +1,40 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Based upon code (C) 2002 by Björn Stenberg
11 * Copyright (C) 2011 by Thomas Jarosch
12 *
13 * This program is free software; you can redistribute it and/or
14 * modify it under the terms of the GNU General Public License
15 * as published by the Free Software Foundation; either version 2
16 * of the License, or (at your option) any later version.
17 *
18 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
19 * KIND, either express or implied.
20 *
21 ****************************************************************************/
22#include <time.h>
23
24void rtc_init(void)
25{
26}
27
28int rtc_read_datetime(struct tm *tm)
29{
30 time_t now = time(NULL);
31 *tm = *localtime(&now);
32
33 return 0;
34}
35
36int rtc_write_datetime(const struct tm *tm)
37{
38 (void)tm;
39 return 0;
40}
diff --git a/uisimulator/common/stubs.c b/uisimulator/common/stubs.c
index 024afab14f..f8b8fdc912 100644
--- a/uisimulator/common/stubs.c
+++ b/uisimulator/common/stubs.c
@@ -234,10 +234,6 @@ void storage_spindown(int s)
234 storage_spinning = false; 234 storage_spinning = false;
235} 235}
236 236
237void rtc_init(void)
238{
239}
240
241int rtc_read(int address) 237int rtc_read(int address)
242{ 238{
243 return address ^ 0x55; 239 return address ^ 0x55;
@@ -250,20 +246,6 @@ int rtc_write(int address, int value)
250 return 0; 246 return 0;
251} 247}
252 248
253int rtc_read_datetime(struct tm *tm)
254{
255 time_t now = time(NULL);
256 *tm = *localtime(&now);
257
258 return 0;
259}
260
261int rtc_write_datetime(const struct tm *tm)
262{
263 (void)tm;
264 return 0;
265}
266
267#ifdef HAVE_RTC_ALARM 249#ifdef HAVE_RTC_ALARM
268void rtc_get_alarm(int *h, int *m) 250void rtc_get_alarm(int *h, int *m)
269{ 251{