From: Greg Kroah-Hartman Date: Mon, 8 Jan 2024 12:29:58 +0000 (+0100) Subject: 5.15-stable patches X-Git-Tag: v4.14.336~27 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4a81a8713cffe7076dfc7c84a597666cadc1881e;p=thirdparty%2Fkernel%2Fstable-queue.git 5.15-stable patches added patches: alsa-hda-realtek-fix-mute-and-mic-mute-leds-for-hp-probook-440-g6.patch revert-pci-aspm-remove-pcie_aspm_pm_state_change.patch --- diff --git a/queue-5.15/alsa-hda-realtek-fix-mute-and-mic-mute-leds-for-hp-probook-440-g6.patch b/queue-5.15/alsa-hda-realtek-fix-mute-and-mic-mute-leds-for-hp-probook-440-g6.patch new file mode 100644 index 00000000000..357f5d45505 --- /dev/null +++ b/queue-5.15/alsa-hda-realtek-fix-mute-and-mic-mute-leds-for-hp-probook-440-g6.patch @@ -0,0 +1,32 @@ +From b6ce6e6c79e4ec650887f1fe391a70e54972001a Mon Sep 17 00:00:00 2001 +From: Siddhesh Dharme +Date: Thu, 4 Jan 2024 11:37:36 +0530 +Subject: ALSA: hda/realtek: Fix mute and mic-mute LEDs for HP ProBook 440 G6 + +From: Siddhesh Dharme + +commit b6ce6e6c79e4ec650887f1fe391a70e54972001a upstream. + +LEDs in 'HP ProBook 440 G6' laptop are controlled by ALC236 codec. +Enable already existing quirk 'ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF' +to fix mute and mic-mute LEDs. + +Signed-off-by: Siddhesh Dharme +Cc: +Link: https://lore.kernel.org/r/20240104060736.5149-1-siddheshdharme18@gmail.com +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman +--- + sound/pci/hda/patch_realtek.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -9054,6 +9054,7 @@ static const struct snd_pci_quirk alc269 + SND_PCI_QUIRK(0x103c, 0x84da, "HP OMEN dc0019-ur", ALC295_FIXUP_HP_OMEN), + SND_PCI_QUIRK(0x103c, 0x84e7, "HP Pavilion 15", ALC269_FIXUP_HP_MUTE_LED_MIC3), + SND_PCI_QUIRK(0x103c, 0x8519, "HP Spectre x360 15-df0xxx", ALC285_FIXUP_HP_SPECTRE_X360), ++ SND_PCI_QUIRK(0x103c, 0x8537, "HP ProBook 440 G6", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF), + SND_PCI_QUIRK(0x103c, 0x860f, "HP ZBook 15 G6", ALC285_FIXUP_HP_GPIO_AMP_INIT), + SND_PCI_QUIRK(0x103c, 0x861f, "HP Elite Dragonfly G1", ALC285_FIXUP_HP_GPIO_AMP_INIT), + SND_PCI_QUIRK(0x103c, 0x869d, "HP", ALC236_FIXUP_HP_MUTE_LED), diff --git a/queue-5.15/revert-pci-aspm-remove-pcie_aspm_pm_state_change.patch b/queue-5.15/revert-pci-aspm-remove-pcie_aspm_pm_state_change.patch new file mode 100644 index 00000000000..32a8ff3abbb --- /dev/null +++ b/queue-5.15/revert-pci-aspm-remove-pcie_aspm_pm_state_change.patch @@ -0,0 +1,103 @@ +From f93e71aea6c60ebff8adbd8941e678302d377869 Mon Sep 17 00:00:00 2001 +From: Bjorn Helgaas +Date: Mon, 1 Jan 2024 12:08:18 -0600 +Subject: Revert "PCI/ASPM: Remove pcie_aspm_pm_state_change()" + +From: Bjorn Helgaas + +commit f93e71aea6c60ebff8adbd8941e678302d377869 upstream. + +This reverts commit 08d0cc5f34265d1a1e3031f319f594bd1970976c. + +Michael reported that when attempting to resume from suspend to RAM on ASUS +mini PC PN51-BB757MDE1 (DMI model: MINIPC PN51-E1), 08d0cc5f3426 +("PCI/ASPM: Remove pcie_aspm_pm_state_change()") caused a 12-second delay +with no output, followed by a reboot. + +Workarounds include: + + - Reverting 08d0cc5f3426 ("PCI/ASPM: Remove pcie_aspm_pm_state_change()") + - Booting with "pcie_aspm=off" + - Booting with "pcie_aspm.policy=performance" + - "echo 0 | sudo tee /sys/bus/pci/devices/0000:03:00.0/link/l1_aspm" + before suspending + - Connecting a USB flash drive + +Link: https://lore.kernel.org/r/20240102232550.1751655-1-helgaas@kernel.org +Fixes: 08d0cc5f3426 ("PCI/ASPM: Remove pcie_aspm_pm_state_change()") +Reported-by: Michael Schaller +Link: https://lore.kernel.org/r/76c61361-b8b4-435f-a9f1-32b716763d62@5challer.de +Signed-off-by: Bjorn Helgaas +Cc: +Signed-off-by: Greg Kroah-Hartman +--- + drivers/pci/pci.c | 6 ++++++ + drivers/pci/pci.h | 2 ++ + drivers/pci/pcie/aspm.c | 19 +++++++++++++++++++ + 3 files changed, 27 insertions(+) + +--- a/drivers/pci/pci.c ++++ b/drivers/pci/pci.c +@@ -820,6 +820,9 @@ int pci_wait_for_pending(struct pci_dev + return 1; + } + ++ if (dev->bus->self) ++ pcie_aspm_pm_state_change(dev->bus->self); ++ + return 0; + } + +@@ -1140,6 +1143,9 @@ static int pci_raw_set_power_state(struc + if (need_restore) + pci_restore_bars(dev); + ++ if (dev->bus->self) ++ pcie_aspm_pm_state_change(dev->bus->self); ++ + return 0; + } + +--- a/drivers/pci/pci.h ++++ b/drivers/pci/pci.h +@@ -595,10 +595,12 @@ bool pcie_wait_for_link(struct pci_dev * + #ifdef CONFIG_PCIEASPM + void pcie_aspm_init_link_state(struct pci_dev *pdev); + void pcie_aspm_exit_link_state(struct pci_dev *pdev); ++void pcie_aspm_pm_state_change(struct pci_dev *pdev); + void pcie_aspm_powersave_config_link(struct pci_dev *pdev); + #else + static inline void pcie_aspm_init_link_state(struct pci_dev *pdev) { } + static inline void pcie_aspm_exit_link_state(struct pci_dev *pdev) { } ++static inline void pcie_aspm_pm_state_change(struct pci_dev *pdev) { } + static inline void pcie_aspm_powersave_config_link(struct pci_dev *pdev) { } + #endif + +--- a/drivers/pci/pcie/aspm.c ++++ b/drivers/pci/pcie/aspm.c +@@ -1038,6 +1038,25 @@ void pcie_aspm_exit_link_state(struct pc + up_read(&pci_bus_sem); + } + ++/* @pdev: the root port or switch downstream port */ ++void pcie_aspm_pm_state_change(struct pci_dev *pdev) ++{ ++ struct pcie_link_state *link = pdev->link_state; ++ ++ if (aspm_disabled || !link) ++ return; ++ /* ++ * Devices changed PM state, we should recheck if latency ++ * meets all functions' requirement ++ */ ++ down_read(&pci_bus_sem); ++ mutex_lock(&aspm_lock); ++ pcie_update_aspm_capable(link->root); ++ pcie_config_aspm_path(link); ++ mutex_unlock(&aspm_lock); ++ up_read(&pci_bus_sem); ++} ++ + void pcie_aspm_powersave_config_link(struct pci_dev *pdev) + { + struct pcie_link_state *link = pdev->link_state; diff --git a/queue-5.15/series b/queue-5.15/series index e2f81dbac8a..646cd9a3c9e 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -1,5 +1,7 @@ keys-dns-fix-missing-size-check-of-v1-server-list-header.patch block-don-t-invalidate-pagecache-for-invalid-falloc-modes.patch +alsa-hda-realtek-fix-mute-and-mic-mute-leds-for-hp-probook-440-g6.patch +revert-pci-aspm-remove-pcie_aspm_pm_state_change.patch wifi-iwlwifi-pcie-don-t-synchronize-irqs-from-irq.patch drm-bridge-ti-sn65dsi86-never-store-more-than-msg-si.patch nfc-llcp_core-hold-a-ref-to-llcp_local-dev-when-hold.patch