alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: Mark Brown <broonie@kernel.org>
To: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: alsa-devel@alsa-project.org, Mark Brown <broonie@kernel.org>
Subject: [alsa-devel] Applied "ASoC: wcd934x: add audio routings" to the asoc tree
Date: Wed, 25 Dec 2019 18:21:45 +0000 (GMT)	[thread overview]
Message-ID: 
Message-ID: <20191225182145.XXg6_NtjtC9XH1TAfrt5JKB8Hm5R2i9qn4qdiOzntdo@z> (raw)
In-Reply-To: 

The patch

   ASoC: wcd934x: add audio routings

has been applied to the asoc tree at

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git 

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.  

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark

From da3e83f8bb866a91945ef5c47bdb25de189a381e Mon Sep 17 00:00:00 2001
From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Date: Thu, 19 Dec 2019 10:31:49 +0000
Subject: [PATCH] ASoC: wcd934x: add audio routings

This patch adds audio routing for both playback and capture.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20191219103153.14875-8-srinivas.kandagatla@linaro.org
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
---
 sound/soc/codecs/wcd934x.c | 290 +++++++++++++++++++++++++++++++++++++
 1 file changed, 290 insertions(+)

diff --git a/sound/soc/codecs/wcd934x.c b/sound/soc/codecs/wcd934x.c
index 24f78a0b7f5a..158e878abd6c 100644
--- a/sound/soc/codecs/wcd934x.c
+++ b/sound/soc/codecs/wcd934x.c
@@ -135,6 +135,162 @@
 	} \
 }
 
+#define WCD934X_INTERPOLATOR_PATH(id)			\
+	{"RX INT" #id "_1 MIX1 INP0", "RX0", "SLIM RX0"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "RX1", "SLIM RX1"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "RX2", "SLIM RX2"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "RX3", "SLIM RX3"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "RX4", "SLIM RX4"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "RX5", "SLIM RX5"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "RX6", "SLIM RX6"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "RX7", "SLIM RX7"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "IIR0", "IIR0"},	\
+	{"RX INT" #id "_1 MIX1 INP0", "IIR1", "IIR1"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "RX0", "SLIM RX0"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "RX1", "SLIM RX1"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "RX2", "SLIM RX2"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "RX3", "SLIM RX3"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "RX4", "SLIM RX4"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "RX5", "SLIM RX5"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "RX6", "SLIM RX6"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "RX7", "SLIM RX7"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "IIR0", "IIR0"},	\
+	{"RX INT" #id "_1 MIX1 INP1", "IIR1", "IIR1"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "RX0", "SLIM RX0"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "RX1", "SLIM RX1"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "RX2", "SLIM RX2"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "RX3", "SLIM RX3"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "RX4", "SLIM RX4"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "RX5", "SLIM RX5"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "RX6", "SLIM RX6"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "RX7", "SLIM RX7"},	\
+	{"RX INT" #id "_1 MIX1 INP2", "IIR0", "IIR0"},		\
+	{"RX INT" #id "_1 MIX1 INP2", "IIR1", "IIR1"},		\
+	{"RX INT" #id "_1 MIX1", NULL, "RX INT" #id "_1 MIX1 INP0"}, \
+	{"RX INT" #id "_1 MIX1", NULL, "RX INT" #id "_1 MIX1 INP1"}, \
+	{"RX INT" #id "_1 MIX1", NULL, "RX INT" #id "_1 MIX1 INP2"}, \
+	{"RX INT" #id "_2 MUX", "RX0", "SLIM RX0"},	\
+	{"RX INT" #id "_2 MUX", "RX1", "SLIM RX1"},	\
+	{"RX INT" #id "_2 MUX", "RX2", "SLIM RX2"},	\
+	{"RX INT" #id "_2 MUX", "RX3", "SLIM RX3"},	\
+	{"RX INT" #id "_2 MUX", "RX4", "SLIM RX4"},	\
+	{"RX INT" #id "_2 MUX", "RX5", "SLIM RX5"},	\
+	{"RX INT" #id "_2 MUX", "RX6", "SLIM RX6"},	\
+	{"RX INT" #id "_2 MUX", "RX7", "SLIM RX7"},	\
+	{"RX INT" #id "_2 MUX", NULL, "INT" #id "_CLK"}, \
+	{"RX INT" #id "_2 MUX", NULL, "DSMDEM" #id "_CLK"}, \
+	{"RX INT" #id "_2 INTERP", NULL, "RX INT" #id "_2 MUX"},	\
+	{"RX INT" #id " SEC MIX", NULL, "RX INT" #id "_2 INTERP"},	\
+	{"RX INT" #id "_1 INTERP", NULL, "RX INT" #id "_1 MIX1"},	\
+	{"RX INT" #id "_1 INTERP", NULL, "INT" #id "_CLK"},	\
+	{"RX INT" #id "_1 INTERP", NULL, "DSMDEM" #id "_CLK"},	\
+	{"RX INT" #id " SEC MIX", NULL, "RX INT" #id "_1 INTERP"}
+
+#define WCD934X_INTERPOLATOR_MIX2(id)			\
+	{"RX INT" #id " MIX2", NULL, "RX INT" #id " SEC MIX"}, \
+	{"RX INT" #id " MIX2", NULL, "RX INT" #id " MIX2 INP"}
+
+#define WCD934X_SLIM_RX_AIF_PATH(id)	\
+	{"SLIM RX"#id" MUX", "AIF1_PB", "AIF1 PB"},	\
+	{"SLIM RX"#id" MUX", "AIF2_PB", "AIF2 PB"},	\
+	{"SLIM RX"#id" MUX", "AIF3_PB", "AIF3 PB"},	\
+	{"SLIM RX"#id" MUX", "AIF4_PB", "AIF4 PB"},   \
+	{"SLIM RX"#id, NULL, "SLIM RX"#id" MUX"}
+
+#define WCD934X_ADC_MUX(id) \
+	{"ADC MUX" #id, "DMIC", "DMIC MUX" #id },	\
+	{"ADC MUX" #id, "AMIC", "AMIC MUX" #id },	\
+	{"DMIC MUX" #id, "DMIC0", "DMIC0"},		\
+	{"DMIC MUX" #id, "DMIC1", "DMIC1"},		\
+	{"DMIC MUX" #id, "DMIC2", "DMIC2"},		\
+	{"DMIC MUX" #id, "DMIC3", "DMIC3"},		\
+	{"DMIC MUX" #id, "DMIC4", "DMIC4"},		\
+	{"DMIC MUX" #id, "DMIC5", "DMIC5"},		\
+	{"AMIC MUX" #id, "ADC1", "ADC1"},		\
+	{"AMIC MUX" #id, "ADC2", "ADC2"},		\
+	{"AMIC MUX" #id, "ADC3", "ADC3"},		\
+	{"AMIC MUX" #id, "ADC4", "ADC4"}
+
+#define WCD934X_IIR_INP_MUX(id) \
+	{"IIR" #id, NULL, "IIR" #id " INP0 MUX"},	\
+	{"IIR" #id " INP0 MUX", "DEC0", "ADC MUX0"},	\
+	{"IIR" #id " INP0 MUX", "DEC1", "ADC MUX1"},	\
+	{"IIR" #id " INP0 MUX", "DEC2", "ADC MUX2"},	\
+	{"IIR" #id " INP0 MUX", "DEC3", "ADC MUX3"},	\
+	{"IIR" #id " INP0 MUX", "DEC4", "ADC MUX4"},	\
+	{"IIR" #id " INP0 MUX", "DEC5", "ADC MUX5"},	\
+	{"IIR" #id " INP0 MUX", "DEC6", "ADC MUX6"},	\
+	{"IIR" #id " INP0 MUX", "DEC7", "ADC MUX7"},	\
+	{"IIR" #id " INP0 MUX", "DEC8", "ADC MUX8"},	\
+	{"IIR" #id " INP0 MUX", "RX0", "SLIM RX0"},	\
+	{"IIR" #id " INP0 MUX", "RX1", "SLIM RX1"},	\
+	{"IIR" #id " INP0 MUX", "RX2", "SLIM RX2"},	\
+	{"IIR" #id " INP0 MUX", "RX3", "SLIM RX3"},	\
+	{"IIR" #id " INP0 MUX", "RX4", "SLIM RX4"},	\
+	{"IIR" #id " INP0 MUX", "RX5", "SLIM RX5"},	\
+	{"IIR" #id " INP0 MUX", "RX6", "SLIM RX6"},	\
+	{"IIR" #id " INP0 MUX", "RX7", "SLIM RX7"},	\
+	{"IIR" #id, NULL, "IIR" #id " INP1 MUX"},	\
+	{"IIR" #id " INP1 MUX", "DEC0", "ADC MUX0"},	\
+	{"IIR" #id " INP1 MUX", "DEC1", "ADC MUX1"},	\
+	{"IIR" #id " INP1 MUX", "DEC2", "ADC MUX2"},	\
+	{"IIR" #id " INP1 MUX", "DEC3", "ADC MUX3"},	\
+	{"IIR" #id " INP1 MUX", "DEC4", "ADC MUX4"},	\
+	{"IIR" #id " INP1 MUX", "DEC5", "ADC MUX5"},	\
+	{"IIR" #id " INP1 MUX", "DEC6", "ADC MUX6"},	\
+	{"IIR" #id " INP1 MUX", "DEC7", "ADC MUX7"},	\
+	{"IIR" #id " INP1 MUX", "DEC8", "ADC MUX8"},	\
+	{"IIR" #id " INP1 MUX", "RX0", "SLIM RX0"},	\
+	{"IIR" #id " INP1 MUX", "RX1", "SLIM RX1"},	\
+	{"IIR" #id " INP1 MUX", "RX2", "SLIM RX2"},	\
+	{"IIR" #id " INP1 MUX", "RX3", "SLIM RX3"},	\
+	{"IIR" #id " INP1 MUX", "RX4", "SLIM RX4"},	\
+	{"IIR" #id " INP1 MUX", "RX5", "SLIM RX5"},	\
+	{"IIR" #id " INP1 MUX", "RX6", "SLIM RX6"},	\
+	{"IIR" #id " INP1 MUX", "RX7", "SLIM RX7"},	\
+	{"IIR" #id, NULL, "IIR" #id " INP2 MUX"},	\
+	{"IIR" #id " INP2 MUX", "DEC0", "ADC MUX0"},	\
+	{"IIR" #id " INP2 MUX", "DEC1", "ADC MUX1"},	\
+	{"IIR" #id " INP2 MUX", "DEC2", "ADC MUX2"},	\
+	{"IIR" #id " INP2 MUX", "DEC3", "ADC MUX3"},	\
+	{"IIR" #id " INP2 MUX", "DEC4", "ADC MUX4"},	\
+	{"IIR" #id " INP2 MUX", "DEC5", "ADC MUX5"},	\
+	{"IIR" #id " INP2 MUX", "DEC6", "ADC MUX6"},	\
+	{"IIR" #id " INP2 MUX", "DEC7", "ADC MUX7"},	\
+	{"IIR" #id " INP2 MUX", "DEC8", "ADC MUX8"},	\
+	{"IIR" #id " INP2 MUX", "RX0", "SLIM RX0"},	\
+	{"IIR" #id " INP2 MUX", "RX1", "SLIM RX1"},	\
+	{"IIR" #id " INP2 MUX", "RX2", "SLIM RX2"},	\
+	{"IIR" #id " INP2 MUX", "RX3", "SLIM RX3"},	\
+	{"IIR" #id " INP2 MUX", "RX4", "SLIM RX4"},	\
+	{"IIR" #id " INP2 MUX", "RX5", "SLIM RX5"},	\
+	{"IIR" #id " INP2 MUX", "RX6", "SLIM RX6"},	\
+	{"IIR" #id " INP2 MUX", "RX7", "SLIM RX7"},	\
+	{"IIR" #id, NULL, "IIR" #id " INP3 MUX"},	\
+	{"IIR" #id " INP3 MUX", "DEC0", "ADC MUX0"},	\
+	{"IIR" #id " INP3 MUX", "DEC1", "ADC MUX1"},	\
+	{"IIR" #id " INP3 MUX", "DEC2", "ADC MUX2"},	\
+	{"IIR" #id " INP3 MUX", "DEC3", "ADC MUX3"},	\
+	{"IIR" #id " INP3 MUX", "DEC4", "ADC MUX4"},	\
+	{"IIR" #id " INP3 MUX", "DEC5", "ADC MUX5"},	\
+	{"IIR" #id " INP3 MUX", "DEC6", "ADC MUX6"},	\
+	{"IIR" #id " INP3 MUX", "DEC7", "ADC MUX7"},	\
+	{"IIR" #id " INP3 MUX", "DEC8", "ADC MUX8"},	\
+	{"IIR" #id " INP3 MUX", "RX0", "SLIM RX0"},	\
+	{"IIR" #id " INP3 MUX", "RX1", "SLIM RX1"},	\
+	{"IIR" #id " INP3 MUX", "RX2", "SLIM RX2"},	\
+	{"IIR" #id " INP3 MUX", "RX3", "SLIM RX3"},	\
+	{"IIR" #id " INP3 MUX", "RX4", "SLIM RX4"},	\
+	{"IIR" #id " INP3 MUX", "RX5", "SLIM RX5"},	\
+	{"IIR" #id " INP3 MUX", "RX6", "SLIM RX6"},	\
+	{"IIR" #id " INP3 MUX", "RX7", "SLIM RX7"}
+
+#define WCD934X_SLIM_TX_AIF_PATH(id)	\
+	{"AIF1_CAP Mixer", "SLIM TX" #id, "SLIM TX" #id },	\
+	{"AIF2_CAP Mixer", "SLIM TX" #id, "SLIM TX" #id },	\
+	{"AIF3_CAP Mixer", "SLIM TX" #id, "SLIM TX" #id },	\
+	{"SLIM TX" #id, NULL, "CDC_IF TX" #id " MUX"}
+
 enum {
 	MIC_BIAS_1 = 1,
 	MIC_BIAS_2,
@@ -4678,6 +4834,138 @@ static const struct snd_soc_dapm_widget wcd934x_dapm_widgets[] = {
 			   ARRAY_SIZE(aif3_slim_cap_mixer)),
 };
 
+static const struct snd_soc_dapm_route wcd934x_audio_map[] = {
+	/* RX0-RX7 */
+	WCD934X_SLIM_RX_AIF_PATH(0),
+	WCD934X_SLIM_RX_AIF_PATH(1),
+	WCD934X_SLIM_RX_AIF_PATH(2),
+	WCD934X_SLIM_RX_AIF_PATH(3),
+	WCD934X_SLIM_RX_AIF_PATH(4),
+	WCD934X_SLIM_RX_AIF_PATH(5),
+	WCD934X_SLIM_RX_AIF_PATH(6),
+	WCD934X_SLIM_RX_AIF_PATH(7),
+
+	/* RX0 Ear out */
+	WCD934X_INTERPOLATOR_PATH(0),
+	WCD934X_INTERPOLATOR_MIX2(0),
+	{"RX INT0 DEM MUX", "CLSH_DSM_OUT", "RX INT0 MIX2"},
+	{"RX INT0 DAC", NULL, "RX INT0 DEM MUX"},
+	{"RX INT0 DAC", NULL, "RX_BIAS"},
+	{"EAR PA", NULL, "RX INT0 DAC"},
+	{"EAR", NULL, "EAR PA"},
+
+	/* RX1 Headphone left */
+	WCD934X_INTERPOLATOR_PATH(1),
+	WCD934X_INTERPOLATOR_MIX2(1),
+	{"RX INT1 MIX3", NULL, "RX INT1 MIX2"},
+	{"RX INT1 DEM MUX", "CLSH_DSM_OUT", "RX INT1 MIX3"},
+	{"RX INT1 DAC", NULL, "RX INT1 DEM MUX"},
+	{"RX INT1 DAC", NULL, "RX_BIAS"},
+	{"HPHL PA", NULL, "RX INT1 DAC"},
+	{"HPHL", NULL, "HPHL PA"},
+
+	/* RX2 Headphone right */
+	WCD934X_INTERPOLATOR_PATH(2),
+	WCD934X_INTERPOLATOR_MIX2(2),
+	{"RX INT2 MIX3", NULL, "RX INT2 MIX2"},
+	{"RX INT2 DEM MUX", "CLSH_DSM_OUT", "RX INT2 MIX3"},
+	{"RX INT2 DAC", NULL, "RX INT2 DEM MUX"},
+	{"RX INT2 DAC", NULL, "RX_BIAS"},
+	{"HPHR PA", NULL, "RX INT2 DAC"},
+	{"HPHR", NULL, "HPHR PA"},
+
+	/* RX3 HIFi LineOut1 */
+	WCD934X_INTERPOLATOR_PATH(3),
+	WCD934X_INTERPOLATOR_MIX2(3),
+	{"RX INT3 MIX3", NULL, "RX INT3 MIX2"},
+	{"RX INT3 DAC", NULL, "RX INT3 MIX3"},
+	{"RX INT3 DAC", NULL, "RX_BIAS"},
+	{"LINEOUT1 PA", NULL, "RX INT3 DAC"},
+	{"LINEOUT1", NULL, "LINEOUT1 PA"},
+
+	/* RX4 HIFi LineOut2 */
+	WCD934X_INTERPOLATOR_PATH(4),
+	WCD934X_INTERPOLATOR_MIX2(4),
+	{"RX INT4 MIX3", NULL, "RX INT4 MIX2"},
+	{"RX INT4 DAC", NULL, "RX INT4 MIX3"},
+	{"RX INT4 DAC", NULL, "RX_BIAS"},
+	{"LINEOUT2 PA", NULL, "RX INT4 DAC"},
+	{"LINEOUT2", NULL, "LINEOUT2 PA"},
+
+	/* RX7 Speaker Left Out PA */
+	WCD934X_INTERPOLATOR_PATH(7),
+	WCD934X_INTERPOLATOR_MIX2(7),
+	{"RX INT7 CHAIN", NULL, "RX INT7 MIX2"},
+	{"RX INT7 CHAIN", NULL, "RX_BIAS"},
+	{"RX INT7 CHAIN", NULL, "SBOOST0"},
+	{"RX INT7 CHAIN", NULL, "SBOOST0_CLK"},
+	{"SPK1 OUT", NULL, "RX INT7 CHAIN"},
+
+	/* RX8 Speaker Right Out PA */
+	WCD934X_INTERPOLATOR_PATH(8),
+	{"RX INT8 CHAIN", NULL, "RX INT8 SEC MIX"},
+	{"RX INT8 CHAIN", NULL, "RX_BIAS"},
+	{"RX INT8 CHAIN", NULL, "SBOOST1"},
+	{"RX INT8 CHAIN", NULL, "SBOOST1_CLK"},
+	{"SPK2 OUT", NULL, "RX INT8 CHAIN"},
+
+	/* Tx */
+	{"AIF1 CAP", NULL, "AIF1_CAP Mixer"},
+	{"AIF2 CAP", NULL, "AIF2_CAP Mixer"},
+	{"AIF3 CAP", NULL, "AIF3_CAP Mixer"},
+
+	WCD934X_SLIM_TX_AIF_PATH(0),
+	WCD934X_SLIM_TX_AIF_PATH(1),
+	WCD934X_SLIM_TX_AIF_PATH(2),
+	WCD934X_SLIM_TX_AIF_PATH(3),
+	WCD934X_SLIM_TX_AIF_PATH(4),
+	WCD934X_SLIM_TX_AIF_PATH(5),
+	WCD934X_SLIM_TX_AIF_PATH(6),
+	WCD934X_SLIM_TX_AIF_PATH(7),
+	WCD934X_SLIM_TX_AIF_PATH(8),
+
+	WCD934X_ADC_MUX(0),
+	WCD934X_ADC_MUX(1),
+	WCD934X_ADC_MUX(2),
+	WCD934X_ADC_MUX(3),
+	WCD934X_ADC_MUX(4),
+	WCD934X_ADC_MUX(5),
+	WCD934X_ADC_MUX(6),
+	WCD934X_ADC_MUX(7),
+	WCD934X_ADC_MUX(8),
+
+	{"CDC_IF TX0 MUX", "DEC0", "ADC MUX0"},
+	{"CDC_IF TX1 MUX", "DEC1", "ADC MUX1"},
+	{"CDC_IF TX2 MUX", "DEC2", "ADC MUX2"},
+	{"CDC_IF TX3 MUX", "DEC3", "ADC MUX3"},
+	{"CDC_IF TX4 MUX", "DEC4", "ADC MUX4"},
+	{"CDC_IF TX5 MUX", "DEC5", "ADC MUX5"},
+	{"CDC_IF TX6 MUX", "DEC6", "ADC MUX6"},
+	{"CDC_IF TX7 MUX", "DEC7", "ADC MUX7"},
+	{"CDC_IF TX8 MUX", "DEC8", "ADC MUX8"},
+
+	{"AMIC4_5 SEL", "AMIC4", "AMIC4"},
+	{"AMIC4_5 SEL", "AMIC5", "AMIC5"},
+
+	{ "DMIC0", NULL, "DMIC0 Pin" },
+	{ "DMIC1", NULL, "DMIC1 Pin" },
+	{ "DMIC2", NULL, "DMIC2 Pin" },
+	{ "DMIC3", NULL, "DMIC3 Pin" },
+	{ "DMIC4", NULL, "DMIC4 Pin" },
+	{ "DMIC5", NULL, "DMIC5 Pin" },
+
+	{"ADC1", NULL, "AMIC1"},
+	{"ADC2", NULL, "AMIC2"},
+	{"ADC3", NULL, "AMIC3"},
+	{"ADC4", NULL, "AMIC4_5 SEL"},
+
+	WCD934X_IIR_INP_MUX(0),
+	WCD934X_IIR_INP_MUX(1),
+
+	{"SRC0", NULL, "IIR0"},
+	{"SRC1", NULL, "IIR1"},
+};
+
 static const struct snd_soc_component_driver wcd934x_component_drv = {
 	.probe = wcd934x_comp_probe,
 	.remove = wcd934x_comp_remove,
@@ -4686,6 +4974,8 @@ static const struct snd_soc_component_driver wcd934x_component_drv = {
 	.num_controls = ARRAY_SIZE(wcd934x_snd_controls),
 	.dapm_widgets = wcd934x_dapm_widgets,
 	.num_dapm_widgets = ARRAY_SIZE(wcd934x_dapm_widgets),
+	.dapm_routes = wcd934x_audio_map,
+	.num_dapm_routes = ARRAY_SIZE(wcd934x_audio_map),
 };
 
 static int wcd934x_codec_parse_data(struct wcd934x_codec *wcd)
-- 
2.20.1

_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel

             reply	other threads:[~2019-12-25 18:24 UTC|newest]

Thread overview: 116+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-25 18:21 [alsa-devel] Applied "ASoC: wcd934x: add audio routings" to the asoc tree Mark Brown
  -- strict thread matches above, loose matches on Subject: below --
2020-04-14 14:48 Applied "ASoC: soc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer" " Mark Brown
2020-04-14 14:48 Applied "ASoC: soc-core: set rtd->num_cpu/codec at soc_new_pcm_runtime()" " Mark Brown
2020-04-14 14:48 Applied "ASoC: soc-core: tidyup soc_new_pcm_runtime() rtd setups" " Mark Brown
2020-04-14 14:48 Applied "ASoC: soc-core: remove cpu_dai/codec_dai/cpu_dais/codec_dais" " Mark Brown
2020-04-14 14:46 Applied "ASoC: rockchip-spdif: add #sound-dai-cells property" " Mark Brown
2020-04-14 14:46 Applied "ASoC: rockchip-spdif: add power-domains " Mark Brown
2020-04-14 14:46 Applied "ASoC: wsa881x: mark read_only_wordlength flag" " Mark Brown
2020-04-14 11:59 Applied "ASoC: tas571x: disable regulators on failed probe" " Mark Brown
2020-03-27 15:34 Applied "ASoC: SOF: Intel: add SoundWire configuration interface" " Mark Brown
2020-03-27 15:34 Applied "ASoC: SOF: IPC: dai-intel: move ALH declarations in header file" " Mark Brown
2020-03-27 15:34 Applied "ASoC: SOF: Intel: hda: add SoundWire stream config/free callbacks" " Mark Brown
2020-03-27 15:33 Applied "ASoC: SOF: Intel: hda: disable SoundWire interrupts on suspend" " Mark Brown
2020-03-27 15:33 Applied "ASoC: SOF: Intel: hda: merge IPC, stream and SoundWire interrupt handlers" " Mark Brown
2020-03-27 15:33 Applied "ASoC: SOF: Intel: hda: add parameter to control SoundWire clock stop quirks" " Mark Brown
2020-03-27 15:33 Applied "ASoC: SOF: Intel: hda: add WAKEEN interrupt support for SoundWire" " Mark Brown
2020-03-27 15:33 Applied "Asoc: SOF: Intel: hda: check SoundWire wakeen interrupt in irq thread" " Mark Brown
2020-03-26 19:05 Applied "ASoC: SOF: (cosmetic) use for_each_pcm_streams() in sof_dai_load()" " Mark Brown
2020-03-26 19:05 Applied "ASoC: SOF: fix uninitialised "work" with VirtIO" " Mark Brown
2020-03-25 21:33 Applied "ASoC: Intel: broadwell: Revert back SSP0 link to use dummy components" " Mark Brown
2020-03-24 17:16 Applied "dt-bindings: sound: convert rockchip i2s bindings to yaml" " Mark Brown
2020-03-24 17:16 Applied "dt-bindings: sound: rockchip-i2s: add #sound-dai-cells property" " Mark Brown
2020-03-20 20:45 Applied "ASoC: soc-core: Merge CPU/Codec DAIs" " Mark Brown
2020-03-20 20:45 Applied "ASoC: soc-core: Merge for_each_rtd_cpu/codec_dais()" " Mark Brown
2020-03-20 20:45 Applied "ASoC: soc-dapm: " Mark Brown
2020-03-20 20:45 Applied "ASoC: soc-core: Merge CPU/Codec for soc_dai_pcm_new()" " Mark Brown
2020-03-18 21:41 Applied "ASoC: codecs: wsa881x: remove soundwire stream handling" " Mark Brown
2020-03-16 18:08 Applied "ALSA: compress: add wma codec profiles" " Mark Brown
2020-03-16 18:08 Applied "ALSA: compress: Add wma decoder params" " Mark Brown
2020-03-16 18:08 Applied "ASoC: qcom: q6asm: pass codec profile to q6asm_open_write" " Mark Brown
2020-03-16 18:08 Applied "ASoC: qcom: q6asm: add support to wma config" " Mark Brown
2020-03-16 18:08 Applied "ASoC: qcom: q6asm-dai: add support to wma decoder" " Mark Brown
2020-03-16 18:08 Applied "ALSA: compress: add alac & ape decoder params" " Mark Brown
2020-03-16 18:08 Applied "ASoC: qcom: q6asm: add support for alac and ape configs" " Mark Brown
2020-03-16 18:07 Applied "ALSA: compress: bump the version" " Mark Brown
2020-03-13 16:18 Applied "ASoC: Intel: boards: drop reverse deps for SND_HDA_CODEC_HDMI" " Mark Brown
2020-03-13 16:17 Applied "ASoC: Intel: sof_pcm512x: " Mark Brown
2020-03-13 16:17 Applied "ASoC: Intel: sof_pcm512x: make HDMI optional for all platforms" " Mark Brown
2020-03-13 16:17 Applied "ASoC: SOF: Intel: hda: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC" " Mark Brown
2020-03-13 16:17 Applied "ASoC: codecs: hdac_hdmi: (cosmetic) remove redundant variable initialisations" " Mark Brown
2020-03-13 16:17 Applied "ASoC: Intel: skylake: " Mark Brown
2020-03-13 16:17 Applied "ASoC: Intel: (cosmetic) simplify structure member access" " Mark Brown
2020-03-13 16:17 Applied "ASoC: Intel: sof_da7219_max98373: Add support for max98360a speaker amp" " Mark Brown
2020-03-12 13:12 Applied "ASoC: SOF: Intel: Fix stream cleanup on hw free" " Mark Brown
2020-03-11 18:00 Applied "ASoC: zte: zx-tdm: remove redundant variables dev" " Mark Brown
2020-03-09 14:03 Applied "ASoC: jz4740-i2s: Fix divider written at incorrect offset in register" " Mark Brown
2020-03-06 15:03 Applied "ALSA: pcm: Add a standalone version of snd_pcm_limit_hw_rates" " Mark Brown
2020-03-06 15:03 Applied "ASoC: pcm: Export parameter intersection logic" " Mark Brown
2020-03-06 15:03 Applied "ASoC: soc-pcm: move dpcm_fe_dai_close()" " Mark Brown
2020-03-06 15:03 Applied "ASoC: soc-pcm: add dpcm_fe_dai_cleanup()" " Mark Brown
2020-03-06 15:03 Applied "ASoC: soc-pcm: use snd_soc_dai_get_pcm_stream() at dpcm_set_fe_runtime()" " Mark Brown
2020-03-06 15:03 Applied "ASoC: soc-pcm: tidyup dulicate handing at dpcm_fe_dai_startup()" " Mark Brown
2020-03-05 13:15 Applied "ASoC: soc-pcm: use defined stream" " Mark Brown
2020-03-05 13:15 Applied "ASoC: soc-pcm: remove duplicate be check from dpcm_add_paths()" " Mark Brown
2020-03-04 13:39 Applied "ASoC: stm32: sai: manage rebind issue" " Mark Brown
2020-03-03 17:07 Applied "ASoC: amd: Fix compile warning of argument type" " Mark Brown
2020-03-02 14:36 Applied "ASoC: rt1015: set snd_soc_dai_ops in rt1015_dai driver" " Mark Brown
2020-02-26 18:48 Applied "ASoC: tas2562: Fix sample rate error message" " Mark Brown
2020-02-26 18:47 Applied "ASoC: Add dapm_add_valid_dai_widget helper" " Mark Brown
2020-02-26 18:47 Applied "ASoC: Add multiple CPU DAI support in DAPM" " Mark Brown
2020-02-26 18:47 Applied "ASoC: dt-bindings: Add TAS2563 compatible to the TAS2562 binding" " Mark Brown
2020-02-26 18:47 Applied "ASoC: tas2562: Add entries for the TAS2563 audio amplifier" " Mark Brown
2020-02-20 22:18 Applied "dt-bindings: sound: Add TLV320ADCx140 dt bindings" " Mark Brown
2020-02-19 20:57 Applied "ASoC: soundwaire: qcom: use for_each_rtd_codec_dai() macro" " Mark Brown
2020-02-19 20:57 Applied "ASoC: qcom: sdm845: " Mark Brown
2020-02-19 20:57 Applied "ASoC: qcom: apq8016_sbc: " Mark Brown
2020-02-19 20:57 Applied "ASoC: intel: cml_rt1011_rt5682: " Mark Brown
2020-02-19 20:57 Applied "ASoC: intel: kbl_da7219_max98927: " Mark Brown
2020-02-19 20:57 Applied "ASoC: mediatek: mt8183-da7219-max98357: " Mark Brown
2020-02-19 20:57 Applied "ASoC: dt-bindings: Make RK3328 codec GPIO explicit" " Mark Brown
2020-02-19 20:56 Applied "ASoC: meson: add t9015 internal codec binding documentation" " Mark Brown
2020-02-19  0:11 Applied "ASoC: tas2562: Return invalid for when bitwidth is invalid" " Mark Brown
2020-02-19  0:11 Applied "ALSA: core: Expand DMA buffer information" " Mark Brown
2020-02-19  0:11 Applied "ALSA: core: Implement compress page allocation and free routines" " Mark Brown
2020-02-19  0:10 Applied "ASoC: SOF: Implement Probe IPC API" " Mark Brown
2020-02-19  0:10 Applied "ASoC: SOF: Generic probe compress operations" " Mark Brown
2020-02-19  0:10 Applied "ASoC: SOF: Provide probe debugfs support" " Mark Brown
2020-02-19  0:10 Applied "ASoC: SOF: Intel: Add Probe compress CPU DAIs" " Mark Brown
2020-02-19  0:10 Applied "ASoC: rt5682: Add DAI clock binding info for WCLK/BCLK CCF usage" " Mark Brown
2020-02-19  0:10 Applied "ASoC: soc-pcm: move dai_get_widget()" " Mark Brown
2020-02-19  0:10 Applied "ASoC: soc-pcm: use dai_get_widget() at dpcm_get_be()" " Mark Brown
2020-02-19  0:10 Applied "ASoC: soc-pcm: use dai_get_widget() at dpcm_end_walk_at_be()" " Mark Brown
2020-02-19  0:10 Applied "ASoC: soc-pcm: use dpcm_get_be() " Mark Brown
2020-02-19  0:10 Applied "ASoC: soc-pcm: remove soc_dpcm_be_digital_mute()" " Mark Brown
2020-02-19  0:09 Applied "ASoC: soc-pcm: remove snd_soc_dpcm_be_get/set_state()" " Mark Brown
2020-02-19  0:09 Applied "ASoC: soc-pcm: add snd_soc_dpcm_can_be() and remove duplicate code" " Mark Brown
2020-02-19  0:09 Applied "ASoC: soc-pcm: use goto and remove multi return" " Mark Brown
2020-02-19  0:09 Applied "ASoC: soc-pcm: merge playback/cature_active into stream_active" " Mark Brown
2020-02-19  0:09 Applied "ALSA: pcm.h: add for_each_pcm_streams()" " Mark Brown
2020-02-19  0:09 Applied "ASoC: soc-core: use for_each_pcm_streams() macro" " Mark Brown
2020-02-19  0:09 Applied "ASoC: soc-pcm: " Mark Brown
2020-02-19  0:09 Applied "ASoC: soc-generic-dmaengine-pcm: " Mark Brown
2020-02-19  0:09 Applied "ASoC: dwc: dwc-i2s: " Mark Brown
2020-02-19  0:09 Applied "ASoC: fsl: fsl_asrc_dma: " Mark Brown
2020-02-19  0:09 Applied "ASoC: qcom: lpass-platform: " Mark Brown
2020-02-19  0:09 Applied "ASoC: sof: sof-audio: " Mark Brown
2020-02-19  0:09 Applied "ALSA: usx2y: " Mark Brown
2020-02-13 13:32 [alsa-devel] Applied "ASoC: mediatek: mt8183-da7219: change supported formats of DL2 and UL1" " Mark Brown
2020-02-13 13:32 [alsa-devel] Applied "ASoC: mediatek: mt8183-da7219: pull TDM GPIO pins down when probed" " Mark Brown
2020-02-13 13:32 [alsa-devel] Applied "ASoC: mediatek: mt8183-da7219: support TDM out and 8ch I2S out" " Mark Brown
2020-02-13 13:32 [alsa-devel] Applied "ASoC: mediatek: mt8183-da7219: apply some refactors" " Mark Brown
2020-01-15 14:12 [alsa-devel] Applied "regulator fix for "regulator: core: Add regulator_is_equal() helper"" " Mark Brown
2020-01-13 16:11 [alsa-devel] Applied "ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m" " Mark Brown
2020-01-13 16:11 [alsa-devel] Applied "ASoC: rt1308-sdw: add rt1308 SdW amplifier driver" " Mark Brown
2020-01-13 15:13 [alsa-devel] Applied "ASoC: SOF: Intel: fix HDA codec driver probe with multiple controllers" " Mark Brown
2020-01-13 15:13 [alsa-devel] Applied "ASoC: sti: fix possible sleep-in-atomic" " Mark Brown
2020-01-10 13:38 [alsa-devel] Applied "ASoC: max98090: Drop incorrectly applied duplicate commit" " Mark Brown
2019-12-27  1:08 [alsa-devel] Applied "ASoC: amd: Create multiple I2S platform device endpoint" " Mark Brown
2019-12-25 18:21 [alsa-devel] Applied "ASoC: dt-bindings: add dt bindings for WCD9340/WCD9341 audio codec" " Mark Brown
2019-12-25 18:21 [alsa-devel] Applied "ASoC: wcd934x: add basic controls" " Mark Brown
2019-12-25 18:21 [alsa-devel] Applied "ASoC: wcd934x: add playback dapm widgets" " Mark Brown
2019-12-25 18:21 [alsa-devel] Applied "ASoC: wcd934x: add capture " Mark Brown
2019-12-25 18:21 [alsa-devel] Applied "ASoC: qcom: dt-bindings: Add compatible for DB845c and Lenovo Yoga" " Mark Brown
2019-12-25 18:21 [alsa-devel] Applied "ASoC: qcom: sdm845: add support to " Mark Brown
2019-12-25  0:09 [alsa-devel] Applied "ASoC: fsl_audmix: add missed pm_runtime_disable" " Mark Brown
2019-11-18 17:48 [alsa-devel] Applied "ASoC: SOF: Intel: Fix build break" " Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to= \
    --to=broonie@kernel.org \
    --cc=alsa-devel@alsa-project.org \
    --cc=srinivas.kandagatla@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).