diff options
-rw-r--r-- | firmware/SOURCES | 2 | ||||
-rw-r--r-- | firmware/export/tcc780x.h | 17 | ||||
-rw-r--r-- | firmware/target/arm/tcc780x/pcm-tcc780x.c (renamed from firmware/target/arm/tcc780x/cowond2/pcm-cowond2.c) | 22 | ||||
-rw-r--r-- | firmware/target/arm/tcc780x/system-tcc780x.c | 9 | ||||
-rw-r--r-- | firmware/target/arm/wmcodec-telechips.c | 1 |
5 files changed, 30 insertions, 21 deletions
diff --git a/firmware/SOURCES b/firmware/SOURCES index 6acf81d76b..bf4fb86af4 100644 --- a/firmware/SOURCES +++ b/firmware/SOURCES | |||
@@ -925,7 +925,7 @@ target/arm/tcc780x/kernel-tcc780x.c | |||
925 | target/arm/tcc780x/timer-tcc780x.c | 925 | target/arm/tcc780x/timer-tcc780x.c |
926 | target/arm/wmcodec-telechips.c | 926 | target/arm/wmcodec-telechips.c |
927 | target/arm/tcc780x/debug-tcc780x.c | 927 | target/arm/tcc780x/debug-tcc780x.c |
928 | target/arm/tcc780x/cowond2/pcm-cowond2.c | 928 | target/arm/tcc780x/pcm-tcc780x.c |
929 | #endif /* BOOTLOADER */ | 929 | #endif /* BOOTLOADER */ |
930 | #endif /* SIMULATOR */ | 930 | #endif /* SIMULATOR */ |
931 | #endif /* COWON_D2 */ | 931 | #endif /* COWON_D2 */ |
diff --git a/firmware/export/tcc780x.h b/firmware/export/tcc780x.h index cff0a2e576..d88d05c417 100644 --- a/firmware/export/tcc780x.h +++ b/firmware/export/tcc780x.h | |||
@@ -73,7 +73,7 @@ | |||
73 | #define PCLKCFG10 (*(volatile unsigned long *)0xF3000048) | 73 | #define PCLKCFG10 (*(volatile unsigned long *)0xF3000048) |
74 | #define PCLKCFG11 (*(volatile unsigned long *)0xF300004C) | 74 | #define PCLKCFG11 (*(volatile unsigned long *)0xF300004C) |
75 | #define PCLK_ADC (*(volatile unsigned long *)0xF3000050) | 75 | #define PCLK_ADC (*(volatile unsigned long *)0xF3000050) |
76 | #define PCLKCFG13 (*(volatile unsigned long *)0xF3000054) | 76 | #define PCLK_DAI (*(volatile unsigned long *)0xF3000054) |
77 | #define PCLKCFG14 (*(volatile unsigned long *)0xF3000058) | 77 | #define PCLKCFG14 (*(volatile unsigned long *)0xF3000058) |
78 | #define PCLK_RFREQ (*(volatile unsigned long *)0xF300005C) | 78 | #define PCLK_RFREQ (*(volatile unsigned long *)0xF300005C) |
79 | #define PCLKCFG16 (*(volatile unsigned long *)0xF3000060) | 79 | #define PCLKCFG16 (*(volatile unsigned long *)0xF3000060) |
@@ -171,6 +171,21 @@ | |||
171 | #define SDCFG1 (*(volatile unsigned long *)0xF1001000) | 171 | #define SDCFG1 (*(volatile unsigned long *)0xF1001000) |
172 | #define MCFG1 (*(volatile unsigned long *)0xF1001008) | 172 | #define MCFG1 (*(volatile unsigned long *)0xF1001008) |
173 | 173 | ||
174 | /* DAI */ | ||
175 | |||
176 | #define DADO_L0 (*(volatile unsigned long *)0xF0059020) | ||
177 | #define DADO_R0 (*(volatile unsigned long *)0xF0059024) | ||
178 | #define DADO_L1 (*(volatile unsigned long *)0xF0059028) | ||
179 | #define DADO_R1 (*(volatile unsigned long *)0xF005902c) | ||
180 | #define DADO_L2 (*(volatile unsigned long *)0xF0059030) | ||
181 | #define DADO_R2 (*(volatile unsigned long *)0xF0059034) | ||
182 | #define DADO_L3 (*(volatile unsigned long *)0xF0059038) | ||
183 | #define DADO_R3 (*(volatile unsigned long *)0xF005903c) | ||
184 | #define DADO_L(_x_) (*(volatile unsigned int *)(0xF0059020+8*(_x_))) | ||
185 | #define DADO_R(_x_) (*(volatile unsigned int *)(0xF0059024+8*(_x_))) | ||
186 | #define DAMR (*(volatile unsigned long *)0xF0059040) | ||
187 | #define DAVC (*(volatile unsigned long *)0xF0059044) | ||
188 | |||
174 | /* Misc */ | 189 | /* Misc */ |
175 | 190 | ||
176 | #define ECFG0 (*(volatile unsigned long *)0xF300500C) | 191 | #define ECFG0 (*(volatile unsigned long *)0xF300500C) |
diff --git a/firmware/target/arm/tcc780x/cowond2/pcm-cowond2.c b/firmware/target/arm/tcc780x/pcm-tcc780x.c index 2d50f042d9..a9312749c8 100644 --- a/firmware/target/arm/tcc780x/cowond2/pcm-cowond2.c +++ b/firmware/target/arm/tcc780x/pcm-tcc780x.c | |||
@@ -25,62 +25,62 @@ | |||
25 | 25 | ||
26 | void pcm_postinit(void) | 26 | void pcm_postinit(void) |
27 | { | 27 | { |
28 | #warning function not implemented | ||
29 | } | 28 | } |
30 | 29 | ||
31 | const void * pcm_play_dma_get_peak_buffer(int *count) | 30 | const void * pcm_play_dma_get_peak_buffer(int *count) |
32 | { | 31 | { |
33 | #warning function not implemented | ||
34 | (void) count; | 32 | (void) count; |
35 | return 0; | 33 | return 0; |
36 | } | 34 | } |
37 | 35 | ||
38 | void pcm_play_dma_init(void) | 36 | void pcm_play_dma_init(void) |
39 | { | 37 | { |
40 | #warning function not implemented | ||
41 | } | 38 | } |
42 | 39 | ||
43 | void pcm_apply_settings(void) | 40 | void pcm_apply_settings(void) |
44 | { | 41 | { |
45 | #warning function not implemented | ||
46 | } | 42 | } |
47 | 43 | ||
48 | void pcm_set_frequency(unsigned int frequency) | 44 | void pcm_set_frequency(unsigned int frequency) |
49 | { | 45 | { |
50 | #warning function not implemented | ||
51 | (void) frequency; | 46 | (void) frequency; |
52 | } | 47 | } |
53 | 48 | ||
54 | void pcm_play_dma_start(const void *addr, size_t size) | 49 | void pcm_play_dma_start(const void *addr, size_t size) |
55 | { | 50 | { |
56 | #warning function not implemented | ||
57 | (void) addr; | 51 | (void) addr; |
58 | (void) size; | 52 | (void) size; |
59 | } | 53 | } |
60 | 54 | ||
61 | void pcm_play_dma_stop(void) | 55 | void pcm_play_dma_stop(void) |
62 | { | 56 | { |
63 | #warning function not implemented | ||
64 | } | 57 | } |
65 | 58 | ||
66 | void pcm_play_lock(void) | 59 | void pcm_play_lock(void) |
67 | { | 60 | { |
68 | #warning function not implemented | ||
69 | } | 61 | } |
70 | 62 | ||
71 | void pcm_play_unlock(void) | 63 | void pcm_play_unlock(void) |
72 | { | 64 | { |
73 | #warning function not implemented | ||
74 | } | 65 | } |
75 | 66 | ||
76 | void pcm_play_dma_pause(bool pause) | 67 | void pcm_play_dma_pause(bool pause) |
77 | { | 68 | { |
78 | #warning function not implemented | ||
79 | (void) pause; | 69 | (void) pause; |
80 | } | 70 | } |
81 | 71 | ||
82 | size_t pcm_get_bytes_waiting(void) | 72 | size_t pcm_get_bytes_waiting(void) |
83 | { | 73 | { |
84 | #warning function not implemented | ||
85 | return 0; | 74 | return 0; |
86 | } | 75 | } |
76 | |||
77 | void fiq_handler(void) | ||
78 | { | ||
79 | /* Clear FIQ status */ | ||
80 | CREQ = DAI_TX_IRQ_MASK | DAI_RX_IRQ_MASK; | ||
81 | |||
82 | /* Return from FIQ */ | ||
83 | asm volatile ( | ||
84 | "subs pc, lr, #4 \r\n" | ||
85 | ); | ||
86 | } | ||
diff --git a/firmware/target/arm/tcc780x/system-tcc780x.c b/firmware/target/arm/tcc780x/system-tcc780x.c index c109b8ddda..54cd3ffcb6 100644 --- a/firmware/target/arm/tcc780x/system-tcc780x.c +++ b/firmware/target/arm/tcc780x/system-tcc780x.c | |||
@@ -142,12 +142,6 @@ void irq_handler(void) | |||
142 | "subs pc, lr, #4 \n"); /* Return from IRQ */ | 142 | "subs pc, lr, #4 \n"); /* Return from IRQ */ |
143 | } | 143 | } |
144 | 144 | ||
145 | void fiq_handler(void) | ||
146 | { | ||
147 | asm volatile ( | ||
148 | "subs pc, lr, #4 \r\n" | ||
149 | ); | ||
150 | } | ||
151 | #endif /* !defined(BOOTLOADER) */ | 145 | #endif /* !defined(BOOTLOADER) */ |
152 | 146 | ||
153 | 147 | ||
@@ -254,7 +248,8 @@ void system_init(void) | |||
254 | 248 | ||
255 | #if !defined(BOOTLOADER) | 249 | #if !defined(BOOTLOADER) |
256 | 250 | ||
257 | IRQSEL = -1; /* set all interrupts to be IRQs not FIQs */ | 251 | /* Set DAI interrupts as FIQ, all others are IRQ. */ |
252 | IRQSEL = ~(DAI_RX_IRQ_MASK | DAI_TX_IRQ_MASK); | ||
258 | 253 | ||
259 | POL = 0x200108; /* IRQs 3,8,21 active low (as OF) */ | 254 | POL = 0x200108; /* IRQs 3,8,21 active low (as OF) */ |
260 | MODE = 0x20ce07c0; /* IRQs 6-10,17-19,22-23,29 level-triggered (as OF) */ | 255 | MODE = 0x20ce07c0; /* IRQs 6-10,17-19,22-23,29 level-triggered (as OF) */ |
diff --git a/firmware/target/arm/wmcodec-telechips.c b/firmware/target/arm/wmcodec-telechips.c index 851158ca8d..0e42df9c20 100644 --- a/firmware/target/arm/wmcodec-telechips.c +++ b/firmware/target/arm/wmcodec-telechips.c | |||
@@ -38,7 +38,6 @@ | |||
38 | 38 | ||
39 | void audiohw_init(void) | 39 | void audiohw_init(void) |
40 | { | 40 | { |
41 | #warning function not implemented | ||
42 | } | 41 | } |
43 | 42 | ||
44 | void wmcodec_write(int reg, int data) | 43 | void wmcodec_write(int reg, int data) |