Skip to contentSkip to conversation

ASoC: wm8962: Do not call configure_bclk() inside wm8962_set_dai_sysclk()

PATCH Applied Fabio Estevam 2 participants 2 messages Jul 19, 2013

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 ASoC: wm8962: Do not call configure_bclk() inside wm8962_set_dai_sysclk()

From: Fabio Estevam <[email protected]>

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

---
Changes since v1:
- Remove wm8962_configure_bclk() from wm8962_set_dai_sysclk

 sound/soc/codecs/wm8962.c | 2 --
 1 file changed, 2 deletions(-)
sound/soc/codecs/wm8962.c +0 -2
index e2de9ec..8b8905d 100644
@@ -2621,8 +2621,6 @@ static int wm8962_set_dai_sysclk(struct snd_soc_dai *dai, int clk_id,
 
 	wm8962->sysclk_rate = freq;
 
-	wm8962_configure_bclk(codec);
-
 	return 0;
 }
 
Signature · 1 line
1.8.1.2
maintainer Applied
#1 lore raw
Quoted 3 lines · Fabio Estevam

From: Fabio Estevam <[email protected]>

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

Applied, thanks.