Re: [PATCH v4 3/4] ASoC: Intel: sof_es8336: add a quirk for headset at mic1 port

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




  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"},
+};
+




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux