asoc: tavil: modify RX routes and dapm widgets

Observed audio playback mute after upgrade to 5.4 kernel
due to change in dapm power up sequence in 5.4 kernel.
Modified tavil RX routes and  dapm widgets to
meet the recent kenrel dapm power up sequence.

Change-Id: I24576f342c43e586ed9b55eeab2510c59c70e33d
Signed-off-by: Vijay Kumar Maddula <quic_vmaddula@quicinc.com>
This commit is contained in:
Vijay Kumar Maddula 2022-09-30 20:39:35 +05:30 committed by Gerrit - the friendly Code Review server
parent 5be9ed037a
commit 66448f4e5e
2 changed files with 56 additions and 44 deletions

View File

@ -1,6 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
*/
#ifndef WCD934X_ROUTING_H
#define WCD934X_ROUTING_H
@ -71,41 +72,46 @@ const struct snd_soc_dapm_route tavil_slim_audio_map[] = {
{"SLIM TX11", NULL, "CDC_IF TX11 MUX"},
{"SLIM TX13", NULL, "CDC_IF TX13 MUX"},
{"SLIM RX0 MUX", "AIF1_PB", "AIF1 PB"},
{"SLIM RX1 MUX", "AIF1_PB", "AIF1 PB"},
{"SLIM RX2 MUX", "AIF1_PB", "AIF1 PB"},
{"SLIM RX3 MUX", "AIF1_PB", "AIF1 PB"},
{"SLIM RX4 MUX", "AIF1_PB", "AIF1 PB"},
{"SLIM RX5 MUX", "AIF1_PB", "AIF1 PB"},
{"SLIM RX6 MUX", "AIF1_PB", "AIF1 PB"},
{"SLIM RX7 MUX", "AIF1_PB", "AIF1 PB"},
{"AIF4 PB MIX", NULL, "AIF4 PB"},
{"AIF3 PB MIX", NULL, "AIF3 PB"},
{"AIF2 PB MIX", NULL, "AIF2 PB"},
{"AIF1 PB MIX", NULL, "AIF1 PB"},
{"SLIM RX0 MUX", "AIF2_PB", "AIF2 PB"},
{"SLIM RX1 MUX", "AIF2_PB", "AIF2 PB"},
{"SLIM RX2 MUX", "AIF2_PB", "AIF2 PB"},
{"SLIM RX3 MUX", "AIF2_PB", "AIF2 PB"},
{"SLIM RX4 MUX", "AIF2_PB", "AIF2 PB"},
{"SLIM RX5 MUX", "AIF2_PB", "AIF2 PB"},
{"SLIM RX6 MUX", "AIF2_PB", "AIF2 PB"},
{"SLIM RX7 MUX", "AIF2_PB", "AIF2 PB"},
{"SLIM RX0 MUX", "AIF1_PB", "AIF1 PB MIX"},
{"SLIM RX1 MUX", "AIF1_PB", "AIF1 PB MIX"},
{"SLIM RX2 MUX", "AIF1_PB", "AIF1 PB MIX"},
{"SLIM RX3 MUX", "AIF1_PB", "AIF1 PB MIX"},
{"SLIM RX4 MUX", "AIF1_PB", "AIF1 PB MIX"},
{"SLIM RX5 MUX", "AIF1_PB", "AIF1 PB MIX"},
{"SLIM RX6 MUX", "AIF1_PB", "AIF1 PB MIX"},
{"SLIM RX7 MUX", "AIF1_PB", "AIF1 PB MIX"},
{"SLIM RX0 MUX", "AIF3_PB", "AIF3 PB"},
{"SLIM RX1 MUX", "AIF3_PB", "AIF3 PB"},
{"SLIM RX2 MUX", "AIF3_PB", "AIF3 PB"},
{"SLIM RX3 MUX", "AIF3_PB", "AIF3 PB"},
{"SLIM RX4 MUX", "AIF3_PB", "AIF3 PB"},
{"SLIM RX5 MUX", "AIF3_PB", "AIF3 PB"},
{"SLIM RX6 MUX", "AIF3_PB", "AIF3 PB"},
{"SLIM RX7 MUX", "AIF3_PB", "AIF3 PB"},
{"SLIM RX0 MUX", "AIF2_PB", "AIF2 PB MIX"},
{"SLIM RX1 MUX", "AIF2_PB", "AIF2 PB MIX"},
{"SLIM RX2 MUX", "AIF2_PB", "AIF2 PB MIX"},
{"SLIM RX3 MUX", "AIF2_PB", "AIF2 PB MIX"},
{"SLIM RX4 MUX", "AIF2_PB", "AIF2 PB MIX"},
{"SLIM RX5 MUX", "AIF2_PB", "AIF2 PB MIX"},
{"SLIM RX6 MUX", "AIF2_PB", "AIF2 PB MIX"},
{"SLIM RX7 MUX", "AIF2_PB", "AIF2 PB MIX"},
{"SLIM RX0 MUX", "AIF4_PB", "AIF4 PB"},
{"SLIM RX1 MUX", "AIF4_PB", "AIF4 PB"},
{"SLIM RX2 MUX", "AIF4_PB", "AIF4 PB"},
{"SLIM RX3 MUX", "AIF4_PB", "AIF4 PB"},
{"SLIM RX4 MUX", "AIF4_PB", "AIF4 PB"},
{"SLIM RX5 MUX", "AIF4_PB", "AIF4 PB"},
{"SLIM RX6 MUX", "AIF4_PB", "AIF4 PB"},
{"SLIM RX7 MUX", "AIF4_PB", "AIF4 PB"},
{"SLIM RX0 MUX", "AIF3_PB", "AIF3 PB MIX"},
{"SLIM RX1 MUX", "AIF3_PB", "AIF3 PB MIX"},
{"SLIM RX2 MUX", "AIF3_PB", "AIF3 PB MIX"},
{"SLIM RX3 MUX", "AIF3_PB", "AIF3 PB MIX"},
{"SLIM RX4 MUX", "AIF3_PB", "AIF3 PB MIX"},
{"SLIM RX5 MUX", "AIF3_PB", "AIF3 PB MIX"},
{"SLIM RX6 MUX", "AIF3_PB", "AIF3 PB MIX"},
{"SLIM RX7 MUX", "AIF3_PB", "AIF3 PB MIX"},
{"SLIM RX0 MUX", "AIF4_PB", "AIF4 PB MIX"},
{"SLIM RX1 MUX", "AIF4_PB", "AIF4 PB MIX"},
{"SLIM RX2 MUX", "AIF4_PB", "AIF4 PB MIX"},
{"SLIM RX3 MUX", "AIF4_PB", "AIF4 PB MIX"},
{"SLIM RX4 MUX", "AIF4_PB", "AIF4 PB MIX"},
{"SLIM RX5 MUX", "AIF4_PB", "AIF4 PB MIX"},
{"SLIM RX6 MUX", "AIF4_PB", "AIF4 PB MIX"},
{"SLIM RX7 MUX", "AIF4_PB", "AIF4 PB MIX"},
{"SLIM RX0", NULL, "SLIM RX0 MUX"},
{"SLIM RX1", NULL, "SLIM RX1 MUX"},

View File

@ -7835,9 +7835,11 @@ static const struct snd_kcontrol_new lo2_mixer[] = {
};
static const struct snd_soc_dapm_widget tavil_dapm_slim_widgets[] = {
SND_SOC_DAPM_AIF_IN_E("AIF4 PB", "AIF4 Playback", 0, SND_SOC_NOPM,
AIF4_PB, 0, tavil_codec_enable_rx,
SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
SND_SOC_DAPM_AIF_IN("AIF4 PB", "AIF4 Playback", 0, SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_MIXER_E("AIF4 PB MIX", SND_SOC_NOPM, AIF4_PB, 0,
NULL, 0, tavil_codec_enable_rx,
SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
SND_SOC_DAPM_AIF_OUT_E("AIF4 VI", "VIfeed", 0, SND_SOC_NOPM,
AIF4_VIFEED, 0,
@ -7884,15 +7886,19 @@ static const struct snd_soc_dapm_widget tavil_dapm_slim_widgets[] = {
};
static const struct snd_soc_dapm_widget tavil_dapm_widgets[] = {
SND_SOC_DAPM_AIF_IN_E("AIF1 PB", "AIF1 Playback", 0, SND_SOC_NOPM,
AIF1_PB, 0, tavil_codec_enable_rx,
SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
SND_SOC_DAPM_AIF_IN_E("AIF2 PB", "AIF2 Playback", 0, SND_SOC_NOPM,
AIF2_PB, 0, tavil_codec_enable_rx,
SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
SND_SOC_DAPM_AIF_IN_E("AIF3 PB", "AIF3 Playback", 0, SND_SOC_NOPM,
AIF3_PB, 0, tavil_codec_enable_rx,
SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
SND_SOC_DAPM_AIF_IN("AIF1 PB", "AIF1 Playback", 0, SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_AIF_IN("AIF2 PB", "AIF2 Playback", 0, SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_AIF_IN("AIF3 PB", "AIF3 Playback", 0, SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_MIXER_E("AIF1 PB MIX", SND_SOC_NOPM, AIF1_PB, 0,
NULL, 0, tavil_codec_enable_rx,
SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
SND_SOC_DAPM_MIXER_E("AIF2 PB MIX", SND_SOC_NOPM, AIF2_PB, 0,
NULL, 0, tavil_codec_enable_rx,
SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
SND_SOC_DAPM_MIXER_E("AIF3 PB MIX", SND_SOC_NOPM, AIF3_PB, 0,
NULL, 0, tavil_codec_enable_rx,
SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
WCD_DAPM_MUX("CDC_IF RX0 MUX", WCD934X_RX0, cdc_if_rx0),
WCD_DAPM_MUX("CDC_IF RX1 MUX", WCD934X_RX1, cdc_if_rx1),