]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.15-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Oct 2024 18:27:03 +0000 (20:27 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Oct 2024 18:27:03 +0000 (20:27 +0200)
added patches:
alsa-hda-conexant-fix-audio-routing-for-hp-eliteone-1000-g2.patch
series

queue-5.15/alsa-hda-conexant-fix-audio-routing-for-hp-eliteone-1000-g2.patch [new file with mode: 0644]
queue-5.15/series [new file with mode: 0644]

diff --git a/queue-5.15/alsa-hda-conexant-fix-audio-routing-for-hp-eliteone-1000-g2.patch b/queue-5.15/alsa-hda-conexant-fix-audio-routing-for-hp-eliteone-1000-g2.patch
new file mode 100644 (file)
index 0000000..311b1ed
--- /dev/null
@@ -0,0 +1,81 @@
+From 9988844c457f6f17fb2e75aa000b6c3b1b673bb9 Mon Sep 17 00:00:00 2001
+From: Vasiliy Kovalev <kovalev@altlinux.org>
+Date: Wed, 9 Oct 2024 16:42:48 +0300
+Subject: ALSA: hda/conexant - Fix audio routing for HP EliteOne 1000 G2
+
+From: Vasiliy Kovalev <kovalev@altlinux.org>
+
+commit 9988844c457f6f17fb2e75aa000b6c3b1b673bb9 upstream.
+
+There is a problem with simultaneous audio output to headphones and
+speakers, and when headphones are turned off, the speakers also turn
+off and do not turn them on.
+
+However, it was found that if you boot linux immediately after windows,
+there are no such problems. When comparing alsa-info, the only difference
+is the different configuration of Node 0x1d:
+
+working conf. (windows): Pin-ctls: 0x80: HP
+not working     (linux): Pin-ctls: 0xc0: OUT HP
+
+This patch disable the AC_PINCTL_OUT_EN bit of Node 0x1d and fixes the
+described problem.
+
+Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>
+Cc: <stable@vger.kernel.org>
+Link: https://patch.msgid.link/20241009134248.662175-1-kovalev@altlinux.org
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ sound/pci/hda/patch_conexant.c |   19 +++++++++++++++++++
+ 1 file changed, 19 insertions(+)
+
+--- a/sound/pci/hda/patch_conexant.c
++++ b/sound/pci/hda/patch_conexant.c
+@@ -307,6 +307,7 @@ enum {
+       CXT_FIXUP_HP_SPECTRE,
+       CXT_FIXUP_HP_GATE_MIC,
+       CXT_FIXUP_MUTE_LED_GPIO,
++      CXT_FIXUP_HP_ELITEONE_OUT_DIS,
+       CXT_FIXUP_HP_ZBOOK_MUTE_LED,
+       CXT_FIXUP_HEADSET_MIC,
+       CXT_FIXUP_HP_MIC_NO_PRESENCE,
+@@ -324,6 +325,19 @@ static void cxt_fixup_stereo_dmic(struct
+       spec->gen.inv_dmic_split = 1;
+ }
++/* fix widget control pin settings */
++static void cxt_fixup_update_pinctl(struct hda_codec *codec,
++                                 const struct hda_fixup *fix, int action)
++{
++      if (action == HDA_FIXUP_ACT_PROBE) {
++              /* Unset OUT_EN for this Node pin, leaving only HP_EN.
++               * This is the value stored in the codec register after
++               * the correct initialization of the previous windows boot.
++               */
++              snd_hda_set_pin_ctl(codec, 0x1d, AC_PINCTL_HP_EN);
++      }
++}
++
+ static void cxt5066_increase_mic_boost(struct hda_codec *codec,
+                                  const struct hda_fixup *fix, int action)
+ {
+@@ -975,6 +989,10 @@ static const struct hda_fixup cxt_fixups
+               .type = HDA_FIXUP_FUNC,
+               .v.func = cxt_fixup_mute_led_gpio,
+       },
++      [CXT_FIXUP_HP_ELITEONE_OUT_DIS] = {
++              .type = HDA_FIXUP_FUNC,
++              .v.func = cxt_fixup_update_pinctl,
++      },
+       [CXT_FIXUP_HP_ZBOOK_MUTE_LED] = {
+               .type = HDA_FIXUP_FUNC,
+               .v.func = cxt_fixup_hp_zbook_mute_led,
+@@ -1065,6 +1083,7 @@ static const struct snd_pci_quirk cxt506
+       SND_PCI_QUIRK(0x103c, 0x83b2, "HP EliteBook 840 G5", CXT_FIXUP_HP_DOCK),
+       SND_PCI_QUIRK(0x103c, 0x83b3, "HP EliteBook 830 G5", CXT_FIXUP_HP_DOCK),
+       SND_PCI_QUIRK(0x103c, 0x83d3, "HP ProBook 640 G4", CXT_FIXUP_HP_DOCK),
++      SND_PCI_QUIRK(0x103c, 0x83e5, "HP EliteOne 1000 G2", CXT_FIXUP_HP_ELITEONE_OUT_DIS),
+       SND_PCI_QUIRK(0x103c, 0x8402, "HP ProBook 645 G4", CXT_FIXUP_MUTE_LED_GPIO),
+       SND_PCI_QUIRK(0x103c, 0x8427, "HP ZBook Studio G5", CXT_FIXUP_HP_ZBOOK_MUTE_LED),
+       SND_PCI_QUIRK(0x103c, 0x844f, "HP ZBook Studio G5", CXT_FIXUP_HP_ZBOOK_MUTE_LED),
diff --git a/queue-5.15/series b/queue-5.15/series
new file mode 100644 (file)
index 0000000..16d8fe2
--- /dev/null
@@ -0,0 +1 @@
+alsa-hda-conexant-fix-audio-routing-for-hp-eliteone-1000-g2.patch