lkml.org 
[lkml]   [2022]   [Jun]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.10 13/29] ASoC: es8328: Fix event generation for deemphasis control
    Date
    From: Mark Brown <broonie@kernel.org>

    [ Upstream commit 8259610c2ec01c5cbfb61882ae176aabacac9c19 ]

    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: Mark Brown <broonie@kernel.org>
    Link: https://lore.kernel.org/r/20220603123937.4013603-1-broonie@kernel.org
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    sound/soc/codecs/es8328.c | 5 ++++-
    1 file changed, 4 insertions(+), 1 deletion(-)

    diff --git a/sound/soc/codecs/es8328.c b/sound/soc/codecs/es8328.c
    index 7e26231a596a..081b5f189632 100644
    --- a/sound/soc/codecs/es8328.c
    +++ b/sound/soc/codecs/es8328.c
    @@ -161,13 +161,16 @@ static int es8328_put_deemph(struct snd_kcontrol *kcontrol,
    if (deemph > 1)
    return -EINVAL;

    + if (es8328->deemph == deemph)
    + return 0;
    +
    ret = es8328_set_deemph(component);
    if (ret < 0)
    return ret;

    es8328->deemph = deemph;

    - return 0;
    + return 1;
    }


    --
    2.35.1
    \
     
     \ /
      Last update: 2022-06-14 04:21    [W:2.649 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site