This is a note to let you know that I've just added the patch titled ASoC: ops: add correct range check for limiting volume to the 5.15-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: asoc-ops-add-correct-range-check-for-limiting-volume.patch and it can be found in the queue-5.15 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. commit beee2646e1047e0e9ae807552ac9626439c4aa78 Author: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx> Date: Mon Dec 4 12:47:35 2023 +0000 ASoC: ops: add correct range check for limiting volume [ Upstream commit fb9ad24485087e0f00d84bee7a5914640b2b9024 ] Volume can have ranges that start with negative values, ex: -84dB to +40dB. Apply correct range check in snd_soc_limit_volume before setting the platform_max. Without this patch, for example setting a 0dB limit on a volume range of -84dB to +40dB would fail. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx> Tested-by: Johan Hovold <johan+linaro@xxxxxxxxxx> Reviewed-by: Johan Hovold <johan+linaro@xxxxxxxxxx> Link: https://lore.kernel.org/r/20231204124736.132185-2-srinivas.kandagatla@xxxxxxxxxx Signed-off-by: Mark Brown <broonie@xxxxxxxxxx> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> diff --git a/sound/soc/soc-ops.c b/sound/soc/soc-ops.c index 12effaa59fdb..c56379fac927 100644 --- a/sound/soc/soc-ops.c +++ b/sound/soc/soc-ops.c @@ -644,7 +644,7 @@ int snd_soc_limit_volume(struct snd_soc_card *card, kctl = snd_soc_card_get_kcontrol(card, name); if (kctl) { struct soc_mixer_control *mc = (struct soc_mixer_control *)kctl->private_value; - if (max <= mc->max) { + if (max <= mc->max - mc->min) { mc->platform_max = max; ret = 0; }