diff options
| author | Vijendar Mukunda <Vijendar.Mukunda@amd.com> | 2025-05-30 11:13:40 +0530 |
|---|---|---|
| committer | Vinod Koul <vkoul@kernel.org> | 2025-06-09 21:38:28 +0530 |
| commit | 03837341790039d6f1cbf7a1ae7dfa2cb77ef0a4 (patch) | |
| tree | c320324b246df06c641dfa39e6d62f60e099493a | |
| parent | 5b8c1f39b5e46505cf9cf7775759a9e9c2bfc2d9 (diff) | |
soundwire: amd: serialize amd manager resume sequence during pm_prepare
During pm_prepare callback, pm_request_resume() delays SoundWire manager D0
entry sequence. Synchronize runtime resume sequence for amd_manager
instance prior to invoking child devices resume sequence for both the amd
power modes(ClockStop Mode and Power off mode).
Change the power_mode_mask check and use pm_runtime_resume() in
amd_pm_prepare() callback.
Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://lore.kernel.org/r/20250530054447.1645807-3-Vijendar.Mukunda@amd.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
| -rw-r--r-- | drivers/soundwire/amd_manager.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/soundwire/amd_manager.c b/drivers/soundwire/amd_manager.c index a12c68b93b1c..c833b3096255 100644 --- a/drivers/soundwire/amd_manager.c +++ b/drivers/soundwire/amd_manager.c @@ -1178,10 +1178,10 @@ static int __maybe_unused amd_pm_prepare(struct device *dev) * device is not in runtime suspend state, observed that device alerts are missing * without pm_prepare on AMD platforms in clockstop mode0. */ - if (amd_manager->power_mode_mask & AMD_SDW_CLK_STOP_MODE) { - ret = pm_request_resume(dev); + if (amd_manager->power_mode_mask) { + ret = pm_runtime_resume(dev); if (ret < 0) { - dev_err(bus->dev, "pm_request_resume failed: %d\n", ret); + dev_err(bus->dev, "pm_runtime_resume failed: %d\n", ret); return 0; } } |
