summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2008-09-22 19:15:18 +0000
committerDave Chapman <dave@dchapman.com>2008-09-22 19:15:18 +0000
commit85807cd44ef931b25a283f8ddd733453e94f9966 (patch)
treea7245518ba1ae2566741990f55cae0bb5fab1772 /firmware
parent80458b6222d417700eb4aaf1a9f71456f4512d28 (diff)
downloadrockbox-85807cd44ef931b25a283f8ddd733453e94f9966.tar.gz
rockbox-85807cd44ef931b25a283f8ddd733453e94f9966.zip
Trivial changes to make the main Rockbox builds for the Sansa m200 and Logik DAX ports compile. Note that some codecs are currently disabled (due to lowmem on these targets), but that needs more work and analysis to decide how much RAM we want to allocate to codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18566 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/SOURCES4
-rw-r--r--firmware/export/config-logikdax.h22
-rw-r--r--firmware/export/config-m200.h15
-rw-r--r--firmware/target/arm/pcm-telechips.c4
-rw-r--r--firmware/target/arm/tcc77x/lcd-ssd1815.c17
-rw-r--r--firmware/target/arm/tcc77x/logikdax/audio-logikdax.c43
-rw-r--r--firmware/target/arm/tcc77x/m200/audio-m200.c43
-rw-r--r--firmware/target/arm/wmcodec-telechips.c2
8 files changed, 132 insertions, 18 deletions
diff --git a/firmware/SOURCES b/firmware/SOURCES
index a120c88fa2..6717ccaf93 100644
--- a/firmware/SOURCES
+++ b/firmware/SOURCES
@@ -987,8 +987,10 @@ target/arm/tcc77x/usb-tcc77x.c
987target/arm/tcc77x/logikdax/button-logikdax.c 987target/arm/tcc77x/logikdax/button-logikdax.c
988target/arm/tcc77x/logikdax/power-logikdax.c 988target/arm/tcc77x/logikdax/power-logikdax.c
989#ifndef BOOTLOADER 989#ifndef BOOTLOADER
990target/arm/wmcodec-telechips.c
990target/arm/tcc77x/debug-tcc77x.c 991target/arm/tcc77x/debug-tcc77x.c
991target/arm/pcm-telechips.c 992target/arm/pcm-telechips.c
993target/arm/tcc77x/logikdax/audio-logikdax.c
992#endif /* BOOTLOADER */ 994#endif /* BOOTLOADER */
993#endif /* SIMULATOR */ 995#endif /* SIMULATOR */
994#endif /* LOGIK_DAX */ 996#endif /* LOGIK_DAX */
@@ -1007,8 +1009,10 @@ target/arm/tcc77x/usb-tcc77x.c
1007target/arm/tcc77x/m200/button-m200.c 1009target/arm/tcc77x/m200/button-m200.c
1008target/arm/tcc77x/m200/power-m200.c 1010target/arm/tcc77x/m200/power-m200.c
1009#ifndef BOOTLOADER 1011#ifndef BOOTLOADER
1012target/arm/wmcodec-telechips.c
1010target/arm/tcc77x/debug-tcc77x.c 1013target/arm/tcc77x/debug-tcc77x.c
1011target/arm/pcm-telechips.c 1014target/arm/pcm-telechips.c
1015target/arm/tcc77x/m200/audio-m200.c
1012#endif /* BOOTLOADER */ 1016#endif /* BOOTLOADER */
1013#endif /* SIMULATOR */ 1017#endif /* SIMULATOR */
1014#endif /* SANSA_M200 */ 1018#endif /* SANSA_M200 */
diff --git a/firmware/export/config-logikdax.h b/firmware/export/config-logikdax.h
index c66a2ab581..4b205de425 100644
--- a/firmware/export/config-logikdax.h
+++ b/firmware/export/config-logikdax.h
@@ -32,6 +32,8 @@
32/* define this if you would like tagcache to build on this target */ 32/* define this if you would like tagcache to build on this target */
33#define HAVE_TAGCACHE 33#define HAVE_TAGCACHE
34 34
35#define HAVE_FAT16SUPPORT
36
35/* define this if you have a flash memory storage */ 37/* define this if you have a flash memory storage */
36#define HAVE_FLASH_STORAGE 38#define HAVE_FLASH_STORAGE
37 39
@@ -54,14 +56,22 @@
54/* Define this if you have a software controlled poweroff */ 56/* Define this if you have a software controlled poweroff */
55#define HAVE_SW_POWEROFF 57#define HAVE_SW_POWEROFF
56 58
59/* The number of bytes reserved for loadable codecs */
60#define CODEC_SIZE 0x9c000
61
57/* The number of bytes reserved for loadable plugins */ 62/* The number of bytes reserved for loadable plugins */
58#define PLUGIN_BUFFER_SIZE 0x8000 63#define PLUGIN_BUFFER_SIZE 0x8c000
59 64
60#define AB_REPEAT_ENABLE 1 65#define AB_REPEAT_ENABLE 1
61 66
62/* Define this if you do software codec */ 67/* Define this if you do software codec */
63#define CONFIG_CODEC SWCODEC 68#define CONFIG_CODEC SWCODEC
64 69
70/* The DAX uses built-in WM8731 codec */
71#define HAVE_WM8731
72/* Codec is slave on serial bus */
73#define CODEC_SLAVE
74
65/* Define this for LCD backlight available */ 75/* Define this for LCD backlight available */
66#define HAVE_BACKLIGHT 76#define HAVE_BACKLIGHT
67 77
@@ -109,4 +119,14 @@
109#define BOOTFILE "rockbox." BOOTFILE_EXT 119#define BOOTFILE "rockbox." BOOTFILE_EXT
110#define BOOTDIR "/" 120#define BOOTDIR "/"
111 121
122#define IBSS_ATTR_VOICE_STACK
123#define ICODE_ATTR_TREMOR_NOT_MDCT
124#define ICODE_ATTR_TREMOR_MDCT
125#define ICODE_ATTR_FLAC
126#define IBSS_ATTR_FLAC_DECODED0
127#define ICONST_ATTR_MPA_HUFFMAN
128#define IBSS_ATTR_MPC_SAMPLE_BUF
129#define ICODE_ATTR_ALAC
130#define IBSS_ATTR_SHORTEN_DECODED0
131
112#endif /* SIMULATOR */ 132#endif /* SIMULATOR */
diff --git a/firmware/export/config-m200.h b/firmware/export/config-m200.h
index f7ab78d87e..eeac509970 100644
--- a/firmware/export/config-m200.h
+++ b/firmware/export/config-m200.h
@@ -57,8 +57,11 @@
57/* Define this if you have a software controlled poweroff */ 57/* Define this if you have a software controlled poweroff */
58#define HAVE_SW_POWEROFF 58#define HAVE_SW_POWEROFF
59 59
60/* The number of bytes reserved for loadable codecs */
61#define CODEC_SIZE 0x20000
62
60/* The number of bytes reserved for loadable plugins */ 63/* The number of bytes reserved for loadable plugins */
61#define PLUGIN_BUFFER_SIZE 0x8000 64#define PLUGIN_BUFFER_SIZE 0x10000
62 65
63#define AB_REPEAT_ENABLE 1 66#define AB_REPEAT_ENABLE 1
64 67
@@ -118,4 +121,14 @@
118#define BOOTFILE "rockbox." BOOTFILE_EXT 121#define BOOTFILE "rockbox." BOOTFILE_EXT
119#define BOOTDIR "/" 122#define BOOTDIR "/"
120 123
124#define IBSS_ATTR_VOICE_STACK
125#define ICODE_ATTR_TREMOR_NOT_MDCT
126#define ICODE_ATTR_TREMOR_MDCT
127#define ICODE_ATTR_FLAC
128#define IBSS_ATTR_FLAC_DECODED0
129#define ICONST_ATTR_MPA_HUFFMAN
130#define IBSS_ATTR_MPC_SAMPLE_BUF
131#define ICODE_ATTR_ALAC
132#define IBSS_ATTR_SHORTEN_DECODED0
133
121#endif /* SIMULATOR */ 134#endif /* SIMULATOR */
diff --git a/firmware/target/arm/pcm-telechips.c b/firmware/target/arm/pcm-telechips.c
index 63f50f7d78..b3fd9216dc 100644
--- a/firmware/target/arm/pcm-telechips.c
+++ b/firmware/target/arm/pcm-telechips.c
@@ -94,6 +94,10 @@ void pcm_play_dma_init(void)
94 BCLKCTR |= DEV_DAI; 94 BCLKCTR |= DEV_DAI;
95 /* Master mode, 256->64fs, 16bit LSB*/ 95 /* Master mode, 256->64fs, 16bit LSB*/
96 DAMR = 0x3cce20; 96 DAMR = 0x3cce20;
97#elif defined(LOGIK_DAX)
98 /* TODO */
99#elif defined(SANSA_M200)
100 /* TODO */
97#else 101#else
98#error "Target isn't supported" 102#error "Target isn't supported"
99#endif 103#endif
diff --git a/firmware/target/arm/tcc77x/lcd-ssd1815.c b/firmware/target/arm/tcc77x/lcd-ssd1815.c
index a6e4481fb2..b41c8d26ef 100644
--- a/firmware/target/arm/tcc77x/lcd-ssd1815.c
+++ b/firmware/target/arm/tcc77x/lcd-ssd1815.c
@@ -129,21 +129,8 @@ void lcd_set_invert_display(bool yesno)
129/* turn the display upside down (call lcd_update() afterwards) */ 129/* turn the display upside down (call lcd_update() afterwards) */
130void lcd_set_flip(bool yesno) 130void lcd_set_flip(bool yesno)
131{ 131{
132 /* TODO: flip mode isn't working. The commands in the else part of 132 (void)yesno;
133 this function are how the original firmware inits the LCD */ 133 /* TODO */
134
135 if (yesno)
136 {
137 lcd_write_command(LCD_SET_SEGMENT_REMAP | 0x01);
138 lcd_write_command(LCD_SET_COM_OUTPUT_SCAN_DIRECTION);
139 xoffset = 132 - LCD_WIDTH; /* 132 colums minus the 128 we have */
140 }
141 else
142 {
143 lcd_write_command(LCD_SET_SEGMENT_REMAP);
144 lcd_write_command(LCD_SET_COM_OUTPUT_SCAN_DIRECTION | 0x08);
145 xoffset = 0;
146 }
147} 134}
148 135
149 136
diff --git a/firmware/target/arm/tcc77x/logikdax/audio-logikdax.c b/firmware/target/arm/tcc77x/logikdax/audio-logikdax.c
new file mode 100644
index 0000000000..bd85e0b573
--- /dev/null
+++ b/firmware/target/arm/tcc77x/logikdax/audio-logikdax.c
@@ -0,0 +1,43 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2007 by Michael Sevakis
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#include "system.h"
22#include "cpu.h"
23#include "audio.h"
24#include "sound.h"
25
26int audio_channels = 2;
27int audio_output_source = AUDIO_SRC_PLAYBACK;
28
29void audiohw_enable_output(bool on)
30{
31 (void)on;
32}
33
34void audio_set_output_source(int source)
35{
36 (void)source;
37}
38
39void audio_input_mux(int source, unsigned flags)
40{
41 (void)source;
42 (void)flags;
43}
diff --git a/firmware/target/arm/tcc77x/m200/audio-m200.c b/firmware/target/arm/tcc77x/m200/audio-m200.c
new file mode 100644
index 0000000000..bd85e0b573
--- /dev/null
+++ b/firmware/target/arm/tcc77x/m200/audio-m200.c
@@ -0,0 +1,43 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2007 by Michael Sevakis
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#include "system.h"
22#include "cpu.h"
23#include "audio.h"
24#include "sound.h"
25
26int audio_channels = 2;
27int audio_output_source = AUDIO_SRC_PLAYBACK;
28
29void audiohw_enable_output(bool on)
30{
31 (void)on;
32}
33
34void audio_set_output_source(int source)
35{
36 (void)source;
37}
38
39void audio_input_mux(int source, unsigned flags)
40{
41 (void)source;
42 (void)flags;
43}
diff --git a/firmware/target/arm/wmcodec-telechips.c b/firmware/target/arm/wmcodec-telechips.c
index 5fcc46154b..de3a29c8c7 100644
--- a/firmware/target/arm/wmcodec-telechips.c
+++ b/firmware/target/arm/wmcodec-telechips.c
@@ -34,7 +34,7 @@
34#if defined(COWON_D2) 34#if defined(COWON_D2)
35/* The D2's audio codec uses an I2C address of 0x34 */ 35/* The D2's audio codec uses an I2C address of 0x34 */
36#define I2C_AUDIO_ADDRESS 0x34 36#define I2C_AUDIO_ADDRESS 0x34
37#elif defined (IAUDIO_7) 37#elif defined (IAUDIO_7) || defined(LOGIK_DAX) || defined(SANSA_M200)
38#define I2C_AUDIO_ADDRESS 0x34 38#define I2C_AUDIO_ADDRESS 0x34
39#else 39#else
40#error wmcodec not implemented for this target! 40#error wmcodec not implemented for this target!