Skip to content

Commit 3917500

Browse files
Vlad Karpovichrriveramcrus
authored andcommitted
ASoC: cs35l45: Add AMP Enable Switch control
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. Change-Id: I3b4b5e39faa389e3b7ebf1d18d3a557dc8689c68 Signed-off-by: Vlad Karpovich <[email protected]> Acked-by: Ricardo Rivera-Matos <[email protected]> Acked-by: Charles Keepax <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mark Brown <[email protected]>
1 parent bcb142c commit 3917500

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

sound/soc/codecs/cs35l45.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -417,6 +417,8 @@ static const struct snd_kcontrol_new cs35l45_dsp_muxes[] = {
417417
static const struct snd_kcontrol_new cs35l45_dac_muxes[] = {
418418
SOC_DAPM_ENUM("DACPCM Source", cs35l45_dacpcm_enums[0]),
419419
};
420+
static const struct snd_kcontrol_new amp_en_ctl =
421+
SOC_DAPM_SINGLE("Switch", SND_SOC_NOPM, 0, 1, 0);
420422

421423
static const struct snd_soc_dapm_widget cs35l45_dapm_widgets[] = {
422424
SND_SOC_DAPM_SPK("DSP1 Preload", NULL),
@@ -479,6 +481,8 @@ static const struct snd_soc_dapm_widget cs35l45_dapm_widgets[] = {
479481

480482
SND_SOC_DAPM_MUX("DACPCM Source", SND_SOC_NOPM, 0, 0, &cs35l45_dac_muxes[0]),
481483

484+
SND_SOC_DAPM_SWITCH("AMP Enable", SND_SOC_NOPM, 0, 0, &amp_en_ctl),
485+
482486
SND_SOC_DAPM_OUT_DRV("AMP", SND_SOC_NOPM, 0, 0, NULL, 0),
483487

484488
SND_SOC_DAPM_OUTPUT("SPK"),
@@ -586,7 +590,8 @@ static const struct snd_soc_dapm_route cs35l45_dapm_routes[] = {
586590

587591
CS35L45_DAC_MUX_ROUTE("DACPCM"),
588592

589-
{ "SPK", NULL, "AMP"},
593+
{ "AMP Enable", "Switch", "AMP" },
594+
{ "SPK", NULL, "AMP Enable"},
590595
};
591596

592597
static const char * const amplifier_mode_texts[] = {"SPK", "RCV"};

0 commit comments

Comments
 (0)