summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorDan Murphy <dmurphy@ti.com>2020-07-30 16:24:19 +0200
committerMark Brown <broonie@kernel.org>2020-07-30 22:00:27 +0200
commit982f4a4134893cd48c466e7a56422d7c65837d10 (patch)
tree3e84458ec74f575ec95cb0b6af8bc6536d3f8f38 /sound
parentASoC: tlv320adcx140: Fix GPO register start address (diff)
downloadlinux-982f4a4134893cd48c466e7a56422d7c65837d10.tar.xz
linux-982f4a4134893cd48c466e7a56422d7c65837d10.zip
ASoC: tlv320adcx140: Move device reset to before programming
Reset the device before programming the registers or all programming will be lost as the device resets registers to default settings. Signed-off-by: Dan Murphy <dmurphy@ti.com> Link: https://lore.kernel.org/r/20200730142419.28205-2-dmurphy@ti.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/tlv320adcx140.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sound/soc/codecs/tlv320adcx140.c b/sound/soc/codecs/tlv320adcx140.c
index fc7616dcf9b5..5cd50d841177 100644
--- a/sound/soc/codecs/tlv320adcx140.c
+++ b/sound/soc/codecs/tlv320adcx140.c
@@ -838,6 +838,10 @@ static int adcx140_codec_probe(struct snd_soc_component *component)
bias_cfg = bias_source << ADCX140_MIC_BIAS_SHIFT | vref_source;
+ ret = adcx140_reset(adcx140);
+ if (ret)
+ goto out;
+
pdm_count = device_property_count_u32(adcx140->dev,
"ti,pdm-edge-select");
if (pdm_count <= ADCX140_NUM_PDM_EDGES && pdm_count > 0) {
@@ -885,10 +889,6 @@ static int adcx140_codec_probe(struct snd_soc_component *component)
if (ret)
goto out;
- ret = adcx140_reset(adcx140);
- if (ret)
- goto out;
-
if (adcx140->supply_areg == NULL)
sleep_cfg_val |= ADCX140_AREG_INTERNAL;