[alsa-devel] [PATCH] ASoC: snd_soc_tas5086: Reinit register values on probe
Pascal Huerst
pascal.huerst at gmail.com
Wed Mar 25 16:29:39 CET 2015
If the machine driver has been un/reloaded, the register values of
the codec driver have to be reinitialized in order to run properly.
Signed-off-by: Pascal Huerst <pascal.huerst at gmail.com>
---
sound/soc/codecs/tas5086.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/sound/soc/codecs/tas5086.c b/sound/soc/codecs/tas5086.c
index 249ef5c..cd19171 100644
--- a/sound/soc/codecs/tas5086.c
+++ b/sound/soc/codecs/tas5086.c
@@ -851,10 +851,16 @@ static int tas5086_probe(struct snd_soc_codec *codec)
}
tas5086_reset(priv);
+ regcache_mark_dirty(priv->regmap);
+
ret = tas5086_init(codec->dev, priv);
if (ret < 0)
goto exit_disable_regulators;
+ ret = regcache_sync(priv->regmap);
+ if (ret < 0)
+ goto exit_disable_regulators;
+
/* set master volume to 0 dB */
ret = regmap_write(priv->regmap, TAS5086_MASTER_VOL, 0x30);
if (ret < 0)
--
1.9.3
More information about the Alsa-devel
mailing list