From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B58D247A4F; Mon, 11 Dec 2023 13:56:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Tczc6SCh" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7AE84C433AD; Mon, 11 Dec 2023 13:56:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1702302965; bh=ehZFxJjugDtw5zznhofREfYOsDmMXS72v8JFNEqkE8Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Tczc6SChpKXbddLjuiEuoDEala7r1vZBiJ88+PpSCEpOF6pKh79IfMuAhThgLG/CQ SCIswsKKI4e9wMzBuD/BHHJOys/4UrlV/8MY3CHiws31kqPReuLbUxkHbv6lpUey8A vtJzBHIBQacQazU6zR8zd/iwakkgxsBiSfOJ4sivw5ASBv+dIZl5GdofS/FVA6zzIl +Wisz6oKdf/6g324M+XdcmIrTyBNcU/Jxuzi4TP62tCU1QmcGgcjlKuNKFfssY0PA4 3Q7xhcjgj0dmhLkiUsui7grGsBO250t+FxH2KdRmxMyk8lgB0cDLiBi1g7u5uFR4wb TCJ+odId58Jdw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Srinivas Kandagatla , Johan Hovold , Mark Brown , Sasha Levin , lgirdwood@gmail.com, perex@perex.cz, tiwai@suse.com, linux-sound@vger.kernel.org Subject: [PATCH AUTOSEL 6.1 18/29] ASoC: ops: add correct range check for limiting volume Date: Mon, 11 Dec 2023 08:54:02 -0500 Message-ID: <20231211135457.381397-18-sashal@kernel.org> X-Mailer: git-send-email 2.42.0 In-Reply-To: <20231211135457.381397-1-sashal@kernel.org> References: <20231211135457.381397-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore X-stable-base: Linux 6.1.66 Content-Transfer-Encoding: 8bit From: Srinivas Kandagatla [ 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 Tested-by: Johan Hovold Reviewed-by: Johan Hovold Link: https://lore.kernel.org/r/20231204124736.132185-2-srinivas.kandagatla@linaro.org Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/soc-ops.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/soc/soc-ops.c b/sound/soc/soc-ops.c index 55b009d3c6815..2d25748ca7066 100644 --- a/sound/soc/soc-ops.c +++ b/sound/soc/soc-ops.c @@ -661,7 +661,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; } -- 2.42.0