summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2008-11-15 23:48:19 +0000
committerMichael Sevakis <jethead71@rockbox.org>2008-11-15 23:48:19 +0000
commitdb5965ff9e615d6eadcf7819d2518f7944bc35c6 (patch)
tree123a47a29db92e95e3fbc4e2635e8a9508e7f7e9
parenta4c0660537dacfb15d26a0245d99e88c50ddaee5 (diff)
downloadrockbox-db5965ff9e615d6eadcf7819d2518f7944bc35c6.tar.gz
rockbox-db5965ff9e615d6eadcf7819d2518f7944bc35c6.zip
Gigabeat S/WM8978: Fix problem of volume getting silenced after settings are applied. There still seems to be a problem of cutting of voice samples from the beggining of clips when music isn't playing-- next to be investigated.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19109 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/audio/wm8978.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/firmware/drivers/audio/wm8978.c b/firmware/drivers/audio/wm8978.c
index e24770299b..31248db545 100644
--- a/firmware/drivers/audio/wm8978.c
+++ b/firmware/drivers/audio/wm8978.c
@@ -190,8 +190,8 @@ void audiohw_preinit(void)
190 sleep(HZ/10); 190 sleep(HZ/10);
191 191
192 /* 2. Mute all analogue outputs */ 192 /* 2. Mute all analogue outputs */
193 wmc_set(WMC_LOUT1_HP_VOLUME_CTRL, WMC_MUTE); 193 wmc_set(WMC_LOUT1_HP_VOLUME_CTRL, WMC_MUTE | HW_VOL_ANA_MIN);
194 wmc_set(WMC_ROUT1_HP_VOLUME_CTRL, WMC_MUTE); 194 wmc_set(WMC_ROUT1_HP_VOLUME_CTRL, WMC_MUTE | HW_VOL_ANA_MIN);
195 wmc_set(WMC_LOUT2_SPK_VOLUME_CTRL, WMC_MUTE); 195 wmc_set(WMC_LOUT2_SPK_VOLUME_CTRL, WMC_MUTE);
196 wmc_set(WMC_ROUT2_SPK_VOLUME_CTRL, WMC_MUTE); 196 wmc_set(WMC_ROUT2_SPK_VOLUME_CTRL, WMC_MUTE);
197 wmc_set(WMC_OUT3_MIXER_CTRL, WMC_MUTE); 197 wmc_set(WMC_OUT3_MIXER_CTRL, WMC_MUTE);
@@ -231,12 +231,6 @@ void audiohw_postinit(void)
231 wmc_write(WMC_CLOCK_GEN_CTRL, WMC_MCLKDIV_1_5 | WMC_BCLKDIV_8 | WMC_MS); 231 wmc_write(WMC_CLOCK_GEN_CTRL, WMC_MCLKDIV_1_5 | WMC_BCLKDIV_8 | WMC_MS);
232 wmc_write(WMC_ADDITIONAL_CTRL, WMC_SR_48KHZ); /* 44.1 */ 232 wmc_write(WMC_ADDITIONAL_CTRL, WMC_SR_48KHZ); /* 44.1 */
233 233
234 /* Initialize to minimum volume */
235 wmc_write_masked(WMC_LEFT_DAC_DIGITAL_VOL, HW_VOL_DIG_MIN, WMC_DVOL);
236 wmc_write_masked(WMC_LOUT1_HP_VOLUME_CTRL, HW_VOL_ANA_MIN, WMC_AVOL);
237 wmc_write_masked(WMC_RIGHT_DAC_DIGITAL_VOL, HW_VOL_DIG_MIN, WMC_DVOL);
238 wmc_write_masked(WMC_ROUT1_HP_VOLUME_CTRL, HW_VOL_ANA_MIN, WMC_AVOL);
239
240 /* ADC silenced */ 234 /* ADC silenced */
241 wmc_write_masked(WMC_LEFT_ADC_DIGITAL_VOL, 0x00, WMC_DVOL); 235 wmc_write_masked(WMC_LEFT_ADC_DIGITAL_VOL, 0x00, WMC_DVOL);
242 wmc_write_masked(WMC_RIGHT_ADC_DIGITAL_VOL, 0x00, WMC_DVOL); 236 wmc_write_masked(WMC_RIGHT_ADC_DIGITAL_VOL, 0x00, WMC_DVOL);