summaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorTimo Juhani Lindfors <timo.lindfors@iki.fi>2011-11-17 01:52:50 +0100
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-11-17 17:48:25 +0100
commit2391a0e06789a3f1718dee30b282562f7ed28c87 (patch)
treed8273b187d53305e3df5900c897ae459f9c4ca46 /sound/soc
parentASoC: fsl_ssi: properly initialize the sysfs attribute object (diff)
downloadlinux-2391a0e06789a3f1718dee30b282562f7ed28c87.tar.xz
linux-2391a0e06789a3f1718dee30b282562f7ed28c87.zip
ASoC: wm8753: Skip noop reconfiguration of DAI mode
This patch makes it possible to set DAI mode to its currently applied value even if codec is active. This is necessary to allow aplay -t raw -r 44100 -f S16_LE -c 2 < /dev/urandom & alsactl store -f backup.state alsactl restore -f backup.state to work without returning errors. This patch is based on a patch sent by Klaus Kurzmann <mok@fluxnetz.de>. Signed-off-by: Timo Juhani Lindfors <timo.lindfors@iki.fi> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/codecs/wm8753.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm8753.c b/sound/soc/codecs/wm8753.c
index a9504710bb69..3a629d0d690e 100644
--- a/sound/soc/codecs/wm8753.c
+++ b/sound/soc/codecs/wm8753.c
@@ -190,6 +190,9 @@ static int wm8753_set_dai(struct snd_kcontrol *kcontrol,
struct wm8753_priv *wm8753 = snd_soc_codec_get_drvdata(codec);
u16 ioctl;
+ if (wm8753->dai_func == ucontrol->value.integer.value[0])
+ return 0;
+
if (codec->active)
return -EBUSY;