Commit 8259610c authored by Mark Brown's avatar Mark Brown

ASoC: es8328: Fix event generation for deemphasis control

Currently the put() method for the deemphasis control returns 0 when a new
value is written to the control even if the value changed, meaning events
are not generated. Fix this, skip the work of updating the value when it is
unchanged and then return 1 after having done so.
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20220603123937.4013603-1-broonie@kernel.orgSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent d1f5272c
...@@ -161,13 +161,16 @@ static int es8328_put_deemph(struct snd_kcontrol *kcontrol, ...@@ -161,13 +161,16 @@ static int es8328_put_deemph(struct snd_kcontrol *kcontrol,
if (deemph > 1) if (deemph > 1)
return -EINVAL; return -EINVAL;
if (es8328->deemph == deemph)
return 0;
ret = es8328_set_deemph(component); ret = es8328_set_deemph(component);
if (ret < 0) if (ret < 0)
return ret; return ret;
es8328->deemph = deemph; es8328->deemph = deemph;
return 0; return 1;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment