summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2017-03-23 09:44:34 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2017-03-23 09:44:34 -0700
commit50c5bf4a56eefe9869dc278c6bf8b95a40e2dc34 (patch)
tree2725df8dd7834d5c592127590639ef3b4d02b042
parentd5d35b197ad370ba4474fe11798c039f95069f07 (diff)
parent9fab026308f10443d7a3b734e1a85f8a3b1d609b (diff)
Merge "ASoC: msm_sdw: Fix random mute on speaker when device switch"
-rw-r--r--sound/soc/codecs/msm_sdw/msm_sdw_cdc.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c b/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c
index f1ff4baae417..a962f33a85ba 100644
--- a/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c
+++ b/sound/soc/codecs/msm_sdw/msm_sdw_cdc.c
@@ -1044,7 +1044,7 @@ static int msm_sdw_swrm_read(void *handle, int reg)
* Add sleep as SWR slave access read takes time.
* Allow for RD_DONE to complete for previous register if any.
*/
- usleep_range(50, 55);
+ usleep_range(100, 105);
/* read_lock */
mutex_lock(&msm_sdw->sdw_read_lock);
@@ -1079,6 +1079,11 @@ static int msm_sdw_bulk_write(struct msm_sdw_priv *msm_sdw,
sdw_wr_addr_base = MSM_SDW_AHB_BRIDGE_WR_ADDR_0;
sdw_wr_data_base = MSM_SDW_AHB_BRIDGE_WR_DATA_0;
+ /*
+ * Add sleep as SWR slave write takes time.
+ * Allow for any previous pending write to complete.
+ */
+ usleep_range(50, 55);
for (i = 0; i < len; i += 2) {
/* First Write the Data to register */
ret = regmap_bulk_write(msm_sdw->regmap,