Re: [PATCH v4 7/8] ASoC: qcom: lpass-tx-macro: Add support for Bolero v4.0

From: Prasad Kumpatla

Date: Thu Oct 01 2026 - 08:51:19 EST



On 9/22/2026 9:19 PM, Mark Brown wrote:
On Tue, Sep 22, 2026 at 03:12:36PM +0530, Mohammad Rafi Shaik wrote:

+static const struct snd_soc_dapm_widget tx_macro_dapm_widgets_v15[] = {
+ SND_SOC_DAPM_MUX("TX DEC0 MUX", SND_SOC_NOPM, 0, 0, &tx_dec0_mux_v9_3),
+ SND_SOC_DAPM_MUX("TX DEC1 MUX", SND_SOC_NOPM, 0, 0, &tx_dec1_mux_v9_3),
+ SND_SOC_DAPM_MUX("TX DEC2 MUX", SND_SOC_NOPM, 0, 0, &tx_dec2_mux_v9_3),
+ SND_SOC_DAPM_MUX("TX DEC3 MUX", SND_SOC_NOPM, 0, 0, &tx_dec3_mux_v9_3),
+ SND_SOC_DAPM_MUX("TX DEC4 MUX", SND_SOC_NOPM, 0, 0, &tx_dec4_mux_v9_3),
+ SND_SOC_DAPM_MUX("TX DEC5 MUX", SND_SOC_NOPM, 0, 0, &tx_dec5_mux_v9_3),
+ SND_SOC_DAPM_MUX("TX DEC6 MUX", SND_SOC_NOPM, 0, 0, &tx_dec6_mux_v9_3),
+ SND_SOC_DAPM_MUX("TX DEC7 MUX", SND_SOC_NOPM, 0, 0, &tx_dec7_mux_v9_3),
There are existing widgets of these names in the base widgets that are
unconditionally registered so these should collide and get an -EBUSY
during registration. If you need something different for the newer
devices you should move the base copy out of the shared table.

Hi Mark,

Thanks for pointing out this.

Yes, this is the duplicate-widget issue. I will fix it by moving the base DEC widgets out of the shared widget table and registering exactly one DEC widget table

per device version. Older devices use the default DEC widgets, while v15/Hawi selectsthe v15 DEC widgets through match data.

This avoids duplicate TX DECn MUX registration and preserves the v15-specific mux enum and DAPM events.

Thanks,
Prasad