From: Greg Kroah-Hartman Date: Mon, 13 Jun 2022 06:55:44 +0000 (+0200) Subject: 5.18-stable patches X-Git-Tag: v4.9.318~68 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0137d2c5177eeb2bf630c1abbf7bb48c7ed4b014;p=thirdparty%2Fkernel%2Fstable-queue.git 5.18-stable patches added patches: alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch alsa-hda-realtek-add-quirk-for-hp-dev-one.patch alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch --- diff --git a/queue-5.18/alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch b/queue-5.18/alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch new file mode 100644 index 00000000000..12dd4bfad01 --- /dev/null +++ b/queue-5.18/alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch @@ -0,0 +1,37 @@ +From d5ea7544c32ba27c2c5826248e4ff58bd50a2518 Mon Sep 17 00:00:00 2001 +From: huangwenhui +Date: Tue, 7 Jun 2022 14:56:31 +0800 +Subject: ALSA: hda/conexant - Fix loopback issue with CX20632 + +From: huangwenhui + +commit d5ea7544c32ba27c2c5826248e4ff58bd50a2518 upstream. + +On a machine with CX20632, Alsamixer doesn't have 'Loopback +Mixing' and 'Line'. + +Signed-off-by: huangwenhui +Cc: +Link: https://lore.kernel.org/r/20220607065631.10708-1-huangwenhuia@uniontech.com +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman +--- + sound/pci/hda/patch_conexant.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +--- a/sound/pci/hda/patch_conexant.c ++++ b/sound/pci/hda/patch_conexant.c +@@ -1052,6 +1052,13 @@ static int patch_conexant_auto(struct hd + snd_hda_pick_fixup(codec, cxt5051_fixup_models, + cxt5051_fixups, cxt_fixups); + break; ++ case 0x14f15098: ++ codec->pin_amp_workaround = 1; ++ spec->gen.mixer_nid = 0x22; ++ spec->gen.add_stereo_mix_input = HDA_HINT_STEREO_MIX_AUTO; ++ snd_hda_pick_fixup(codec, cxt5066_fixup_models, ++ cxt5066_fixups, cxt_fixups); ++ break; + case 0x14f150f2: + codec->power_save_node = 1; + fallthrough; diff --git a/queue-5.18/alsa-hda-realtek-add-quirk-for-hp-dev-one.patch b/queue-5.18/alsa-hda-realtek-add-quirk-for-hp-dev-one.patch new file mode 100644 index 00000000000..b85110e6b35 --- /dev/null +++ b/queue-5.18/alsa-hda-realtek-add-quirk-for-hp-dev-one.patch @@ -0,0 +1,32 @@ +From 5f3d696eea916693b2d4ed7e62794653fcdd6ec0 Mon Sep 17 00:00:00 2001 +From: Jeremy Soller +Date: Wed, 8 Jun 2022 08:01:11 -0600 +Subject: ALSA: hda/realtek: Add quirk for HP Dev One + +From: Jeremy Soller + +commit 5f3d696eea916693b2d4ed7e62794653fcdd6ec0 upstream. + +Enables the audio mute LEDs and limits the mic boost to avoid picking up +noise. + +Signed-off-by: Jeremy Soller +Signed-off-by: Tim Crawford +Cc: +Link: https://lore.kernel.org/r/20220608140111.23170-1-tcrawford@system76.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 +@@ -9111,6 +9111,7 @@ static const struct snd_pci_quirk alc269 + SND_PCI_QUIRK(0x103c, 0x89c3, "Zbook Studio G9", ALC245_FIXUP_CS35L41_SPI_4_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x89c6, "Zbook Fury 17 G9", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x89ca, "HP", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF), ++ SND_PCI_QUIRK(0x103c, 0x8a78, "HP Dev One", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST), + SND_PCI_QUIRK(0x1043, 0x103e, "ASUS X540SA", ALC256_FIXUP_ASUS_MIC), + SND_PCI_QUIRK(0x1043, 0x103f, "ASUS TX300", ALC282_FIXUP_ASUS_TX300), + SND_PCI_QUIRK(0x1043, 0x106d, "Asus K53BE", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), diff --git a/queue-5.18/alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch b/queue-5.18/alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch new file mode 100644 index 00000000000..8404be97a82 --- /dev/null +++ b/queue-5.18/alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch @@ -0,0 +1,35 @@ +From 85743a847caeab696dafc4ce1a7e1e2b7e29a0f6 Mon Sep 17 00:00:00 2001 +From: Cameron Berkenpas +Date: Sun, 5 Jun 2022 17:23:30 -0700 +Subject: ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo Yoga DuetITL 2021 + +From: Cameron Berkenpas + +commit 85743a847caeab696dafc4ce1a7e1e2b7e29a0f6 upstream. + +Enables the ALC287_FIXUP_YOGA7_14ITL_SPEAKERS quirk for the Lenovo +Yoga DuetITL 2021 laptop to fix speaker output. + +[ re-sorted in the SSID order by tiwai ] + +BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=208555 +Signed-off-by: Cameron Berkenpas +Co-authored-by: Songine +Cc: stable@vger.kernel.org> +Link: https://lore.kernel.org/r/20220606002329.215330-1-cam@neo-zeon.de +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 +@@ -9310,6 +9310,7 @@ static const struct snd_pci_quirk alc269 + SND_PCI_QUIRK(0x17aa, 0x3176, "ThinkCentre Station", ALC283_FIXUP_HEADSET_MIC), + SND_PCI_QUIRK(0x17aa, 0x3178, "ThinkCentre Station", ALC283_FIXUP_HEADSET_MIC), + SND_PCI_QUIRK(0x17aa, 0x31af, "ThinkCentre Station", ALC623_FIXUP_LENOVO_THINKSTATION_P340), ++ SND_PCI_QUIRK(0x17aa, 0x3802, "Lenovo Yoga DuetITL 2021", ALC287_FIXUP_YOGA7_14ITL_SPEAKERS), + SND_PCI_QUIRK(0x17aa, 0x3813, "Legion 7i 15IMHG05", ALC287_FIXUP_LEGION_15IMHG05_SPEAKERS), + SND_PCI_QUIRK(0x17aa, 0x3818, "Lenovo C940", ALC298_FIXUP_LENOVO_SPK_VOLUME), + SND_PCI_QUIRK(0x17aa, 0x3819, "Lenovo 13s Gen2 ITL", ALC287_FIXUP_13S_GEN2_SPEAKERS), diff --git a/queue-5.18/alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch b/queue-5.18/alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch new file mode 100644 index 00000000000..b6221e246bf --- /dev/null +++ b/queue-5.18/alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch @@ -0,0 +1,64 @@ +From e0469d6581aecb0e34e2ec64f39f88e6985cc52f Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Mon, 6 Jun 2022 18:09:10 +0200 +Subject: ALSA: usb-audio: Set up (implicit) sync for Saffire 6 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Takashi Iwai + +commit e0469d6581aecb0e34e2ec64f39f88e6985cc52f upstream. + +Focusrite Saffire 6 has fixed audioformat quirks with multiple +endpoints assigned to a single altsetting. Unfortunately the generic +parser couldn't detect the sync endpoint correctly as the implicit +sync due to the missing EP attribute bits. In the former kernels, it +used to work somehow casually, but it's been broken for a while after +the large code change in 5.11. + +This patch cures the regression by the following: +- Allow the static quirk table to provide the sync EP information; + we just need to fill the fields and let the generic parser skipping + parsing if sync_ep is already set. +- Add the sync endpoint information to the entry for Saffire 6. + +Fixes: 7b0efea4baf0 ("ALSA: usb-audio: Add missing ep_idx in fixed EP quirks") +Reported-and-tested-by: André Kapelrud +Cc: +Link: https://lore.kernel.org/r/20220606160910.6926-3-tiwai@suse.de +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman +--- + sound/usb/pcm.c | 3 +++ + sound/usb/quirks-table.h | 7 ++++++- + 2 files changed, 9 insertions(+), 1 deletion(-) + +--- a/sound/usb/pcm.c ++++ b/sound/usb/pcm.c +@@ -291,6 +291,9 @@ int snd_usb_audioformat_set_sync_ep(stru + bool is_playback; + int err; + ++ if (fmt->sync_ep) ++ return 0; /* already set up */ ++ + alts = snd_usb_get_host_interface(chip, fmt->iface, fmt->altsetting); + if (!alts) + return 0; +--- a/sound/usb/quirks-table.h ++++ b/sound/usb/quirks-table.h +@@ -2658,7 +2658,12 @@ YAMAHA_DEVICE(0x7010, "UB99"), + .nr_rates = 2, + .rate_table = (unsigned int[]) { + 44100, 48000 +- } ++ }, ++ .sync_ep = 0x82, ++ .sync_iface = 0, ++ .sync_altsetting = 1, ++ .sync_ep_idx = 1, ++ .implicit_fb = 1, + } + }, + { diff --git a/queue-5.18/alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch b/queue-5.18/alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch new file mode 100644 index 00000000000..d3bad3e8e43 --- /dev/null +++ b/queue-5.18/alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch @@ -0,0 +1,41 @@ +From efb75df105e82f076a85b9f2d81410428bcb55fc Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Mon, 6 Jun 2022 18:09:09 +0200 +Subject: ALSA: usb-audio: Skip generic sync EP parse for secondary EP +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Takashi Iwai + +commit efb75df105e82f076a85b9f2d81410428bcb55fc upstream. + +When ep_idx is already non-zero, it means usually a capture stream +that is set up explicity by a fixed-format quirk, and applying the +check for generic (non-implicit-fb) sync EPs might hit incorrectly, +resulting in a bogus sync endpoint for the capture stream. + +This patch adds a check for the ep_idx and skip if it's a secondary +endpoint. It's a part of the fixes for regressions on Saffire 6. + +Fixes: 7b0efea4baf0 ("ALSA: usb-audio: Add missing ep_idx in fixed EP quirks") +Reported-and-tested-by: André Kapelrud +Cc: +Link: https://lore.kernel.org/r/20220606160910.6926-2-tiwai@suse.de +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman +--- + sound/usb/pcm.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/sound/usb/pcm.c ++++ b/sound/usb/pcm.c +@@ -304,7 +304,7 @@ int snd_usb_audioformat_set_sync_ep(stru + * Generic sync EP handling + */ + +- if (altsd->bNumEndpoints < 2) ++ if (fmt->ep_idx > 0 || altsd->bNumEndpoints < 2) + return 0; + + is_playback = !(get_endpoint(alts, 0)->bEndpointAddress & USB_DIR_IN); diff --git a/queue-5.18/platform-x86-hp-wmi-use-zero-insize-parameter-only-w.patch b/queue-5.18/platform-x86-hp-wmi-use-zero-insize-parameter-only-w.patch index fa208667405..92ad9c573a6 100644 --- a/queue-5.18/platform-x86-hp-wmi-use-zero-insize-parameter-only-w.patch +++ b/queue-5.18/platform-x86-hp-wmi-use-zero-insize-parameter-only-w.patch @@ -29,14 +29,12 @@ Reviewed-by: Hans de Goede Signed-off-by: Hans de Goede Signed-off-by: Sasha Levin --- - drivers/platform/x86/hp-wmi.c | 23 +++++++++++++++-------- + drivers/platform/x86/hp-wmi.c | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) -diff --git a/drivers/platform/x86/hp-wmi.c b/drivers/platform/x86/hp-wmi.c -index d3540dd62d06..0e6ed75c70f3 100644 --- a/drivers/platform/x86/hp-wmi.c +++ b/drivers/platform/x86/hp-wmi.c -@@ -38,6 +38,7 @@ MODULE_ALIAS("wmi:5FB7F034-2C63-45e9-BE91-3D44E2C707E4"); +@@ -38,6 +38,7 @@ MODULE_ALIAS("wmi:5FB7F034-2C63-45e9-BE9 #define HPWMI_EVENT_GUID "95F24279-4D7B-4334-9387-ACCDC67EF61C" #define HPWMI_BIOS_GUID "5FB7F034-2C63-45e9-BE91-3D44E2C707E4" #define HP_OMEN_EC_THERMAL_PROFILE_OFFSET 0x95 @@ -44,7 +42,7 @@ index d3540dd62d06..0e6ed75c70f3 100644 /* DMI board names of devices that should use the omen specific path for * thermal profiles. -@@ -220,6 +221,7 @@ static struct input_dev *hp_wmi_input_dev; +@@ -220,6 +221,7 @@ static struct input_dev *hp_wmi_input_de static struct platform_device *hp_wmi_platform_dev; static struct platform_profile_handler platform_profile_handler; static bool platform_profile_support; @@ -71,7 +69,7 @@ index d3540dd62d06..0e6ed75c70f3 100644 if (ret < 0) return ret; -@@ -499,7 +502,7 @@ static int hp_wmi_fan_speed_max_get(void) +@@ -499,7 +502,7 @@ static int hp_wmi_fan_speed_max_get(void int val = 0, ret; ret = hp_wmi_perform_query(HPWMI_FAN_SPEED_MAX_GET_QUERY, HPWMI_GM, @@ -80,7 +78,7 @@ index d3540dd62d06..0e6ed75c70f3 100644 if (ret) return ret < 0 ? ret : -EINVAL; -@@ -511,7 +514,7 @@ static int __init hp_wmi_bios_2008_later(void) +@@ -511,7 +514,7 @@ static int __init hp_wmi_bios_2008_later { int state = 0; int ret = hp_wmi_perform_query(HPWMI_FEATURE_QUERY, HPWMI_READ, &state, @@ -89,7 +87,7 @@ index d3540dd62d06..0e6ed75c70f3 100644 if (!ret) return 1; -@@ -522,7 +525,7 @@ static int __init hp_wmi_bios_2009_later(void) +@@ -522,7 +525,7 @@ static int __init hp_wmi_bios_2009_later { u8 state[128]; int ret = hp_wmi_perform_query(HPWMI_FEATURE2_QUERY, HPWMI_READ, &state, @@ -107,7 +105,7 @@ index d3540dd62d06..0e6ed75c70f3 100644 if (err) return err; -@@ -1002,7 +1005,7 @@ static int __init hp_wmi_rfkill2_setup(struct platform_device *device) +@@ -1002,7 +1005,7 @@ static int __init hp_wmi_rfkill2_setup(s int err, i; err = hp_wmi_perform_query(HPWMI_WIRELESS2_QUERY, HPWMI_READ, &state, @@ -133,6 +131,3 @@ index d3540dd62d06..0e6ed75c70f3 100644 if (event_capable) { err = hp_wmi_input_setup(); if (err) --- -2.35.1 - diff --git a/queue-5.18/series b/queue-5.18/series index ba4f05486b6..81c6e527ce4 100644 --- a/queue-5.18/series +++ b/queue-5.18/series @@ -291,3 +291,8 @@ platform-x86-barco-p50-gpio-add-check-for-platform_d.patch scripts-gdb-change-kernel-config-dumping-method.patch platform-x86-hp-wmi-resolve-wmi-query-failures-on-so.patch platform-x86-hp-wmi-use-zero-insize-parameter-only-w.patch +alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch +alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch +alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch +alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch +alsa-hda-realtek-add-quirk-for-hp-dev-one.patch