diff options
author | Jack Yu <jack.yu@realtek.com> | 2021-06-08 01:22:35 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2021-06-08 15:36:37 +0300 |
commit | e343d34a9c912fc5c321e2a9fbc02e9dc9534ade (patch) | |
tree | dc1c049db6462334dc6051f94ae79ecb362fdadc /sound/soc/codecs/rt715-sdca.c | |
parent | dbc07517ab173688ef11234d1099bc1e24e4f14b (diff) | |
download | linux-e343d34a9c912fc5c321e2a9fbc02e9dc9534ade.tar.xz |
ASoC: rt715-sdca: fix clock stop prepare timeout issue
Fix clock stop prepare timeout issue (#2853).
The trigger of internal circuit which belong to
“SDCA preset stuffs” was not set correctly in previous driver,
which could block clock_stop_preparation state.
Add the correct register setting to fix it.
Fixes: 20d17057f0a8c ('ASoC: rt715-sdca: Add RT715 sdca vendor-specific driver')
Signed-off-by: Jack Yu <jack.yu@realtek.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210607222239.582139-12-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/codecs/rt715-sdca.c')
-rw-r--r-- | sound/soc/codecs/rt715-sdca.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/codecs/rt715-sdca.c b/sound/soc/codecs/rt715-sdca.c index d82166f1a378..66e166568c50 100644 --- a/sound/soc/codecs/rt715-sdca.c +++ b/sound/soc/codecs/rt715-sdca.c @@ -1054,6 +1054,9 @@ int rt715_sdca_io_init(struct device *dev, struct sdw_slave *slave) rt715_sdca_index_update_bits(rt715, RT715_VENDOR_REG, RT715_REV_1, 0x40, 0x40); } + /* DFLL Calibration trigger */ + rt715_sdca_index_update_bits(rt715, RT715_VENDOR_REG, + RT715_DFLL_VAD, 0x1, 0x1); /* trigger mode = VAD enable */ regmap_write(rt715->regmap, SDW_SDCA_CTL(FUN_MIC_ARRAY, RT715_SDCA_SMPU_TRIG_ST_EN, |