• Hans de Goede's avatar
    ASoC: rt5651: Fix bias_level confusion · 984c803f
    Hans de Goede authored
    The rt5651_set_bias_level() function was turning everything off at
    SND_SOC_BIAS_STANDBY, rather then at SND_SOC_BIAS_OFF, requiring the bias-
    level to be raised to SND_SOC_BIAS_PREPARE before turning anything on.
    
    This is not how the bias-levels are supposed to work, this commit fixes
    this by turning everything off at the SND_SOC_BIAS_OFF level and enabling
    the pwr-bits needed for minimum functionality at SND_SOC_BIAS_STANDBY.
    
    This fixes the minimum set of pwr-bits not getting enabled when
    force-enabling some dapm-supplies (e.g. for jack type detection),
    which raises the bias-level to standby.
    Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
    Signed-off-by: default avatarMark Brown <broonie@kernel.org>
    984c803f
rt5651.c 58.7 KB