Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ba23bb53 authored by Mohammad Johny Shaik's avatar Mohammad Johny Shaik
Browse files

ASoC: msm: Add RDAC3 Mixer control support for headset right.



Currently HPHR is configured by default to RX2.Add new Mixer control
RDAC3 where in RDAC3 is dynamically configured either to RX2 or RX1
and then connect RDAC3 to HPHR.

CRs-Fixed: 588189
Change-Id: I06d139e9e4c703e2d3093018def3aa9720e3e8b3
Signed-off-by: default avatarMohammad Johny Shaik <mjshai@codeaurora.org>
parent 39e0d0b3
Loading
Loading
Loading
Loading
+17 −1
Original line number Diff line number Diff line
@@ -1271,6 +1271,10 @@ static const char * const rx_rdac4_text[] = {
	"ZERO", "RX3", "RX2"
};

static const char * const rx_rdac3_text[] = {
	"RX1", "RX2"
};

static const struct soc_enum rx_mix1_inp1_chain_enum =
	SOC_ENUM_SINGLE(MSM8X10_WCD_A_CDC_CONN_RX1_B1_CTL, 0, 6, rx_mix1_text);

@@ -1312,6 +1316,10 @@ static const struct soc_enum rx_rdac4_enum =
	SOC_ENUM_SINGLE(MSM8X10_WCD_A_CDC_CONN_LO_DAC_CTL, 0, 3,
	rx_rdac4_text);

static const struct soc_enum rx_rdac3_enum  =
	SOC_ENUM_SINGLE(MSM8X10_WCD_A_CDC_CONN_HPHR_DAC_CTL, 0, 2,
	rx_rdac3_text);

static const struct soc_enum adc2_enum =
	SOC_ENUM_SINGLE_EXT(ARRAY_SIZE(adc2_mux_text), adc2_mux_text);

@@ -1345,6 +1353,9 @@ static const struct snd_kcontrol_new rx2_mix2_inp1_mux =
static const struct snd_kcontrol_new rx_dac4_mux =
	SOC_DAPM_ENUM("RDAC4 MUX Mux", rx_rdac4_enum);

static const struct snd_kcontrol_new rx_dac3_mux =
	SOC_DAPM_ENUM("RDAC3 MUX Mux", rx_rdac3_enum);

static const struct snd_kcontrol_new tx_adc2_mux =
	SOC_DAPM_ENUM("ADC2 MUX Mux", adc2_enum);

@@ -1969,7 +1980,10 @@ static const struct snd_soc_dapm_route audio_map[] = {

	{"DAC1", "Switch", "RX1 CHAIN"},
	{"HPHL DAC", "Switch", "RX1 CHAIN"},
	{"HPHR DAC", NULL, "RX2 CHAIN"},
	{"HPHR DAC", NULL, "RDAC3 MUX"},

	{"RDAC3 MUX", "RX1", "RX1 CHAIN"},
	{"RDAC3 MUX", "RX2", "RX2 CHAIN"},

	{"LINEOUT", NULL, "LINEOUT PA"},
	{"SPK_OUT", NULL, "SPK PA"},
@@ -2411,6 +2425,8 @@ static const struct snd_soc_dapm_widget msm8x10_wcd_dapm_widgets[] = {
		&rx2_mix2_inp1_mux),
	SND_SOC_DAPM_MUX("RDAC4 MUX", SND_SOC_NOPM, 0, 0,
		&rx_dac4_mux),
	SND_SOC_DAPM_MUX("RDAC3 MUX", SND_SOC_NOPM, 0, 0,
		&rx_dac3_mux),

	SND_SOC_DAPM_SUPPLY("MICBIAS_REGULATOR", SND_SOC_NOPM,
		ON_DEMAND_MICBIAS, 0,