ASoC: wm8962: Do not call configure_bclk() inside wm8962_set_dai_sysclk()
authorFabio Estevam <fabio.estevam@freescale.com>
Fri, 19 Jul 2013 13:22:21 +0000 (10:22 -0300)
committerMark Brown <broonie@linaro.org>
Fri, 19 Jul 2013 17:45:02 +0000 (18:45 +0100)
commit444fc4b369f9341d2cbcffe2d1ffde4cad5b4945
tree8d234346c036767e84322f11cccc7c3d632e37a3
parentad81f0545ef01ea651886dddac4bef6cec930092
ASoC: wm8962: Do not call configure_bclk() inside wm8962_set_dai_sysclk()

Currently after playing any audio file, we get the following error message:

$ aplay clarinet.wav
Playing WAVE 'clarinet.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
$ wm8962 0-001a: Unsupported sysclk ratio 544

This error message appears about 5 seconds after the audio playback has
finished.

Quoting Mark Brown [1]:

"The issue here is triggered by the machine
switching from the FLL to direct MCLK usage where the MCLK isn't
generating a useful ratio.

I suspect we should just kill the configure_bclk() in set_sysclk(), that
one isn't safe as we can't reconfigure a live SYSCLK and it's probably
the one that generates your warnings."

Confirmed that the "Unsupported sysclk ratio" error message comes from
wm8962_set_dai_sysclk(), so get rid of wm8962_configure_bclk() inside this
function.

[1] http://mailman.alsa-project.org/pipermail/alsa-devel/2013-July/064241.html

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/codecs/wm8962.c