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)
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)
sleep(HZ/10);
/* 2. Mute all analogue outputs */
- wmc_set(WMC_LOUT1_HP_VOLUME_CTRL, WMC_MUTE);
- wmc_set(WMC_ROUT1_HP_VOLUME_CTRL, WMC_MUTE);
+ wmc_set(WMC_LOUT1_HP_VOLUME_CTRL, WMC_MUTE | HW_VOL_ANA_MIN);
+ wmc_set(WMC_ROUT1_HP_VOLUME_CTRL, WMC_MUTE | HW_VOL_ANA_MIN);
wmc_set(WMC_LOUT2_SPK_VOLUME_CTRL, WMC_MUTE);
wmc_set(WMC_ROUT2_SPK_VOLUME_CTRL, WMC_MUTE);
wmc_set(WMC_OUT3_MIXER_CTRL, WMC_MUTE);
@@ -231,12 +231,6 @@ void audiohw_postinit(void)
wmc_write(WMC_CLOCK_GEN_CTRL, WMC_MCLKDIV_1_5 | WMC_BCLKDIV_8 | WMC_MS);
wmc_write(WMC_ADDITIONAL_CTRL, WMC_SR_48KHZ); /* 44.1 */
- /* Initialize to minimum volume */
- wmc_write_masked(WMC_LEFT_DAC_DIGITAL_VOL, HW_VOL_DIG_MIN, WMC_DVOL);
- wmc_write_masked(WMC_LOUT1_HP_VOLUME_CTRL, HW_VOL_ANA_MIN, WMC_AVOL);
- wmc_write_masked(WMC_RIGHT_DAC_DIGITAL_VOL, HW_VOL_DIG_MIN, WMC_DVOL);
- wmc_write_masked(WMC_ROUT1_HP_VOLUME_CTRL, HW_VOL_ANA_MIN, WMC_AVOL);
-
/* ADC silenced */
wmc_write_masked(WMC_LEFT_ADC_DIGITAL_VOL, 0x00, WMC_DVOL);
wmc_write_masked(WMC_RIGHT_ADC_DIGITAL_VOL, 0x00, WMC_DVOL);