diff options
Diffstat (limited to 'firmware/export')
-rw-r--r-- | firmware/export/audiohw.h | 4 | ||||
-rw-r--r-- | firmware/export/config-cowond2.h | 140 | ||||
-rw-r--r-- | firmware/export/config.h | 17 | ||||
-rw-r--r-- | firmware/export/cpu.h | 3 | ||||
-rw-r--r-- | firmware/export/tcc780x.h | 156 | ||||
-rw-r--r-- | firmware/export/timer.h | 2 | ||||
-rw-r--r-- | firmware/export/wm8985.h | 43 |
7 files changed, 361 insertions, 4 deletions
diff --git a/firmware/export/audiohw.h b/firmware/export/audiohw.h index 5dc7550478..cdc92221d7 100644 --- a/firmware/export/audiohw.h +++ b/firmware/export/audiohw.h | |||
@@ -29,6 +29,8 @@ | |||
29 | #include "wm8751.h" | 29 | #include "wm8751.h" |
30 | #elif defined(HAVE_WM8975) || defined(HAVE_WM8978) | 30 | #elif defined(HAVE_WM8975) || defined(HAVE_WM8978) |
31 | #include "wm8975.h" | 31 | #include "wm8975.h" |
32 | #elif defined(HAVE_WM8985) | ||
33 | #include "wm8985.h" | ||
32 | #elif defined(HAVE_WM8758) | 34 | #elif defined(HAVE_WM8758) |
33 | #include "wm8758.h" | 35 | #include "wm8758.h" |
34 | #elif defined(HAVE_WM8721) | 36 | #elif defined(HAVE_WM8721) |
@@ -62,7 +64,7 @@ enum { | |||
62 | #endif | 64 | #endif |
63 | #if CONFIG_CODEC == MAS3587F || defined(HAVE_UDA1380) || defined(HAVE_TLV320)\ | 65 | #if CONFIG_CODEC == MAS3587F || defined(HAVE_UDA1380) || defined(HAVE_TLV320)\ |
64 | || defined(HAVE_WM8975) || defined(HAVE_WM8758) || defined(HAVE_WM8731) \ | 66 | || defined(HAVE_WM8975) || defined(HAVE_WM8758) || defined(HAVE_WM8731) \ |
65 | || defined(HAVE_AS3514) || defined(HAVE_WM8978) | 67 | || defined(HAVE_AS3514) || defined(HAVE_WM8978) || defined(HAVE_WM8985) |
66 | SOUND_LEFT_GAIN, | 68 | SOUND_LEFT_GAIN, |
67 | SOUND_RIGHT_GAIN, | 69 | SOUND_RIGHT_GAIN, |
68 | SOUND_MIC_GAIN, | 70 | SOUND_MIC_GAIN, |
diff --git a/firmware/export/config-cowond2.h b/firmware/export/config-cowond2.h new file mode 100644 index 0000000000..4f2d11e424 --- /dev/null +++ b/firmware/export/config-cowond2.h | |||
@@ -0,0 +1,140 @@ | |||
1 | /* | ||
2 | * This config file is for the Cowon iAudio D2 | ||
3 | */ | ||
4 | #define TARGET_TREE /* this target is using the target tree system */ | ||
5 | |||
6 | /* For Rolo and boot loader */ | ||
7 | #define MODEL_NUMBER 34 | ||
8 | |||
9 | /* define this if you have recording possibility */ | ||
10 | //#define HAVE_RECORDING | ||
11 | |||
12 | /* Define bitmask of input sources - recordable bitmask can be defined | ||
13 | explicitly if different */ | ||
14 | //#define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_LINEIN | SRC_CAP_SPDIF) | ||
15 | |||
16 | /* define this if you have a bitmap LCD display */ | ||
17 | #define HAVE_LCD_BITMAP | ||
18 | |||
19 | /* define this if you have a colour LCD */ | ||
20 | #define HAVE_LCD_COLOR | ||
21 | |||
22 | /* define this if you can flip your LCD */ | ||
23 | #define HAVE_LCD_FLIP | ||
24 | |||
25 | /* define this if you can invert the colours on your LCD */ | ||
26 | #define HAVE_LCD_INVERT | ||
27 | |||
28 | /* define this if you want album art for this target */ | ||
29 | #define HAVE_ALBUMART | ||
30 | |||
31 | /* define this if you have access to the quickscreen */ | ||
32 | #define HAVE_QUICKSCREEN | ||
33 | /* define this if you have access to the pitchscreen */ | ||
34 | #define HAVE_PITCHSCREEN | ||
35 | |||
36 | /* define this if you would like tagcache to build on this target */ | ||
37 | #define HAVE_TAGCACHE | ||
38 | |||
39 | /* define this if you have a flash memory storage */ | ||
40 | #define HAVE_FLASH_STORAGE | ||
41 | |||
42 | /* LCD dimensions */ | ||
43 | #define LCD_WIDTH 320 | ||
44 | #define LCD_HEIGHT 240 | ||
45 | #define LCD_DEPTH 16 | ||
46 | #define LCD_PIXELFORMAT 565 | ||
47 | |||
48 | /* define this if you have LCD enable function */ | ||
49 | #define HAVE_LCD_ENABLE | ||
50 | |||
51 | /* define this to indicate your device's keypad */ | ||
52 | #define CONFIG_KEYPAD COWOND2_PAD | ||
53 | |||
54 | /* define this if you have a real-time clock */ | ||
55 | //#define CONFIG_RTC RTC_TCC780X | ||
56 | |||
57 | /* define this if you have RTC RAM available for settings */ | ||
58 | //#define HAVE_RTC_RAM | ||
59 | |||
60 | /* Define this if you have a software controlled poweroff */ | ||
61 | #define HAVE_SW_POWEROFF | ||
62 | |||
63 | /* The number of bytes reserved for loadable codecs */ | ||
64 | #define CODEC_SIZE 0x80000 | ||
65 | |||
66 | /* The number of bytes reserved for loadable plugins */ | ||
67 | #define PLUGIN_BUFFER_SIZE 0x80000 | ||
68 | |||
69 | #define AB_REPEAT_ENABLE 1 | ||
70 | |||
71 | /* Define this if you do software codec */ | ||
72 | #define CONFIG_CODEC SWCODEC | ||
73 | |||
74 | /* The D2 uses a WM8985 codec */ | ||
75 | #define HAVE_WM8985 | ||
76 | |||
77 | /* There is no hardware tone control */ | ||
78 | /* TODO: probably need to use this */ | ||
79 | //#define HAVE_SW_TONE_CONTROLS | ||
80 | |||
81 | /* Define this for LCD backlight available */ | ||
82 | #define HAVE_BACKLIGHT | ||
83 | |||
84 | /* TODO: Enable LCD brightness control */ | ||
85 | //#define HAVE_BACKLIGHT_BRIGHTNESS | ||
86 | |||
87 | /* Main LCD backlight brightness range and defaults */ | ||
88 | //#define MIN_BRIGHTNESS_SETTING 1 | ||
89 | //#define MAX_BRIGHTNESS_SETTING 10 | ||
90 | //#define DEFAULT_BRIGHTNESS_SETTING 8 | ||
91 | |||
92 | #define CONFIG_I2C I2C_TCC780X | ||
93 | |||
94 | #define BATTERY_CAPACITY_DEFAULT 1500 /* default battery capacity */ | ||
95 | #define BATTERY_CAPACITY_MIN 1500 /* min. capacity selectable */ | ||
96 | #define BATTERY_CAPACITY_MAX 3200 /* max. capacity selectable */ | ||
97 | #define BATTERY_CAPACITY_INC 50 /* capacity increment */ | ||
98 | #define BATTERY_TYPES_COUNT 1 /* only one type */ | ||
99 | |||
100 | /* define this if the unit should not shut down on low battery. */ | ||
101 | /* TODO: this is temporary until battery monitoring implemented */ | ||
102 | #define NO_LOW_BATTERY_SHUTDOWN | ||
103 | |||
104 | #ifndef SIMULATOR | ||
105 | |||
106 | /* Define this if you have a TCC7801 */ | ||
107 | #define CONFIG_CPU TCC7801 | ||
108 | |||
109 | /* Define this if you have ATA power-off control */ | ||
110 | #define HAVE_ATA_POWER_OFF | ||
111 | |||
112 | /* Define this to the CPU frequency */ | ||
113 | #define CPU_FREQ 192000000 | ||
114 | |||
115 | /* Define this if you have adjustable CPU frequency */ | ||
116 | #define HAVE_ADJUSTABLE_CPU_FREQ | ||
117 | |||
118 | /* Offset ( in the firmware file's header ) to the file length */ | ||
119 | #define FIRMWARE_OFFSET_FILE_LENGTH 0 | ||
120 | |||
121 | /* Offset ( in the firmware file's header ) to the file CRC */ | ||
122 | #define FIRMWARE_OFFSET_FILE_CRC 4 | ||
123 | |||
124 | /* Offset ( in the firmware file's header ) to the real data */ | ||
125 | #define FIRMWARE_OFFSET_FILE_DATA 6 | ||
126 | |||
127 | /* The start address index for ROM builds */ | ||
128 | /* #define ROM_START 0x11010 for behind original Archos */ | ||
129 | #define ROM_START 0x7010 /* for behind BootBox */ | ||
130 | |||
131 | /* Software controlled LED */ | ||
132 | #define CONFIG_LED LED_VIRTUAL | ||
133 | |||
134 | #define CONFIG_LCD LCD_COWOND2 | ||
135 | |||
136 | #define BOOTFILE_EXT "iaudio" | ||
137 | #define BOOTFILE "rockbox." BOOTFILE_EXT | ||
138 | #define BOOTDIR "/" | ||
139 | |||
140 | #endif /* SIMULATOR */ | ||
diff --git a/firmware/export/config.h b/firmware/export/config.h index a3c2390f84..cf75d67aa5 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h | |||
@@ -53,6 +53,7 @@ | |||
53 | #define IMX31L 31 | 53 | #define IMX31L 31 |
54 | #define TCC771L 771 | 54 | #define TCC771L 771 |
55 | #define TCC773L 773 | 55 | #define TCC773L 773 |
56 | #define TCC7801 7801 | ||
56 | 57 | ||
57 | /* CONFIG_KEYPAD */ | 58 | /* CONFIG_KEYPAD */ |
58 | #define PLAYER_PAD 1 | 59 | #define PLAYER_PAD 1 |
@@ -75,7 +76,8 @@ | |||
75 | #define MROBE500_PAD 18 | 76 | #define MROBE500_PAD 18 |
76 | #define GIGABEAT_S_PAD 19 | 77 | #define GIGABEAT_S_PAD 19 |
77 | #define LOGIK_DAX_PAD 20 | 78 | #define LOGIK_DAX_PAD 20 |
78 | #define IAUDIO67_PAD 21 | 79 | #define IAUDIO67_PAD 21 |
80 | #define COWOND2_PAD 22 | ||
79 | 81 | ||
80 | /* CONFIG_REMOTE_KEYPAD */ | 82 | /* CONFIG_REMOTE_KEYPAD */ |
81 | #define H100_REMOTE 1 | 83 | #define H100_REMOTE 1 |
@@ -111,6 +113,7 @@ | |||
111 | #define LCD_MROBE100 19 /* as used by Olympus M:Robe 100 */ | 113 | #define LCD_MROBE100 19 /* as used by Olympus M:Robe 100 */ |
112 | #define LCD_LOGIKDAX 20 /* as used by Logik DAX - SSD1815 */ | 114 | #define LCD_LOGIKDAX 20 /* as used by Logik DAX - SSD1815 */ |
113 | #define LCD_IAUDIO67 21 /* as used by iAudio 6/7 - unknown */ | 115 | #define LCD_IAUDIO67 21 /* as used by iAudio 6/7 - unknown */ |
116 | #define LCD_COWOND2 21 /* as used by Cowon D2 - LTV250QV, TCC7801 driver */ | ||
114 | 117 | ||
115 | /* LCD_PIXELFORMAT */ | 118 | /* LCD_PIXELFORMAT */ |
116 | #define HORIZONTAL_PACKING 1 | 119 | #define HORIZONTAL_PACKING 1 |
@@ -136,6 +139,7 @@ | |||
136 | #define I2C_PP5024 8 /* PP5024 style */ | 139 | #define I2C_PP5024 8 /* PP5024 style */ |
137 | #define I2C_IMX31L 9 | 140 | #define I2C_IMX31L 9 |
138 | #define I2C_TCC77X 10 | 141 | #define I2C_TCC77X 10 |
142 | #define I2C_TCC780X 11 | ||
139 | 143 | ||
140 | /* CONFIG_LED */ | 144 | /* CONFIG_LED */ |
141 | #define LED_REAL 1 /* SW controlled LED (Archos recorders, player) */ | 145 | #define LED_REAL 1 /* SW controlled LED (Archos recorders, player) */ |
@@ -156,6 +160,7 @@ | |||
156 | #define RTC_IMX31L 8 | 160 | #define RTC_IMX31L 8 |
157 | #define RTC_RX5X348AB 9 | 161 | #define RTC_RX5X348AB 9 |
158 | #define RTC_TCC77X 10 | 162 | #define RTC_TCC77X 10 |
163 | #define RTC_TCC780X 11 | ||
159 | 164 | ||
160 | /* USB On-the-go */ | 165 | /* USB On-the-go */ |
161 | #define USBOTG_ISP1362 1362 /* iriver H300 */ | 166 | #define USBOTG_ISP1362 1362 /* iriver H300 */ |
@@ -231,6 +236,8 @@ | |||
231 | #include "config-logikdax.h" | 236 | #include "config-logikdax.h" |
232 | #elif defined(IAUDIO_7) | 237 | #elif defined(IAUDIO_7) |
233 | #include "config-iaudio7.h" | 238 | #include "config-iaudio7.h" |
239 | #elif defined(COWON_D2) | ||
240 | #include "config-cowond2.h" | ||
234 | #else | 241 | #else |
235 | /* no known platform */ | 242 | /* no known platform */ |
236 | #endif | 243 | #endif |
@@ -345,6 +352,11 @@ | |||
345 | #define CPU_TCC77X | 352 | #define CPU_TCC77X |
346 | #endif | 353 | #endif |
347 | 354 | ||
355 | /* define for all cpus from TCC780 family */ | ||
356 | #if (CONFIG_CPU == TCC7801) | ||
357 | #define CPU_TCC780X | ||
358 | #endif | ||
359 | |||
348 | /* define for all cpus from ARM7TDMI family (for specific optimisations) */ | 360 | /* define for all cpus from ARM7TDMI family (for specific optimisations) */ |
349 | #if defined(CPU_PP) || (CONFIG_CPU == PNX0101) || (CONFIG_CPU == DSC25) | 361 | #if defined(CPU_PP) || (CONFIG_CPU == PNX0101) || (CONFIG_CPU == DSC25) |
350 | #define CPU_ARM7TDMI | 362 | #define CPU_ARM7TDMI |
@@ -353,7 +365,7 @@ | |||
353 | /* define for all cpus from ARM family */ | 365 | /* define for all cpus from ARM family */ |
354 | #if defined(CPU_PP) || (CONFIG_CPU == PNX0101) || (CONFIG_CPU == S3C2440) \ | 366 | #if defined(CPU_PP) || (CONFIG_CPU == PNX0101) || (CONFIG_CPU == S3C2440) \ |
355 | || (CONFIG_CPU == DSC25) || (CONFIG_CPU == IMX31L) || (CONFIG_CPU == DM320) \ | 367 | || (CONFIG_CPU == DSC25) || (CONFIG_CPU == IMX31L) || (CONFIG_CPU == DM320) \ |
356 | || defined(CPU_TCC77X) | 368 | || defined(CPU_TCC77X) || defined(CPU_TCC780X) |
357 | #define CPU_ARM | 369 | #define CPU_ARM |
358 | #endif | 370 | #endif |
359 | 371 | ||
@@ -380,6 +392,7 @@ | |||
380 | defined(CPU_COLDFIRE) || /* Coldfire: core, plugins, codecs */ \ | 392 | defined(CPU_COLDFIRE) || /* Coldfire: core, plugins, codecs */ \ |
381 | defined(CPU_PP) || /* PortalPlayer: core, plugins, codecs */ \ | 393 | defined(CPU_PP) || /* PortalPlayer: core, plugins, codecs */ \ |
382 | defined(CPU_TCC77X) || /* Telechips: core, plugins, codecs */ \ | 394 | defined(CPU_TCC77X) || /* Telechips: core, plugins, codecs */ \ |
395 | defined(CPU_TCC780X) || /* Telechips: core, plugins, codecs */ \ | ||
383 | (CONFIG_CPU == PNX0101)) | 396 | (CONFIG_CPU == PNX0101)) |
384 | #define ICODE_ATTR __attribute__ ((section(".icode"))) | 397 | #define ICODE_ATTR __attribute__ ((section(".icode"))) |
385 | #define ICONST_ATTR __attribute__ ((section(".irodata"))) | 398 | #define ICONST_ATTR __attribute__ ((section(".irodata"))) |
diff --git a/firmware/export/cpu.h b/firmware/export/cpu.h index 84229378ec..08a91a6d10 100644 --- a/firmware/export/cpu.h +++ b/firmware/export/cpu.h | |||
@@ -51,3 +51,6 @@ | |||
51 | #ifdef CPU_TCC77X | 51 | #ifdef CPU_TCC77X |
52 | #include "tcc77x.h" | 52 | #include "tcc77x.h" |
53 | #endif | 53 | #endif |
54 | #ifdef CPU_TCC780X | ||
55 | #include "tcc780x.h" | ||
56 | #endif | ||
diff --git a/firmware/export/tcc780x.h b/firmware/export/tcc780x.h new file mode 100644 index 0000000000..df55c6f03d --- /dev/null +++ b/firmware/export/tcc780x.h | |||
@@ -0,0 +1,156 @@ | |||
1 | /*************************************************************************** | ||
2 | * __________ __ ___. | ||
3 | * Open \______ \ ____ ____ | | _\_ |__ _______ ___ | ||
4 | * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / | ||
5 | * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < | ||
6 | * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ | ||
7 | * \/ \/ \/ \/ \/ | ||
8 | * $Id$ | ||
9 | * | ||
10 | * Copyright (C) 2007 Rob Purchase | ||
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 | #ifndef __TCC780X_H__ | ||
20 | #define __TCC780X_H__ | ||
21 | |||
22 | /* General-purpose IO */ | ||
23 | |||
24 | #define PORTCFG0 (*(volatile unsigned long *)0xF005A000) | ||
25 | #define PORTCFG1 (*(volatile unsigned long *)0xF005A004) | ||
26 | #define PORTCFG2 (*(volatile unsigned long *)0xF005A008) | ||
27 | #define PORTCFG3 (*(volatile unsigned long *)0xF005A00C) | ||
28 | |||
29 | #define GPIOA (*(volatile unsigned long *)0xF005A020) | ||
30 | #define GPIOB (*(volatile unsigned long *)0xF005A040) | ||
31 | #define GPIOC (*(volatile unsigned long *)0xF005A060) | ||
32 | #define GPIOD (*(volatile unsigned long *)0xF005A080) | ||
33 | #define GPIOE (*(volatile unsigned long *)0xF005A0A0) | ||
34 | |||
35 | #define GPIOA_DIR (*(volatile unsigned long *)0xF005A024) | ||
36 | #define GPIOB_DIR (*(volatile unsigned long *)0xF005A044) | ||
37 | #define GPIOC_DIR (*(volatile unsigned long *)0xF005A064) | ||
38 | #define GPIOD_DIR (*(volatile unsigned long *)0xF005A084) | ||
39 | #define GPIOE_DIR (*(volatile unsigned long *)0xF005A0A4) | ||
40 | |||
41 | #define GPIOA_SET (*(volatile unsigned long *)0xF005A028) | ||
42 | #define GPIOB_SET (*(volatile unsigned long *)0xF005A048) | ||
43 | #define GPIOC_SET (*(volatile unsigned long *)0xF005A068) | ||
44 | #define GPIOD_SET (*(volatile unsigned long *)0xF005A088) | ||
45 | #define GPIOE_SET (*(volatile unsigned long *)0xF005A0A8) | ||
46 | |||
47 | #define GPIOA_CLEAR (*(volatile unsigned long *)0xF005A02C) | ||
48 | #define GPIOB_CLEAR (*(volatile unsigned long *)0xF005A04C) | ||
49 | #define GPIOC_CLEAR (*(volatile unsigned long *)0xF005A06C) | ||
50 | #define GPIOD_CLEAR (*(volatile unsigned long *)0xF005A08C) | ||
51 | #define GPIOE_CLEAR (*(volatile unsigned long *)0xF005A0AC) | ||
52 | |||
53 | /* Clock Generator */ | ||
54 | |||
55 | #define CLKCTRL (*(volatile unsigned long *)0xF3000000) | ||
56 | #define PLL0CFG (*(volatile unsigned long *)0xF3000004) | ||
57 | #define PLL1CFG (*(volatile unsigned long *)0xF3000008) | ||
58 | #define CLKDIVC (*(volatile unsigned long *)0xF300000C) | ||
59 | #define CLKDIVC1 (*(volatile unsigned long *)0xF3000010) | ||
60 | #define MODECTR (*(volatile unsigned long *)0xF3000014) | ||
61 | #define BCLKCTR (*(volatile unsigned long *)0xF3000018) | ||
62 | #define SWRESET (*(volatile unsigned long *)0xF300001C) | ||
63 | #define PCLKCFG0 (*(volatile unsigned long *)0xF3000020) | ||
64 | #define PCLKCFG1 (*(volatile unsigned long *)0xF3000024) | ||
65 | #define PCLKCFG2 (*(volatile unsigned long *)0xF3000028) | ||
66 | #define PCLKCFG3 (*(volatile unsigned long *)0xF300002C) | ||
67 | #define PCLK_LCD (*(volatile unsigned long *)0xF3000030) | ||
68 | #define PCLKCFG5 (*(volatile unsigned long *)0xF3000034) | ||
69 | #define PCLKCFG6 (*(volatile unsigned long *)0xF3000038) | ||
70 | #define PCLKCFG7 (*(volatile unsigned long *)0xF300003C) | ||
71 | #define PCLKCFG8 (*(volatile unsigned long *)0xF3000040) | ||
72 | #define PCLK_TCT (*(volatile unsigned long *)0xF3000044) | ||
73 | #define PCLKCFG10 (*(volatile unsigned long *)0xF3000048) | ||
74 | #define PCLKCFG11 (*(volatile unsigned long *)0xF300004C) | ||
75 | #define PCLK_ADC (*(volatile unsigned long *)0xF3000050) | ||
76 | #define PCLKCFG13 (*(volatile unsigned long *)0xF3000054) | ||
77 | #define PCLKCFG14 (*(volatile unsigned long *)0xF3000058) | ||
78 | #define PCLK_RFREQ (*(volatile unsigned long *)0xF300005C) | ||
79 | #define PCLKCFG16 (*(volatile unsigned long *)0xF3000060) | ||
80 | #define PCLKCFG17 (*(volatile unsigned long *)0xF3000064) | ||
81 | |||
82 | #define PCK_EN (1<<28) | ||
83 | |||
84 | #define CKSEL_PLL0 0 | ||
85 | #define CKSEL_PLL1 1 | ||
86 | #define CKSEL_XIN 4 | ||
87 | |||
88 | /* IRQ Controller */ | ||
89 | |||
90 | #define IEN (*(volatile unsigned long *)0xF3001000) | ||
91 | #define CREQ (*(volatile unsigned long *)0xF3001004) | ||
92 | #define IRQSEL (*(volatile unsigned long *)0xF300100C) | ||
93 | #define MREQ (*(volatile unsigned long *)0xF3001014) | ||
94 | #define MIRQ (*(volatile unsigned long *)0xF3001028) | ||
95 | #define MFIQ (*(volatile unsigned long *)0xF300102C) | ||
96 | #define ALLMASK (*(volatile unsigned long *)0xF3001044) | ||
97 | #define VAIRQ (*(volatile unsigned long *)0xF3001080) | ||
98 | #define VAFIQ (*(volatile unsigned long *)0xF3001084) | ||
99 | #define VNIRQ (*(volatile unsigned long *)0xF3001088) | ||
100 | #define VNFIQ (*(volatile unsigned long *)0xF300108C) | ||
101 | |||
102 | #define TIMER_IRQ_MASK (1<<6) | ||
103 | |||
104 | /* Timer / Counters */ | ||
105 | |||
106 | #define TCFG0 (*(volatile unsigned long *)0xF3003000) | ||
107 | #define TCNT0 (*(volatile unsigned long *)0xF3003004) | ||
108 | #define TREF0 (*(volatile unsigned long *)0xF3003008) | ||
109 | #define TCFG1 (*(volatile unsigned long *)0xF3003010) | ||
110 | #define TCNT1 (*(volatile unsigned long *)0xF3003014) | ||
111 | #define TREF1 (*(volatile unsigned long *)0xF3003018) | ||
112 | |||
113 | #define TIREQ (*(volatile unsigned long *)0xF3003060) | ||
114 | /* ref. value reached */ | ||
115 | #define TF0 (1<<8) | ||
116 | #define TF1 (1<<9) | ||
117 | /* irq. status */ | ||
118 | #define TI0 (1<<0) | ||
119 | #define TI1 (1<<1) | ||
120 | |||
121 | #define TC32EN (*(volatile unsigned long *)0xF3003080) | ||
122 | #define TC32LDV (*(volatile unsigned long *)0xF3003084) | ||
123 | #define TC32MCNT (*(volatile unsigned long *)0xF3003094) | ||
124 | #define TC32IRQ (*(volatile unsigned long *)0xF3003098) | ||
125 | |||
126 | /* ADC */ | ||
127 | |||
128 | #define ADCCON (*(volatile unsigned long *)0xF3004000) | ||
129 | #define ADCDATA (*(volatile unsigned long *)0xF3004004) | ||
130 | #define ADCCONA (*(volatile unsigned long *)0xF3004080) | ||
131 | #define ADCSTATUS (*(volatile unsigned long *)0xF3004084) | ||
132 | #define ADCCFG (*(volatile unsigned long *)0xF3004088) | ||
133 | |||
134 | /* Memory Controller */ | ||
135 | |||
136 | #define SDCFG (*(volatile unsigned long *)0xF1000000) | ||
137 | #define SDFSM (*(volatile unsigned long *)0xF1000004) | ||
138 | #define MCFG (*(volatile unsigned long *)0xF1000008) | ||
139 | #define CSCFG0 (*(volatile unsigned long *)0xF1000010) | ||
140 | #define CSCFG1 (*(volatile unsigned long *)0xF1000014) | ||
141 | #define CSCFG2 (*(volatile unsigned long *)0xF1000018) | ||
142 | #define CSCFG3 (*(volatile unsigned long *)0xF100001C) | ||
143 | #define CLKCFG (*(volatile unsigned long *)0xF1000020) | ||
144 | #define SDCMD (*(volatile unsigned long *)0xF1000024) | ||
145 | |||
146 | #define SDCFG1 (*(volatile unsigned long *)0xF1001000) | ||
147 | #define MCFG1 (*(volatile unsigned long *)0xF1001008) | ||
148 | |||
149 | /* Misc */ | ||
150 | |||
151 | #define ECFG0 (*(volatile unsigned long *)0xF300500C) | ||
152 | #define MBCFG (*(volatile unsigned long *)0xF3005020) | ||
153 | |||
154 | #define TCC780_VER (*(volatile unsigned long *)0xE0001FFC) | ||
155 | |||
156 | #endif | ||
diff --git a/firmware/export/timer.h b/firmware/export/timer.h index f4df8d51d4..21995ef459 100644 --- a/firmware/export/timer.h +++ b/firmware/export/timer.h | |||
@@ -31,7 +31,7 @@ | |||
31 | #define TIMER_FREQ (CPU_FREQ/2) | 31 | #define TIMER_FREQ (CPU_FREQ/2) |
32 | #elif CONFIG_CPU == PNX0101 | 32 | #elif CONFIG_CPU == PNX0101 |
33 | #define TIMER_FREQ 3000000 | 33 | #define TIMER_FREQ 3000000 |
34 | #elif CONFIG_CPU == S3C2440 || CONFIG_CPU == DM320 | 34 | #elif CONFIG_CPU == S3C2440 || CONFIG_CPU == DM320 || CONFIG_CPU == TCC7801 |
35 | #include "timer-target.h" | 35 | #include "timer-target.h" |
36 | #elif defined(SIMULATOR) | 36 | #elif defined(SIMULATOR) |
37 | #define TIMER_FREQ 1000000 | 37 | #define TIMER_FREQ 1000000 |
diff --git a/firmware/export/wm8985.h b/firmware/export/wm8985.h new file mode 100644 index 0000000000..9ae5515fa7 --- /dev/null +++ b/firmware/export/wm8985.h | |||
@@ -0,0 +1,43 @@ | |||
1 | /*************************************************************************** | ||
2 | * __________ __ ___. | ||
3 | * Open \______ \ ____ ____ | | _\_ |__ _______ ___ | ||
4 | * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / | ||
5 | * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < | ||
6 | * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ | ||
7 | * \/ \/ \/ \/ \/ | ||
8 | * $Id$ | ||
9 | * | ||
10 | * Copyright (C) 2005 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 | |||
20 | #ifndef _WM8985_H | ||
21 | #define _WM8985_H | ||
22 | |||
23 | /* volume/balance/treble/bass interdependency */ | ||
24 | #define VOLUME_MIN -730 | ||
25 | #define VOLUME_MAX 60 | ||
26 | |||
27 | extern int tenthdb2master(int db); | ||
28 | |||
29 | extern void audiohw_enable_output(bool enable); | ||
30 | extern int audiohw_set_master_vol(int vol_l, int vol_r); | ||
31 | extern int audiohw_set_lineout_vol(int vol_l, int vol_r); | ||
32 | extern void audiohw_set_bass(int value); | ||
33 | extern void audiohw_set_treble(int value); | ||
34 | extern void audiohw_set_nsorder(int order); | ||
35 | extern void audiohw_set_sample_rate(int sampling_control); | ||
36 | |||
37 | /* Register addresses */ | ||
38 | // .. tbc | ||
39 | |||
40 | /* Register settings for the supported samplerates: */ | ||
41 | // .. tbc | ||
42 | |||
43 | #endif /* _WM8985_H */ | ||