kernel_optimize_test/sound/soc/codecs
Hebbar, Gururaja c9fe573a65 ASoC: tlv320aic3x: Fix codec pll configure bug
In sound/soc/codecs/tlv320aic3x.c

        data = snd_soc_read(codec, AIC3X_PLL_PROGA_REG);
        snd_soc_write(codec, AIC3X_PLL_PROGA_REG,
                      data | (pll_p << PLLP_SHIFT));

In the above code, pll-p value is OR'ed with previous value without
clearing it. Bug is not seen if pll-p value doesn't change across
Sampling frequency.

However on some platforms (like AM335x EVM-SK), pll-p may have different
values across different sampling frequencies. In such case, above code
configures the pll with a wrong value.
Because of this bug, when a audio stream is played with pll value
different from previous stream, audio is heard as differently(like its
stretched).

Signed-off-by: Hebbar, Gururaja <gururaja.hebbar@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@vger.kernel.org
2012-06-29 08:18:03 +01:00
..
88pm860x-codec.c
88pm860x-codec.h
ac97.c
ad193x.c
ad193x.h
ad1836.c
ad1836.h
ad1980.c
ad1980.h
ad73311.c
ad73311.h
adau1373.c
adau1373.h
adau1701.c
adau1701.h
adav80x.c
adav80x.h
ads117x.c
ak4104.c
ak4535.c
ak4535.h
ak4641.c
ak4641.h
ak4642.c
ak4671.c
ak4671.h
alc5623.c
alc5623.h
alc5632.c
alc5632.h
cq93vc.c
cs42l51.c
cs42l51.h
cs42l52.c
cs42l52.h
cs42l73.c
cs42l73.h
cs4270.c
cs4271.c
cx20442.c
cx20442.h
da7210.c
dfbmcs320.c
dmic.c
jz4740.c
Kconfig
l3.c
lm4857.c
lm49453.c
lm49453.h
Makefile
max9768.c
max9850.c
max9850.h
max9877.c
max9877.h
max98088.c
max98088.h
max98095.c
max98095.h
mc13783.c
mc13783.h
ml26124.c
ml26124.h
omap-hdmi.c
pcm3008.c
pcm3008.h
rt5631.c
rt5631.h
sgtl5000.c
sgtl5000.h
sigmadsp.c
sigmadsp.h
sn95031.c
sn95031.h
spdif_transciever.c
ssm2602.c
ssm2602.h
sta32x.c
sta32x.h
stac9766.c
stac9766.h
tlv320aic3x.c ASoC: tlv320aic3x: Fix codec pll configure bug 2012-06-29 08:18:03 +01:00
tlv320aic3x.h ASoC: tlv320aic3x: Fix codec pll configure bug 2012-06-29 08:18:03 +01:00
tlv320aic23.c
tlv320aic23.h
tlv320aic26.c
tlv320aic26.h
tlv320aic32x4.c
tlv320aic32x4.h
tlv320dac33.c
tlv320dac33.h
tpa6130a2.c
tpa6130a2.h
twl4030.c
twl6040.c
twl6040.h
uda134x.c
uda134x.h
uda1380.c
uda1380.h
wl1273.c
wl1273.h
wm_hubs.c
wm_hubs.h
wm1250-ev1.c
wm2000.c
wm2000.h
wm2200.c
wm2200.h
wm5100-tables.c
wm5100.c
wm5100.h
wm8350.c
wm8350.h
wm8400.c
wm8400.h
wm8510.c
wm8510.h
wm8523.c
wm8523.h
wm8580.c
wm8580.h
wm8711.c
wm8711.h
wm8727.c
wm8728.c
wm8728.h
wm8731.c
wm8731.h
wm8737.c
wm8737.h
wm8741.c
wm8741.h
wm8750.c
wm8750.h
wm8753.c
wm8753.h
wm8770.c
wm8770.h
wm8776.c
wm8776.h
wm8782.c
wm8804.c
wm8804.h
wm8900.c
wm8900.h
wm8903.c
wm8903.h
wm8904.c
wm8904.h
wm8940.c
wm8940.h
wm8955.c
wm8955.h
wm8958-dsp2.c
wm8960.c
wm8960.h
wm8961.c
wm8961.h
wm8962.c
wm8962.h
wm8971.c
wm8971.h
wm8974.c
wm8974.h
wm8978.c
wm8978.h
wm8983.c
wm8983.h
wm8985.c
wm8985.h
wm8988.c
wm8988.h
wm8990.c
wm8990.h
wm8991.c
wm8991.h
wm8993.c
wm8993.h
wm8994.c
wm8994.h
wm8995.c
wm8995.h
wm8996.c
wm8996.h
wm9081.c
wm9081.h
wm9090.c
wm9090.h
wm9705.c
wm9705.h
wm9712.c
wm9712.h
wm9713.c
wm9713.h