summaryrefslogtreecommitdiff
path: root/firmware/drivers
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2008-05-02 19:12:09 +0000
committerDave Chapman <dave@dchapman.com>2008-05-02 19:12:09 +0000
commitf2042983f08cd49404be0b6916fc73d778fe8dba (patch)
tree33a84414ca4d94770f900e92074c18ecadf23ed7 /firmware/drivers
parent4cf4b5c2aef075b719e834f30d17c0986fadb658 (diff)
downloadrockbox-f2042983f08cd49404be0b6916fc73d778fe8dba.tar.gz
rockbox-f2042983f08cd49404be0b6916fc73d778fe8dba.zip
Add the Sansa M200 (v1) as a target - it's extremely similar to the Logik DAX (the LCD driver worked unchanged). Plus various tcc77x work, including a working tick interrupt (enabled in the bootloader). Rockbox itself builds for the M200 (there are no keymaps yet for the DAX), but doesn't progress very far due to the lack of an ATA (NAND flash) driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17306 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers')
-rw-r--r--firmware/drivers/audio/tlv320.c6
-rw-r--r--firmware/drivers/rtc/rtc_tcc77x.c75
2 files changed, 81 insertions, 0 deletions
diff --git a/firmware/drivers/audio/tlv320.c b/firmware/drivers/audio/tlv320.c
index c0f37302fc..6a22ab1c74 100644
--- a/firmware/drivers/audio/tlv320.c
+++ b/firmware/drivers/audio/tlv320.c
@@ -21,7 +21,9 @@
21#include "string.h" 21#include "string.h"
22#include "audio.h" 22#include "audio.h"
23 23
24#ifdef CPU_COLDFIRE
24#include "i2c-coldfire.h" 25#include "i2c-coldfire.h"
26#endif
25#include "audiohw.h" 27#include "audiohw.h"
26 28
27const struct sound_settings_info audiohw_settings[] = { 29const struct sound_settings_info audiohw_settings[] = {
@@ -73,7 +75,11 @@ static void tlv320_write_reg(unsigned reg, unsigned value)
73 data[0] = (reg << 1) | ((value >> 8) & 1); 75 data[0] = (reg << 1) | ((value >> 8) & 1);
74 data[1] = value; 76 data[1] = value;
75 77
78#ifdef CPU_COLDFIRE
76 if (i2c_write(I2C_IFACE_0, TLV320_ADDR, data, 2) != 2) 79 if (i2c_write(I2C_IFACE_0, TLV320_ADDR, data, 2) != 2)
80#else
81 #warning Implement tlv320_write_reg()
82#endif
77 { 83 {
78 logf("tlv320 error reg=0x%x", reg); 84 logf("tlv320 error reg=0x%x", reg);
79 return; 85 return;
diff --git a/firmware/drivers/rtc/rtc_tcc77x.c b/firmware/drivers/rtc/rtc_tcc77x.c
new file mode 100644
index 0000000000..140adbc27b
--- /dev/null
+++ b/firmware/drivers/rtc/rtc_tcc77x.c
@@ -0,0 +1,75 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2008 by Dave Chapman
11 *
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
14 *
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
17 *
18 ****************************************************************************/
19#include "config.h"
20#include "rtc.h"
21#include "system.h"
22#include <stdbool.h>
23
24void rtc_init(void)
25{
26}
27
28int rtc_read_datetime(unsigned char* buf)
29{
30
31}
32
33int rtc_write_datetime(unsigned char* buf)
34{
35 return 1;
36}
37
38/**
39 * Checks to see if an alarm interrupt has triggered since last we checked.
40 */
41bool rtc_check_alarm_flag(void)
42{
43
44}
45
46/**
47 * Enables or disables the alarm.
48 */
49bool rtc_enable_alarm(bool enable)
50{
51}
52
53/**
54 * Check if alarm caused unit to start.
55 */
56bool rtc_check_alarm_started(bool release_alarm)
57{
58}
59
60void rtc_set_alarm(int h, int m)
61{
62 /* Convert to BCD */
63// pcf50605_write(0x12, ((m/10) << 4) | m%10);
64// pcf50605_write(0x13, ((h/10) << 4) | h%10);
65}
66
67void rtc_get_alarm(int *h, int *m)
68{
69 char buf[2];
70
71 /* Convert from BCD */
72// *m = ((buf[0] >> 4) & 0x7)*10 + (buf[0] & 0x0f);
73// *h = ((buf[1] >> 4) & 0x3)*10 + (buf[1] & 0x0f);
74}
75