summaryrefslogtreecommitdiff
path: root/drivers/soundwire/swr-wcd-ctrl.c
diff options
context:
space:
mode:
authorLaxminath Kasam <lkasam@codeaurora.org>2018-09-14 18:50:12 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2018-09-20 00:03:09 -0700
commit1d5e37fb739edb7c117d5a689099e098cd7d38e8 (patch)
treea1e1bd9860037a8a9851abe50abddc9e7b45d859 /drivers/soundwire/swr-wcd-ctrl.c
parent661e26375993e87da046de99093a22580f8406a0 (diff)
soc: swr-wcd-ctrl: Fix wsa mute issue for stereo playback
When temperature on a single wsa881x device is being read, then soundwire master wakes up both wsa881x devices but regcache_sync is happening only for one wsa881x device on which the temperature is being read. This results in audio playback mute after temperature read. Fix the regcache sync during temperature read and playback usecase. CRs-Fixed: 2282230 Change-Id: I856b96517c629ac685bbc25caabee841037106c8 Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Diffstat (limited to 'drivers/soundwire/swr-wcd-ctrl.c')
-rw-r--r--drivers/soundwire/swr-wcd-ctrl.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/soundwire/swr-wcd-ctrl.c b/drivers/soundwire/swr-wcd-ctrl.c
index 1dcaba2e79f6..a8458b9b6e3a 100644
--- a/drivers/soundwire/swr-wcd-ctrl.c
+++ b/drivers/soundwire/swr-wcd-ctrl.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2015-2017, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -1727,6 +1727,8 @@ int swrm_wcd_notify(struct platform_device *pdev, u32 id, void *data)
(swrm->state == SWR_MSTR_UP)) {
dev_dbg(swrm->dev, "%s: SWR master is already UP: %d\n",
__func__, swrm->state);
+ list_for_each_entry(swr_dev, &mstr->devices, dev_list)
+ swr_reset_device(swr_dev);
} else {
pm_runtime_mark_last_busy(&pdev->dev);
mutex_unlock(&swrm->reslock);