summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2013-09-07 00:52:36 +0200
committerAmaury Pouly <amaury.pouly@gmail.com>2013-09-07 00:52:36 +0200
commit070e27933c71c9dc58e411d365e25fabb29138fa (patch)
tree949e139f629844cbe5940daf9ad02ae0ee3a52f5
parenta1e557bbdd984c5f41dab9a25649c5ea92eaafc3 (diff)
downloadrockbox-070e27933c71c9dc58e411d365e25fabb29138fa.tar.gz
rockbox-070e27933c71c9dc58e411d365e25fabb29138fa.zip
imx233: fix red when target cannot record
Change-Id: Ia5f6b290da2f645021ef8becdfbac7436407ec0b
-rw-r--r--firmware/target/arm/imx233/audio-imx233.c6
-rw-r--r--firmware/target/arm/imx233/pcm-imx233.c3
2 files changed, 6 insertions, 3 deletions
diff --git a/firmware/target/arm/imx233/audio-imx233.c b/firmware/target/arm/imx233/audio-imx233.c
index b041450071..9e6082524f 100644
--- a/firmware/target/arm/imx233/audio-imx233.c
+++ b/firmware/target/arm/imx233/audio-imx233.c
@@ -75,8 +75,6 @@ static void select_audio_path(void)
75{ 75{
76#if defined(HAVE_RECORDING) 76#if defined(HAVE_RECORDING)
77 const bool recording = input_flags & SRCF_RECORDING; 77 const bool recording = input_flags & SRCF_RECORDING;
78#else
79 const bool recording = false;
80#endif 78#endif
81 79
82 switch(input_source) 80 switch(input_source)
@@ -87,7 +85,9 @@ static void select_audio_path(void)
87 /* fallthrough */ 85 /* fallthrough */
88 case AUDIO_SRC_PLAYBACK: 86 case AUDIO_SRC_PLAYBACK:
89 audiohw_set_monitor(false); 87 audiohw_set_monitor(false);
88#if defined(HAVE_RECORDING)
90 audiohw_disable_recording(); 89 audiohw_disable_recording();
90#endif
91 break; 91 break;
92 92
93#if defined(HAVE_RECORDING) && (INPUT_SRC_CAPS & SRC_CAP_MIC) 93#if defined(HAVE_RECORDING) && (INPUT_SRC_CAPS & SRC_CAP_MIC)
@@ -102,10 +102,12 @@ static void select_audio_path(void)
102 /* recording and playback */ 102 /* recording and playback */
103 case AUDIO_SRC_FMRADIO: 103 case AUDIO_SRC_FMRADIO:
104 audiohw_set_monitor(true); 104 audiohw_set_monitor(true);
105#if defined(HAVE_RECORDING)
105 if(recording) 106 if(recording)
106 audiohw_enable_recording(false); 107 audiohw_enable_recording(false);
107 else 108 else
108 audiohw_disable_recording(); 109 audiohw_disable_recording();
110#endif
109 break; 111 break;
110#endif /* (INPUT_SRC_CAPS & SRC_CAP_FMRADIO) */ 112#endif /* (INPUT_SRC_CAPS & SRC_CAP_FMRADIO) */
111 } 113 }
diff --git a/firmware/target/arm/imx233/pcm-imx233.c b/firmware/target/arm/imx233/pcm-imx233.c
index 07af090f38..9a5b136442 100644
--- a/firmware/target/arm/imx233/pcm-imx233.c
+++ b/firmware/target/arm/imx233/pcm-imx233.c
@@ -205,7 +205,7 @@ const void *pcm_play_dma_get_peak_buffer(int *count)
205 * we can only let the tranfer finish on stop. However if the transfer is very 205 * we can only let the tranfer finish on stop. However if the transfer is very
206 * long it could take a while. We work around this by splitting big transfers 206 * long it could take a while. We work around this by splitting big transfers
207 * into small burst to make sure we can stop quickly. */ 207 * into small burst to make sure we can stop quickly. */
208 208#ifdef HAVE_RECORDING
209static int adc_locked = 0; 209static int adc_locked = 0;
210static struct pcm_dma_command_t adc_dma; 210static struct pcm_dma_command_t adc_dma;
211 211
@@ -322,3 +322,4 @@ const void *pcm_rec_dma_get_peak_buffer(void)
322 struct imx233_dma_info_t info = imx233_dma_get_info(APB_AUDIO_ADC, DMA_INFO_BAR); 322 struct imx233_dma_info_t info = imx233_dma_get_info(APB_AUDIO_ADC, DMA_INFO_BAR);
323 return (void *)info.bar; 323 return (void *)info.bar;
324} 324}
325#endif /* HAVE_RECORDING */