diff options
author | Dave Chapman <dave@dchapman.com> | 2008-09-22 19:15:18 +0000 |
---|---|---|
committer | Dave Chapman <dave@dchapman.com> | 2008-09-22 19:15:18 +0000 |
commit | 85807cd44ef931b25a283f8ddd733453e94f9966 (patch) | |
tree | a7245518ba1ae2566741990f55cae0bb5fab1772 /firmware | |
parent | 80458b6222d417700eb4aaf1a9f71456f4512d28 (diff) | |
download | rockbox-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/SOURCES | 4 | ||||
-rw-r--r-- | firmware/export/config-logikdax.h | 22 | ||||
-rw-r--r-- | firmware/export/config-m200.h | 15 | ||||
-rw-r--r-- | firmware/target/arm/pcm-telechips.c | 4 | ||||
-rw-r--r-- | firmware/target/arm/tcc77x/lcd-ssd1815.c | 17 | ||||
-rw-r--r-- | firmware/target/arm/tcc77x/logikdax/audio-logikdax.c | 43 | ||||
-rw-r--r-- | firmware/target/arm/tcc77x/m200/audio-m200.c | 43 | ||||
-rw-r--r-- | firmware/target/arm/wmcodec-telechips.c | 2 |
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 | |||
987 | target/arm/tcc77x/logikdax/button-logikdax.c | 987 | target/arm/tcc77x/logikdax/button-logikdax.c |
988 | target/arm/tcc77x/logikdax/power-logikdax.c | 988 | target/arm/tcc77x/logikdax/power-logikdax.c |
989 | #ifndef BOOTLOADER | 989 | #ifndef BOOTLOADER |
990 | target/arm/wmcodec-telechips.c | ||
990 | target/arm/tcc77x/debug-tcc77x.c | 991 | target/arm/tcc77x/debug-tcc77x.c |
991 | target/arm/pcm-telechips.c | 992 | target/arm/pcm-telechips.c |
993 | target/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 | |||
1007 | target/arm/tcc77x/m200/button-m200.c | 1009 | target/arm/tcc77x/m200/button-m200.c |
1008 | target/arm/tcc77x/m200/power-m200.c | 1010 | target/arm/tcc77x/m200/power-m200.c |
1009 | #ifndef BOOTLOADER | 1011 | #ifndef BOOTLOADER |
1012 | target/arm/wmcodec-telechips.c | ||
1010 | target/arm/tcc77x/debug-tcc77x.c | 1013 | target/arm/tcc77x/debug-tcc77x.c |
1011 | target/arm/pcm-telechips.c | 1014 | target/arm/pcm-telechips.c |
1015 | target/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) */ |
130 | void lcd_set_flip(bool yesno) | 130 | void 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 | |||
26 | int audio_channels = 2; | ||
27 | int audio_output_source = AUDIO_SRC_PLAYBACK; | ||
28 | |||
29 | void audiohw_enable_output(bool on) | ||
30 | { | ||
31 | (void)on; | ||
32 | } | ||
33 | |||
34 | void audio_set_output_source(int source) | ||
35 | { | ||
36 | (void)source; | ||
37 | } | ||
38 | |||
39 | void 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 | |||
26 | int audio_channels = 2; | ||
27 | int audio_output_source = AUDIO_SRC_PLAYBACK; | ||
28 | |||
29 | void audiohw_enable_output(bool on) | ||
30 | { | ||
31 | (void)on; | ||
32 | } | ||
33 | |||
34 | void audio_set_output_source(int source) | ||
35 | { | ||
36 | (void)source; | ||
37 | } | ||
38 | |||
39 | void 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! |