lkml.org 
[lkml]   [2020]   [Feb]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.5 307/367] ASoC: sgtl5000: Fix VDDA and VDDIO comparison
    Date
    From: Marek Vasut <marex@denx.de>

    commit e19ecbf105b236a6334fab64d8fd5437b12ee019 upstream.

    Comparing the voltage of VDDA and VDDIO to determine whether or not to
    enable VDDC manual override is insufficient. This is a problem in case
    the VDDA is supplied from different regulator than VDDIO, while both
    report the same voltage to the regulator framework. In that case where
    VDDA and VDDIO is supplied by different regulators, the VDDC manual
    override must not be applied.

    Fixes: b6319b061ba2 ("ASoC: sgtl5000: Fix charge pump source assignment")
    Signed-off-by: Marek Vasut <marex@denx.de>
    Cc: Fabio Estevam <festevam@gmail.com>
    Cc: Igor Opaniuk <igor.opaniuk@toradex.com>
    Cc: Marcel Ziswiler <marcel.ziswiler@toradex.com>
    Cc: Mark Brown <broonie@kernel.org>
    Cc: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
    Link: https://lore.kernel.org/r/20191220164450.1395038-2-marex@denx.de
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    sound/soc/codecs/sgtl5000.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    --- a/sound/soc/codecs/sgtl5000.c
    +++ b/sound/soc/codecs/sgtl5000.c
    @@ -1344,7 +1344,8 @@ static int sgtl5000_set_power_regs(struc
    * if vddio == vdda the source of charge pump should be
    * assigned manually to VDDIO
    */
    - if (vddio == vdda) {
    + if (regulator_is_equal(sgtl5000->supplies[VDDA].consumer,
    + sgtl5000->supplies[VDDIO].consumer)) {
    lreg_ctrl |= SGTL5000_VDDC_ASSN_OVRD;
    lreg_ctrl |= SGTL5000_VDDC_MAN_ASSN_VDDIO <<
    SGTL5000_VDDC_MAN_ASSN_SHIFT;

    \
     
     \ /
      Last update: 2020-02-10 13:49    [W:4.144 / U:1.896 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site