ASoC: sunxi: sun50i-codec-analog: Add support for cpvdd regulator supply
authorChen-Yu Tsai <wens@csie.org>
Thu, 22 Nov 2018 10:23:19 +0000 (18:23 +0800)
committerMark Brown <broonie@kernel.org>
Fri, 23 Nov 2018 14:01:34 +0000 (14:01 +0000)
On the Allwinner A64 SoCs, the audio codec has a built-in headphone
amplifier. This amplifier has a power supply separate from the rest of
the analog audio circuitry, labeled cpvdd.

This patch adds a DAPM widget for this supply, and ties it to the
headphone amp widget.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sunxi/sun50i-codec-analog.c

index 8f5f999df6311948da6bb9a13a222cf2de3e4ca1..df1fed0aa0019d90e787cdd18ddffaf7416991f3 100644 (file)
@@ -274,6 +274,7 @@ static const struct snd_soc_dapm_widget sun50i_a64_codec_widgets[] = {
         * stream widgets at the card level.
         */
 
+       SND_SOC_DAPM_REGULATOR_SUPPLY("hpvcc", 0, 0),
        SND_SOC_DAPM_MUX("Headphone Source Playback Route",
                         SND_SOC_NOPM, 0, 0, sun50i_codec_hp_src),
        SND_SOC_DAPM_OUT_DRV("Headphone Amp", SUN50I_ADDA_HP_CTRL,
@@ -361,6 +362,7 @@ static const struct snd_soc_dapm_route sun50i_a64_codec_routes[] = {
        { "Headphone Source Playback Route", "Mixer", "Left Mixer" },
        { "Headphone Source Playback Route", "Mixer", "Right Mixer" },
        { "Headphone Amp", NULL, "Headphone Source Playback Route" },
+       { "Headphone Amp", NULL, "hpvcc" },
        { "HP", NULL, "Headphone Amp" },
 
        /* Microphone Routes */