diff options
Diffstat (limited to 'firmware/drivers/audio/wm8978.c')
-rw-r--r-- | firmware/drivers/audio/wm8978.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/firmware/drivers/audio/wm8978.c b/firmware/drivers/audio/wm8978.c index c2c19ca7be..6a7c974f43 100644 --- a/firmware/drivers/audio/wm8978.c +++ b/firmware/drivers/audio/wm8978.c | |||
@@ -144,12 +144,12 @@ static void wmc_write(unsigned int reg, unsigned int val) | |||
144 | wmcodec_write(reg, val); | 144 | wmcodec_write(reg, val); |
145 | } | 145 | } |
146 | 146 | ||
147 | static void wmc_set(unsigned int reg, unsigned int bits) | 147 | void wmc_set(unsigned int reg, unsigned int bits) |
148 | { | 148 | { |
149 | wmc_write(reg, wmc_regs[reg] | bits); | 149 | wmc_write(reg, wmc_regs[reg] | bits); |
150 | } | 150 | } |
151 | 151 | ||
152 | static void wmc_clear(unsigned int reg, unsigned int bits) | 152 | void wmc_clear(unsigned int reg, unsigned int bits) |
153 | { | 153 | { |
154 | wmc_write(reg, wmc_regs[reg] & ~bits); | 154 | wmc_write(reg, wmc_regs[reg] & ~bits); |
155 | } | 155 | } |
@@ -226,6 +226,14 @@ void audiohw_postinit(void) | |||
226 | wmc_write(WMC_AUDIO_INTERFACE, WMC_WL_16 | WMC_FMT_I2S); | 226 | wmc_write(WMC_AUDIO_INTERFACE, WMC_WL_16 | WMC_FMT_I2S); |
227 | wmc_write(WMC_DAC_CONTROL, WMC_DACOSR_128 | WMC_AMUTE); | 227 | wmc_write(WMC_DAC_CONTROL, WMC_DACOSR_128 | WMC_AMUTE); |
228 | 228 | ||
229 | wmc_set(WMC_INPUT_CTRL, WMC_R2_2INPPGA | WMC_L2_2INPPGA); | ||
230 | wmc_set(WMC_LEFT_INP_PGA_GAIN_CTRL, 0x3f); | ||
231 | wmc_set(WMC_RIGHT_INP_PGA_GAIN_CTRL, 0x3f); | ||
232 | wmc_set(WMC_LEFT_INP_PGA_GAIN_CTRL, 1<<8); | ||
233 | wmc_set(WMC_RIGHT_INP_PGA_GAIN_CTRL, 1<<8); | ||
234 | wmc_set(WMC_LEFT_ADC_BOOST_CTRL, (7<<3)); | ||
235 | wmc_set(WMC_RIGHT_ADC_BOOST_CTRL, (7<<3)); | ||
236 | |||
229 | /* Specific to HW clocking */ | 237 | /* Specific to HW clocking */ |
230 | wmc_write_masked(WMC_CLOCK_GEN_CTRL, WMC_BCLKDIV_4 | WMC_MS, | 238 | wmc_write_masked(WMC_CLOCK_GEN_CTRL, WMC_BCLKDIV_4 | WMC_MS, |
231 | WMC_BCLKDIV | WMC_MS | WMC_CLKSEL); | 239 | WMC_BCLKDIV | WMC_MS | WMC_CLKSEL); |