Message ID | 20230831162042.471801-4-vkarpovi@opensource.cirrus.com (mailing list archive) |
---|---|
State | Accepted |
Commit | c3c9b17d27887f7b2f6b85d0a364b009b8436539 |
Headers | show |
Series | [v3,1/4] ASoC: cs35l45: Checks index of cs35l45_irqs[] | expand |
> On Sep 1, 2023, at 3:50 AM, Charles Keepax <ckeepax@opensource.cirrus.com> wrote: > > On Thu, Aug 31, 2023 at 11:20:42AM -0500, Vlad Karpovich wrote: >> The "AMP Enable Switch" is useful in systems with multiple >> amplifiers connected to the same audio bus >> but not all of them are needed for all use cases. >> >> Signed-off-by: Vlad Karpovich <vkarpovi@opensource.cirrus.com> >> --- > > Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> > > Thanks, > Charles Acked-by: Ricardo Rivera-Matos <rriveram@opensource.cirrus.com>
On Thu, Aug 31, 2023 at 11:20:42AM -0500, Vlad Karpovich wrote: > The "AMP Enable Switch" is useful in systems with multiple > amplifiers connected to the same audio bus > but not all of them are needed for all use cases. This doesn't apply against current code, please check and resend.
diff --git a/sound/soc/codecs/cs35l45.c b/sound/soc/codecs/cs35l45.c index 4abc922ef210..f8646de20c36 100644 --- a/sound/soc/codecs/cs35l45.c +++ b/sound/soc/codecs/cs35l45.c @@ -417,6 +417,8 @@ static const struct snd_kcontrol_new cs35l45_dsp_muxes[] = { static const struct snd_kcontrol_new cs35l45_dac_muxes[] = { SOC_DAPM_ENUM("DACPCM Source", cs35l45_dacpcm_enums[0]), }; +static const struct snd_kcontrol_new amp_en_ctl = + SOC_DAPM_SINGLE("Switch", SND_SOC_NOPM, 0, 1, 0); static const struct snd_soc_dapm_widget cs35l45_dapm_widgets[] = { SND_SOC_DAPM_SPK("DSP1 Preload", NULL), @@ -479,6 +481,8 @@ static const struct snd_soc_dapm_widget cs35l45_dapm_widgets[] = { SND_SOC_DAPM_MUX("DACPCM Source", SND_SOC_NOPM, 0, 0, &cs35l45_dac_muxes[0]), + SND_SOC_DAPM_SWITCH("AMP Enable", SND_SOC_NOPM, 0, 0, &_en_ctl), + SND_SOC_DAPM_OUT_DRV("AMP", SND_SOC_NOPM, 0, 0, NULL, 0), SND_SOC_DAPM_OUTPUT("SPK"), @@ -586,7 +590,8 @@ static const struct snd_soc_dapm_route cs35l45_dapm_routes[] = { CS35L45_DAC_MUX_ROUTE("DACPCM"), - { "SPK", NULL, "AMP"}, + { "AMP Enable", "Switch", "AMP" }, + { "SPK", NULL, "AMP Enable"}, }; static const char * const amplifier_mode_texts[] = {"SPK", "RCV"};
The "AMP Enable Switch" is useful in systems with multiple amplifiers connected to the same audio bus but not all of them are needed for all use cases. Signed-off-by: Vlad Karpovich <vkarpovi@opensource.cirrus.com> --- sound/soc/codecs/cs35l45.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)