OSDN Git Service

ASoC: mt8192: Fix range for sidetone positive gain
authorMark Brown <broonie@kernel.org>
Fri, 24 Feb 2023 14:03:58 +0000 (14:03 +0000)
committerMark Brown <broonie@kernel.org>
Tue, 28 Feb 2023 13:58:55 +0000 (13:58 +0000)
The Sidetone_Positive_Gain_dB control reports a range of 0..100 as valid
but the put() function rejects anything larger than 24. Fix this.

There are numerous other problems with this control, the name is very non
idiomatic and it should be a TLV, but it's ABI so probably we should leave
those alone.

Reviewed-by: NĂ­colas F. R. A. Prado <nfraprado@collabora.com>
Tested-by: NĂ­colas F. R. A. Prado <nfraprado@collabora.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20230223-asoc-mt8192-quick-fixes-v1-4-9a85f90368e1@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/mediatek/mt8192/mt8192-dai-adda.c

index a02a297..4919535 100644 (file)
@@ -670,7 +670,7 @@ static int mt8192_adda6_only_set(struct snd_kcontrol *kcontrol,
 static const struct snd_kcontrol_new mtk_adda_controls[] = {
        SOC_SINGLE("Sidetone_Gain", AFE_SIDETONE_GAIN,
                   SIDE_TONE_GAIN_SFT, SIDE_TONE_GAIN_MASK, 0),
-       SOC_SINGLE_EXT("Sidetone_Positive_Gain_dB", SND_SOC_NOPM, 0, 100, 0,
+       SOC_SINGLE_EXT("Sidetone_Positive_Gain_dB", SND_SOC_NOPM, 0, 24, 0,
                       stf_positive_gain_get, stf_positive_gain_set),
        SOC_SINGLE("ADDA_DL_GAIN", AFE_ADDA_DL_SRC2_CON1,
                   DL_2_GAIN_CTL_PRE_SFT, DL_2_GAIN_CTL_PRE_MASK, 0),