[PATCH v4 3/4] ASoC: Intel: sof_es8336: add a quirk for headset at mic1 port
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Thu Apr 7 05:08:53 CEST 2022
> static int sof_es8316_speaker_power_event(struct snd_soc_dapm_widget *w,
> @@ -145,13 +148,23 @@ static const struct snd_soc_dapm_route sof_es8316_audio_map[] = {
> {"Speaker", NULL, "HPOL"},
> {"Speaker", NULL, "HPOR"},
> {"Speaker", NULL, "Speaker Power"},
> +
> + {"Differential Mux", "lin1-rin1", "MIC1"},
> + {"Differential Mux", "lin2-rin2", "MIC2"},
> + {"Differential Mux", "lin1-rin1 with 20db Boost", "MIC1"},
> + {"Differential Mux", "lin2-rin2 with 20db Boost", "MIC2"},
this is surprising, shouldn't this be part of the codec driver?
The part that should be machine-specific is really how MIC1 or MIC2 are
connected (as done below), but the routes above seem machine-independent?
Or is this a work-around for a miss in the codec driver?
Confused...
> };
>
> -static const struct snd_soc_dapm_route sof_es8316_intmic_in1_map[] = {
> +static const struct snd_soc_dapm_route sof_es8316_headset_mic2_map[] = {
> {"MIC1", NULL, "Internal Mic"},
> {"MIC2", NULL, "Headset Mic"},
> };
>
> +static const struct snd_soc_dapm_route sof_es8316_headset_mic1_map[] = {
> + {"MIC2", NULL, "Internal Mic"},
> + {"MIC1", NULL, "Headset Mic"},
> +};
> +
More information about the Alsa-devel
mailing list