Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit da8db898 authored by Jerome Brunet's avatar Jerome Brunet Committed by Greg Kroah-Hartman
Browse files

ASoC: hdmi-codec: unlock the device on startup errors



[ Upstream commit 30180e8436046344b12813dc954b2e01dfdcd22d ]

If the hdmi codec startup fails, it should clear the current_substream
pointer to free the device. This is properly done for the audio_startup()
callback but for snd_pcm_hw_constraint_eld().

Make sure the pointer cleared if an error is reported.

Signed-off-by: default avatarJerome Brunet <jbrunet@baylibre.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 7b4ff6ae
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -137,10 +137,14 @@ static int hdmi_codec_startup(struct snd_pcm_substream *substream,
		if (!ret) {
			ret = snd_pcm_hw_constraint_eld(substream->runtime,
							hcp->eld);
			if (ret)
			if (ret) {
				mutex_lock(&hcp->current_stream_lock);
				hcp->current_stream = NULL;
				mutex_unlock(&hcp->current_stream_lock);
				return ret;
			}
		}
	}
	return 0;
}