ASoC: rt5651: Remove "JD Power" dapm supply
authorHans de Goede <hdegoede@redhat.com>
Sun, 25 Feb 2018 10:46:54 +0000 (11:46 +0100)
committerMark Brown <broonie@kernel.org>
Thu, 1 Mar 2018 19:13:06 +0000 (19:13 +0000)
Remove the "JD power" dapm supply which gets force-enabled once when
using jack-detect and never gets disabled again.

Since the PWR_JD_M bit simply needs to be always on when using jack-detect
there is no need to have it tracked by dapm, instead we can simply set it
to 1 once when initializing the jack-detection.

Tested-by: Carlo Caione <carlo@endlessm.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/rt5651.c

index 9460bdc..cbf9f56 100644 (file)
@@ -869,10 +869,6 @@ static const struct snd_soc_dapm_widget rt5651_dapm_widgets[] = {
        SND_SOC_DAPM_SUPPLY_S("ADC ASRC", 1, RT5651_PLL_MODE_2,
                              11, 0, NULL, 0),
 
-       /* Input Side */
-       SND_SOC_DAPM_SUPPLY("JD Power", RT5651_PWR_ANLG2,
-               RT5651_PWM_JD_M_BIT, 0, NULL, 0),
-
        /* micbias */
        SND_SOC_DAPM_SUPPLY("LDO", RT5651_PWR_ANLG1,
                        RT5651_PWR_LDO_BIT, 0, NULL, 0),
@@ -1616,7 +1612,10 @@ static int rt5651_set_jack(struct snd_soc_component *component,
                return -EINVAL;
        }
 
-       snd_soc_dapm_force_enable_pin(dapm, "JD Power");
+       /* Enable jack detect power */
+       snd_soc_component_update_bits(component, RT5651_PWR_ANLG2,
+               RT5651_PWR_JD_M, RT5651_PWR_JD_M);
+
        snd_soc_dapm_force_enable_pin(dapm, "LDO");
        snd_soc_dapm_sync(dapm);