[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <126eab881bb540bc84ecc5cb9c6865a8@realtek.com>
Date: Thu, 9 Dec 2021 02:25:56 +0000
From: Shuming [范書銘] <shumingf@...ltek.com>
To: Ajit Kumar Pandey <AjitKumar.Pandey@....com>,
"broonie@...nel.org" <broonie@...nel.org>,
"alsa-devel@...a-project.org" <alsa-devel@...a-project.org>
CC: Oder Chiou <oder_chiou@...ltek.com>,
"Sunil-kumar.Dommati@....com" <Sunil-kumar.Dommati@....com>,
open list <linux-kernel@...r.kernel.org>,
"Basavaraj.Hiregoudar@....com" <Basavaraj.Hiregoudar@....com>,
Takashi Iwai <tiwai@...e.com>,
Liam Girdwood <lgirdwood@...il.com>,
"Vijendar.Mukunda@....com" <Vijendar.Mukunda@....com>,
"Alexander.Deucher@....com" <Alexander.Deucher@....com>,
Jack Yu <jack.yu@...ltek.com>,
Derek [方德義] <derek.fang@...ltek.com>,
"Flove(HsinFu)" <flove@...ltek.com>,
Albert Chen <albertchen@...ltek.com>
Subject: RE: [PATCH v2 1/1] ASoC: rt5682s: Add dapm switch to mute/unmute HP playback output
> Subject: [PATCH v2 1/1] ASoC: rt5682s: Add dapm switch to mute/unmute HP
> playback output
>
> Add dapm switch in playback path to mute or unmute HP output data.
> We will set and reset MUTE_SFT bit in RT5682S_HP_CTRL_1 register based on
> switch value to mute or unmute respective channel.
>
> Signed-off-by: Ajit Kumar Pandey <AjitKumar.Pandey@....com>
> ---
> sound/soc/codecs/rt5682s.c | 19 +++++++++++++++++--
> 1 file changed, 17 insertions(+), 2 deletions(-)
>
> diff --git a/sound/soc/codecs/rt5682s.c b/sound/soc/codecs/rt5682s.c index
> d49a4f68566d..21ab5f7df422 100644
> --- a/sound/soc/codecs/rt5682s.c
> +++ b/sound/soc/codecs/rt5682s.c
> @@ -1573,6 +1573,14 @@ static const char * const
> rt5682s_adcdat_pin_select[] = {
> "ADCDAT1", "ADCDAT2",
> };
>
> +/* Out Switch */
> +static const struct snd_kcontrol_new hpol_switch =
> + SOC_DAPM_SINGLE_AUTODISABLE("Switch", RT5682S_HP_CTRL_1,
> + RT5682S_L_MUTE_SFT, 1, 1);
> +static const struct snd_kcontrol_new hpor_switch =
> + SOC_DAPM_SINGLE_AUTODISABLE("Switch", RT5682S_HP_CTRL_1,
> + RT5682S_R_MUTE_SFT, 1, 1);
> +
> static SOC_VALUE_ENUM_SINGLE_DECL(rt5682s_adcdat_pin_enum,
> RT5682S_GPIO_CTRL_1, RT5682S_GP4_PIN_SFT,
> RT5682S_GP4_PIN_MASK,
> rt5682s_adcdat_pin_select, rt5682s_adcdat_pin_values); @@ -1746,6
> +1754,11 @@ static const struct snd_soc_dapm_widget
> rt5682s_dapm_widgets[] = {
> SND_SOC_DAPM_PGA_S("HP Amp", 1, SND_SOC_NOPM, 0, 0,
> rt5682s_hp_amp_event,
> SND_SOC_DAPM_POST_PMD | SND_SOC_DAPM_POST_PMU),
>
> + SND_SOC_DAPM_SWITCH("HPOL Playback", SND_SOC_NOPM, 0, 0,
> + &hpol_switch),
> + SND_SOC_DAPM_SWITCH("HPOR Playback", SND_SOC_NOPM, 0, 0,
> + &hpor_switch),
> +
> /* CLK DET */
> SND_SOC_DAPM_SUPPLY("CLKDET SYS", RT5682S_CLK_DET,
> RT5682S_SYS_CLK_DET_SFT, 0, NULL, 0), @@ -1895,8 +1908,10 @@
> static const struct snd_soc_dapm_route rt5682s_dapm_routes[] = {
> {"HP Amp", NULL, "CLKDET SYS"},
> {"HP Amp", NULL, "SAR"},
>
> - {"HPOL", NULL, "HP Amp"},
> - {"HPOR", NULL, "HP Amp"},
> + {"HPOL Playback", "Switch", "HP Amp"},
> + {"HPOR Playback", "Switch", "HP Amp"},
> + {"HPOL", NULL, "HPOL Playback"},
> + {"HPOR", NULL, "HPOR Playback"},
> };
RT5682S enables the 1 bit control for HP output.
Therefore, the setting of RT5682S_HP_CTRL_1[15][7] will be not effective.
Powered by blists - more mailing lists