ASoC: wm8904: harmless underflow in wm8904_put_deemph()
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 13 Oct 2015 07:08:18 +0000 (10:08 +0300)
committerMark Brown <broonie@kernel.org>
Thu, 22 Oct 2015 12:54:13 +0000 (13:54 +0100)
We try to check that "deemph" is zero or one, but because of an
underflow bug, it can also be negative.  It's fine, negative values are
handled as non-zero.  But it's messy and static checkers complain so
let's fix it.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/wm8904.c

index b783743dc97e5a7e82699490aab28ca2e8380950..2aa23f1b9e3ca132c12e826d980b5154ffbe1478 100644 (file)
@@ -534,7 +534,7 @@ static int wm8904_put_deemph(struct snd_kcontrol *kcontrol,
 {
        struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
        struct wm8904_priv *wm8904 = snd_soc_codec_get_drvdata(codec);
-       int deemph = ucontrol->value.integer.value[0];
+       unsigned int deemph = ucontrol->value.integer.value[0];
 
        if (deemph > 1)
                return -EINVAL;