summaryrefslogtreecommitdiff
path: root/sound/soc
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2017-02-21 15:48:43 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2017-02-21 15:48:42 -0800
commit0382b3bdb85d868c8807e9b718ea962b8dae4ec2 (patch)
tree2078c5ce87998543c9a8dadaf577e81bb13c1d8d /sound/soc
parente4bd10339bb3119ff26816afe0280c89abe6064e (diff)
parent6f5b527c178aab907353234d5d2acfc4ec14b44b (diff)
Merge "ASoC: msm_sdw: Fix wsa881x random speaker mute"
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/codecs/msm_sdw/msm_sdw_cdc.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c b/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c
index 850238764d87..f4a8fe7778fd 100644
--- a/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c
+++ b/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c
@@ -1036,6 +1036,13 @@ static int msm_sdw_swrm_read(void *handle, int reg)
__func__, reg);
sdw_rd_addr_base = MSM_SDW_AHB_BRIDGE_RD_ADDR_0;
sdw_rd_data_base = MSM_SDW_AHB_BRIDGE_RD_DATA_0;
+
+ /*
+ * Add sleep as SWR slave access read takes time.
+ * Allow for RD_DONE to complete for previous register if any.
+ */
+ usleep_range(50, 55);
+
/* read_lock */
mutex_lock(&msm_sdw->sdw_read_lock);
ret = regmap_bulk_write(msm_sdw->regmap, sdw_rd_addr_base,