aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShuming Fan <[email protected]>2023-03-16 09:30:41 +0800
committerVinod Koul <[email protected]>2023-04-12 15:30:35 +0530
commitacdae4632e40f05e0f0731c5a383e461324aea65 (patch)
tree25b12709eca9639f293948dfd8da2105776c9e6a
parent9ddae9dad09e8bdaa33909bdcbb062c883c3c332 (diff)
soundwire: stream: restore cumulative bus bandwidth when compute_params callback failed
The _sdw_prepare_stream function just returns the error code when compute_params callback failed. The cumulative bus bandwidth will keep the value and won't be decreased by sdw_deprepare_stream function. We should restore the value of cumulative bus bandwidth when compute_params callback failed. Signed-off-by: Shuming Fan <[email protected]> Reviewed-by: Paul Olaru <[email protected]> Reviewed-by: Rander Wang <[email protected]> Reviewed-by: Pierre-Louis Bossart <[email protected]> Signed-off-by: Bard Liao <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vinod Koul <[email protected]>
-rw-r--r--drivers/soundwire/stream.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/soundwire/stream.c b/drivers/soundwire/stream.c
index 8c6da1739e3d..136b6850a3f0 100644
--- a/drivers/soundwire/stream.c
+++ b/drivers/soundwire/stream.c
@@ -1369,7 +1369,7 @@ static int _sdw_prepare_stream(struct sdw_stream_runtime *stream,
if (ret < 0) {
dev_err(bus->dev, "Compute params failed: %d\n",
ret);
- return ret;
+ goto restore_params;
}
}