summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNils Wallménius <nils@rockbox.org>2008-12-27 22:56:29 +0000
committerNils Wallménius <nils@rockbox.org>2008-12-27 22:56:29 +0000
commit9711b1e2e32fbd8ad182712f57346a504a795f48 (patch)
treed64c50f5a65a658095cf6a031840875b2b556f27
parent8852154b4d7470d4de577120998fc2d3d5701bf0 (diff)
downloadrockbox-9711b1e2e32fbd8ad182712f57346a504a795f48.zip
rockbox-9711b1e2e32fbd8ad182712f57346a504a795f48.tar.gz
rockbox-9711b1e2e32fbd8ad182712f57346a504a795f48.tar.bz2
rockbox-9711b1e2e32fbd8ad182712f57346a504a795f48.tar.xz
Gigabeat S, use saner input volume on the line in used for fm to have fm volume at similar volume as playback. Add a few comments.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19602 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/audio/wm8978.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/firmware/drivers/audio/wm8978.c b/firmware/drivers/audio/wm8978.c
index d8bf050..ee881fb 100644
--- a/firmware/drivers/audio/wm8978.c
+++ b/firmware/drivers/audio/wm8978.c
@@ -227,12 +227,15 @@ void audiohw_postinit(void)
wmc_write(WMC_DAC_CONTROL, WMC_DACOSR_128 | WMC_AMUTE);
wmc_set(WMC_INPUT_CTRL, WMC_R2_2INPPGA | WMC_L2_2INPPGA);
- wmc_set(WMC_LEFT_INP_PGA_GAIN_CTRL, 0x3f);
- wmc_set(WMC_RIGHT_INP_PGA_GAIN_CTRL, 0x3f);
- wmc_set(WMC_LEFT_INP_PGA_GAIN_CTRL, 1<<8);
- wmc_set(WMC_RIGHT_INP_PGA_GAIN_CTRL, 1<<8);
- wmc_set(WMC_LEFT_ADC_BOOST_CTRL, (7<<3));
- wmc_set(WMC_RIGHT_ADC_BOOST_CTRL, (7<<3));
+ /* set PGA volumes to 0dB and enable zero cross */
+ wmc_set(WMC_LEFT_INP_PGA_GAIN_CTRL, 0x10 | 1 << 7);
+ wmc_set(WMC_RIGHT_INP_PGA_GAIN_CTRL, 0x10 | 1 << 7);
+ /* write to INPPGAUPDATE to actually change voulme */
+ wmc_set(WMC_LEFT_INP_PGA_GAIN_CTRL, 1 << 8);
+ wmc_set(WMC_RIGHT_INP_PGA_GAIN_CTRL, 1 << 8);
+ /* set boost gain to 0dB */
+ wmc_set(WMC_LEFT_ADC_BOOST_CTRL, (5 << 4));
+ wmc_set(WMC_RIGHT_ADC_BOOST_CTRL, (5 << 4));
/* Specific to HW clocking */
wmc_write_masked(WMC_CLOCK_GEN_CTRL, WMC_BCLKDIV_4 | WMC_MS,