diff options
Diffstat (limited to 'firmware/target')
-rw-r--r-- | firmware/target/arm/audio-pp.c | 7 | ||||
-rw-r--r-- | firmware/target/arm/system-pp502x.c | 10 | ||||
-rw-r--r-- | firmware/target/coldfire/pcm-coldfire.c | 8 |
3 files changed, 18 insertions, 7 deletions
diff --git a/firmware/target/arm/audio-pp.c b/firmware/target/arm/audio-pp.c index 603bbad5fe..82c5545a3f 100644 --- a/firmware/target/arm/audio-pp.c +++ b/firmware/target/arm/audio-pp.c | |||
@@ -40,7 +40,6 @@ void audio_set_source(int source, unsigned flags) | |||
40 | { | 40 | { |
41 | default: /* playback - no recording */ | 41 | default: /* playback - no recording */ |
42 | source = AUDIO_SRC_PLAYBACK; | 42 | source = AUDIO_SRC_PLAYBACK; |
43 | #ifdef HAVE_RECORDING | ||
44 | case AUDIO_SRC_PLAYBACK: | 43 | case AUDIO_SRC_PLAYBACK: |
45 | if (source != last_source) | 44 | if (source != last_source) |
46 | { | 45 | { |
@@ -48,6 +47,7 @@ void audio_set_source(int source, unsigned flags) | |||
48 | audiohw_set_monitor(false); | 47 | audiohw_set_monitor(false); |
49 | } | 48 | } |
50 | break; | 49 | break; |
50 | #ifdef HAVE_MIC_REC | ||
51 | case AUDIO_SRC_MIC: /* recording only */ | 51 | case AUDIO_SRC_MIC: /* recording only */ |
52 | if (source != last_source) | 52 | if (source != last_source) |
53 | { | 53 | { |
@@ -55,7 +55,8 @@ void audio_set_source(int source, unsigned flags) | |||
55 | audiohw_set_monitor(false); | 55 | audiohw_set_monitor(false); |
56 | } | 56 | } |
57 | break; | 57 | break; |
58 | 58 | #endif | |
59 | #ifdef HAVE_LINEIN_REC | ||
59 | case AUDIO_SRC_LINEIN: /* recording only */ | 60 | case AUDIO_SRC_LINEIN: /* recording only */ |
60 | if (source != last_source) | 61 | if (source != last_source) |
61 | { | 62 | { |
@@ -64,7 +65,7 @@ void audio_set_source(int source, unsigned flags) | |||
64 | } | 65 | } |
65 | break; | 66 | break; |
66 | #endif | 67 | #endif |
67 | #if CONFIG_TUNER | 68 | #ifdef HAVE_FMRADIO_REC |
68 | case AUDIO_SRC_FMRADIO: /* recording and playback */ | 69 | case AUDIO_SRC_FMRADIO: /* recording and playback */ |
69 | if (!recording) | 70 | if (!recording) |
70 | audiohw_set_recvol(0, 0, AUDIO_GAIN_LINEIN); | 71 | audiohw_set_recvol(0, 0, AUDIO_GAIN_LINEIN); |
diff --git a/firmware/target/arm/system-pp502x.c b/firmware/target/arm/system-pp502x.c index 1f2d27a7b7..0148f3d9de 100644 --- a/firmware/target/arm/system-pp502x.c +++ b/firmware/target/arm/system-pp502x.c | |||
@@ -62,6 +62,11 @@ extern void clickwheel_int(void); | |||
62 | void irq(void) | 62 | void irq(void) |
63 | { | 63 | { |
64 | if(CURRENT_CORE == CPU) { | 64 | if(CURRENT_CORE == CPU) { |
65 | if (CPU_HI_INT_STAT) | ||
66 | { | ||
67 | gui_syncsplash(0, "%08X %08X", inl(0x6000414c), CPU_HI_INT_STAT); | ||
68 | } | ||
69 | |||
65 | if (CPU_INT_STAT & TIMER1_MASK) { | 70 | if (CPU_INT_STAT & TIMER1_MASK) { |
66 | #ifdef SANSA_E200 | 71 | #ifdef SANSA_E200 |
67 | if (GPIOF_INT_STAT & 0xff) | 72 | if (GPIOF_INT_STAT & 0xff) |
@@ -239,6 +244,11 @@ void system_init(void) | |||
239 | CPU_INT_CLR = -1; | 244 | CPU_INT_CLR = -1; |
240 | INT_FORCED_CLR = -1; | 245 | INT_FORCED_CLR = -1; |
241 | 246 | ||
247 | outl(0, 0x6000414c); | ||
248 | outl(0, 0x60004144); | ||
249 | |||
250 | // outl(0x80000, 0x6000414c); | ||
251 | |||
242 | GPIOA_INT_EN = 0; | 252 | GPIOA_INT_EN = 0; |
243 | GPIOB_INT_EN = 0; | 253 | GPIOB_INT_EN = 0; |
244 | GPIOC_INT_EN = 0; | 254 | GPIOC_INT_EN = 0; |
diff --git a/firmware/target/coldfire/pcm-coldfire.c b/firmware/target/coldfire/pcm-coldfire.c index b52e5e09b5..dc40dacf0e 100644 --- a/firmware/target/coldfire/pcm-coldfire.c +++ b/firmware/target/coldfire/pcm-coldfire.c | |||
@@ -22,7 +22,7 @@ | |||
22 | #include "logf.h" | 22 | #include "logf.h" |
23 | #include "audio.h" | 23 | #include "audio.h" |
24 | #include "sound.h" | 24 | #include "sound.h" |
25 | #if defined(HAVE_SPDIF_IN) || defined(HAVE_SPDIF_OUT) | 25 | #if defined(HAVE_SPDIF_REC) || defined(HAVE_SPDIF_OUT) |
26 | #include "spdif.h" | 26 | #include "spdif.h" |
27 | #endif | 27 | #endif |
28 | 28 | ||
@@ -276,7 +276,7 @@ void pcm_init(void) | |||
276 | audiohw_set_frequency(freq_ent[FPARM_FSEL]); | 276 | audiohw_set_frequency(freq_ent[FPARM_FSEL]); |
277 | coldfire_set_pllcr_audio_bits(PLLCR_SET_AUDIO_BITS_DEFPARM); | 277 | coldfire_set_pllcr_audio_bits(PLLCR_SET_AUDIO_BITS_DEFPARM); |
278 | 278 | ||
279 | #if defined(HAVE_SPDIF_IN) || defined(HAVE_SPDIF_OUT) | 279 | #if defined(HAVE_SPDIF_REC) || defined(HAVE_SPDIF_OUT) |
280 | spdif_init(); | 280 | spdif_init(); |
281 | #endif | 281 | #endif |
282 | /* Enable interrupt at level 6, priority 0 */ | 282 | /* Enable interrupt at level 6, priority 0 */ |
@@ -365,7 +365,7 @@ void pcm_rec_dma_start(void *addr, size_t size) | |||
365 | _pcm_apply_settings(!is_playback_monitoring()); | 365 | _pcm_apply_settings(!is_playback_monitoring()); |
366 | 366 | ||
367 | /* Start the DMA transfer.. */ | 367 | /* Start the DMA transfer.. */ |
368 | #ifdef HAVE_SPDIF_IN | 368 | #ifdef HAVE_SPDIF_REC |
369 | /* clear: ebu1cnew, valnogood, symbolerr, parityerr */ | 369 | /* clear: ebu1cnew, valnogood, symbolerr, parityerr */ |
370 | INTERRUPTCLEAR = (1 << 25) | (1 << 24) | (1 << 23) | (1 << 22); | 370 | INTERRUPTCLEAR = (1 << 25) | (1 << 24) | (1 << 23) | (1 << 22); |
371 | #endif | 371 | #endif |
@@ -462,7 +462,7 @@ void DMA1(void) | |||
462 | logf(" DCR1: %08x", DCR1); | 462 | logf(" DCR1: %08x", DCR1); |
463 | #endif | 463 | #endif |
464 | } | 464 | } |
465 | #ifdef HAVE_SPDIF_IN | 465 | #ifdef HAVE_SPDIF_REC |
466 | else if (DATAINCONTROL == 0xc038 && | 466 | else if (DATAINCONTROL == 0xc038 && |
467 | (INTERRUPTSTAT & ((1 << 24) | (1 << 23) | (1 << 22)))) | 467 | (INTERRUPTSTAT & ((1 << 24) | (1 << 23) | (1 << 22)))) |
468 | { | 468 | { |