[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210818024954.16873-1-yung-chuan.liao@linux.intel.com>
Date: Wed, 18 Aug 2021 10:49:51 +0800
From: Bard Liao <yung-chuan.liao@...ux.intel.com>
To: alsa-devel@...a-project.org, vkoul@...nel.org
Cc: vinod.koul@...aro.org, linux-kernel@...r.kernel.org,
gregkh@...uxfoundation.org, srinivas.kandagatla@...aro.org,
rander.wang@...ux.intel.com, pierre-louis.bossart@...ux.intel.com,
sanyog.r.kale@...el.com, bard.liao@...el.com
Subject: [PATCH v2 0/3] soundwire: intel: exit clock-stop mode before system suspend
Intel validation reported an issue where the HW_RST self-clearing bit
is not cleared in hardware, which as a ripple effect creates issues
with the clock stop mode.
This happens is a specific sequence where the Intel manager is
pm_runtime suspended with the clock-stop mode enabled. During the
system suspend, we currently do nothing, which can lead to potential
issues on system resume and the following pm_runtime suspend,
depending on the hardware state.
This patch suggests a full resume if the clock-stop mode is used. This
may require extra time but will make the suspend/resume flows
completely symmetric. This also removes a race condition where we
could not access SHIM registers if the parent was suspended as
well. Resuming the link also resumes the parent by construction.
BugLink: https://github.com/thesofproject/linux/issues/2606
v2:
- Better comments and commit messages.
- Modified the .prepare callback to only deal with the corner case that is
NOT covered today instead of systematically doing a full resume.
Pierre-Louis Bossart (3):
soundwire: intel: fix potential race condition during power down
soundwire: intel: skip suspend/resume/wake when link was not started
soundwire: intel: conditionally exit clock stop mode on system suspend
drivers/soundwire/intel.c | 150 ++++++++++++++++++++++++++++++--------
drivers/soundwire/intel.h | 1 +
2 files changed, 119 insertions(+), 32 deletions(-)
--
2.17.1
Powered by blists - more mailing lists