From: Shreyas NC shreyas.nc@intel.com
In sdw_stream_add_master() after the Master ports are configured, the stream is released incorrectly.
So, fix it by avoiding stream release after configuring the Master for the stream. While at it, rename the label appropriately.
Signed-off-by: Shreyas NC shreyas.nc@intel.com Signed-off-by: Sanyog Kale sanyog.r.kale@intel.com --- drivers/soundwire/stream.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/soundwire/stream.c b/drivers/soundwire/stream.c index e6ee4baef0a2..eaaa180cf0fd 100644 --- a/drivers/soundwire/stream.c +++ b/drivers/soundwire/stream.c @@ -1112,7 +1112,7 @@ int sdw_stream_add_master(struct sdw_bus *bus, "Master runtime config failed for stream:%s", stream->name); ret = -ENOMEM; - goto error; + goto unlock; }
ret = sdw_config_stream(bus->dev, stream, stream_config, false); @@ -1123,9 +1123,11 @@ int sdw_stream_add_master(struct sdw_bus *bus, if (ret) goto stream_error;
+ goto unlock; + stream_error: sdw_release_master_stream(stream); -error: +unlock: mutex_unlock(&bus->bus_lock); return ret; }