lkml.org 
[lkml]   [2019]   [Jun]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 4/6] ASoC: sgtl5000: Fix charge pump source assignment
    Date
    If VDDA != VDDIO and any of them is greater than 3.1V, charge pump
    source can be assigned automatically.

    Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
    ---

    sound/soc/codecs/sgtl5000.c | 14 +++++++++-----
    1 file changed, 9 insertions(+), 5 deletions(-)

    diff --git a/sound/soc/codecs/sgtl5000.c b/sound/soc/codecs/sgtl5000.c
    index e813a37910af4..ee1e4bf613227 100644
    --- a/sound/soc/codecs/sgtl5000.c
    +++ b/sound/soc/codecs/sgtl5000.c
    @@ -1174,12 +1174,16 @@ static int sgtl5000_set_power_regs(struct snd_soc_component *component)
    SGTL5000_INT_OSC_EN);
    /* Enable VDDC charge pump */
    ana_pwr |= SGTL5000_VDDC_CHRGPMP_POWERUP;
    - } else if (vddio >= 3100 && vdda >= 3100) {
    + } else {
    ana_pwr &= ~SGTL5000_VDDC_CHRGPMP_POWERUP;
    - /* VDDC use VDDIO rail */
    - lreg_ctrl |= SGTL5000_VDDC_ASSN_OVRD;
    - lreg_ctrl |= SGTL5000_VDDC_MAN_ASSN_VDDIO <<
    - SGTL5000_VDDC_MAN_ASSN_SHIFT;
    + /* if vddio == vdda the source of charge pump should be
    + * assigned manually to VDDIO
    + */
    + if (vddio == vdda) {
    + lreg_ctrl |= SGTL5000_VDDC_ASSN_OVRD;
    + lreg_ctrl |= SGTL5000_VDDC_MAN_ASSN_VDDIO <<
    + SGTL5000_VDDC_MAN_ASSN_SHIFT;
    + }
    }

    snd_soc_component_write(component, SGTL5000_CHIP_LINREG_CTRL, lreg_ctrl);
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-06-25 09:51    [W:4.381 / U:0.356 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site