Softly reset registers values on module probe

Signed-off-by: Kirill Marinushkin <kmarinush...@birdec.tech>
---
 sound/soc/codecs/pcm3060.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/sound/soc/codecs/pcm3060.c b/sound/soc/codecs/pcm3060.c
index 6714aa8d9026..543cb86fd764 100644
--- a/sound/soc/codecs/pcm3060.c
+++ b/sound/soc/codecs/pcm3060.c
@@ -287,6 +287,14 @@ int pcm3060_probe(struct device *dev)
        int rc;
        struct pcm3060_priv *priv = dev_get_drvdata(dev);
 
+       /* soft reset */
+       rc = regmap_update_bits(priv->regmap, PCM3060_REG64,
+                               PCM3060_REG_MRST, 0);
+       if (rc) {
+               dev_err(dev, "failed to reset component, rc=%d\n", rc);
+               return rc;
+       }
+
        if (dev->of_node)
                pcm3060_parse_dt(dev->of_node, priv);
 
-- 
2.13.6

Reply via email to