From 81864277d04921af6f7395d030b5f390cce108aa Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Thu, 6 Oct 2016 09:39:18 +0200 Subject: [PATCH] 4.4-stable patches added patches: acpica-acpi_get_sleep_type_data-reduce-warnings.patch alsa-hda-add-the-top-speaker-pin-config-for-hp-spectre-x360.patch alsa-hda-fix-headset-mic-detection-problem-for-several-dell-laptops.patch --- ..._get_sleep_type_data-reduce-warnings.patch | 94 +++++++++++++++++++ ...eaker-pin-config-for-hp-spectre-x360.patch | 57 +++++++++++ ...ion-problem-for-several-dell-laptops.patch | 59 ++++++++++++ queue-4.4/series | 3 + 4 files changed, 213 insertions(+) create mode 100644 queue-4.4/acpica-acpi_get_sleep_type_data-reduce-warnings.patch create mode 100644 queue-4.4/alsa-hda-add-the-top-speaker-pin-config-for-hp-spectre-x360.patch create mode 100644 queue-4.4/alsa-hda-fix-headset-mic-detection-problem-for-several-dell-laptops.patch diff --git a/queue-4.4/acpica-acpi_get_sleep_type_data-reduce-warnings.patch b/queue-4.4/acpica-acpi_get_sleep_type_data-reduce-warnings.patch new file mode 100644 index 00000000000..86603677957 --- /dev/null +++ b/queue-4.4/acpica-acpi_get_sleep_type_data-reduce-warnings.patch @@ -0,0 +1,94 @@ +From a59b679ab85635737947310323f2f2bcfa0664a7 Mon Sep 17 00:00:00 2001 +From: Prarit Bhargava +Date: Tue, 29 Dec 2015 13:52:41 +0800 +Subject: ACPICA: acpi_get_sleep_type_data: Reduce warnings + +From: Prarit Bhargava + +commit a59b679ab85635737947310323f2f2bcfa0664a7 upstream. + +ACPICA commit 7bb77313091e52a846df4c9c2bea90be31bfb9d8 + +Eliminate warnings for "not found" _Sx errors, since these +are optional. Original NOT_FOUND status is still returned. + +Original changes by Prarit Bhargava. +ACPICA BZ 1208. + +Link: https://github.com/acpica/acpica/commit/7bb77313 +Link: https://bugs.acpica.org/show_bug.cgi?id=1208 +Signed-off-by: Prarit Bhargava +Signed-off-by: Bob Moore +Signed-off-by: Lv Zheng +Signed-off-by: Rafael J. Wysocki +Cc: "Charles (Chas) Williams" +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/acpi/acpica/hwxface.c | 24 +++++++++++++++++------- + 1 file changed, 17 insertions(+), 7 deletions(-) + +--- a/drivers/acpi/acpica/hwxface.c ++++ b/drivers/acpi/acpica/hwxface.c +@@ -504,11 +504,20 @@ acpi_get_sleep_type_data(u8 sleep_state, + * Evaluate the \_Sx namespace object containing the register values + * for this state + */ +- info->relative_pathname = +- ACPI_CAST_PTR(char, acpi_gbl_sleep_state_names[sleep_state]); ++ info->relative_pathname = ACPI_CAST_PTR(char, ++ acpi_gbl_sleep_state_names ++ [sleep_state]); ++ + status = acpi_ns_evaluate(info); + if (ACPI_FAILURE(status)) { +- goto cleanup; ++ if (status == AE_NOT_FOUND) { ++ ++ /* The _Sx states are optional, ignore NOT_FOUND */ ++ ++ goto final_cleanup; ++ } ++ ++ goto warning_cleanup; + } + + /* Must have a return object */ +@@ -517,7 +526,7 @@ acpi_get_sleep_type_data(u8 sleep_state, + ACPI_ERROR((AE_INFO, "No Sleep State object returned from [%s]", + info->relative_pathname)); + status = AE_AML_NO_RETURN_VALUE; +- goto cleanup; ++ goto warning_cleanup; + } + + /* Return object must be of type Package */ +@@ -526,7 +535,7 @@ acpi_get_sleep_type_data(u8 sleep_state, + ACPI_ERROR((AE_INFO, + "Sleep State return object is not a Package")); + status = AE_AML_OPERAND_TYPE; +- goto cleanup1; ++ goto return_value_cleanup; + } + + /* +@@ -570,16 +579,17 @@ acpi_get_sleep_type_data(u8 sleep_state, + break; + } + +-cleanup1: ++return_value_cleanup: + acpi_ut_remove_reference(info->return_object); + +-cleanup: ++warning_cleanup: + if (ACPI_FAILURE(status)) { + ACPI_EXCEPTION((AE_INFO, status, + "While evaluating Sleep State [%s]", + info->relative_pathname)); + } + ++final_cleanup: + ACPI_FREE(info); + return_ACPI_STATUS(status); + } diff --git a/queue-4.4/alsa-hda-add-the-top-speaker-pin-config-for-hp-spectre-x360.patch b/queue-4.4/alsa-hda-add-the-top-speaker-pin-config-for-hp-spectre-x360.patch new file mode 100644 index 00000000000..2574cbfa232 --- /dev/null +++ b/queue-4.4/alsa-hda-add-the-top-speaker-pin-config-for-hp-spectre-x360.patch @@ -0,0 +1,57 @@ +From 0eec880966e77bdbee0112989a2be67d92e39929 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 27 Sep 2016 16:44:49 +0200 +Subject: ALSA: hda - Add the top speaker pin config for HP Spectre x360 + +From: Takashi Iwai + +commit 0eec880966e77bdbee0112989a2be67d92e39929 upstream. + +HP Spectre x360 with CX20724 codec has two speaker outputs while the +BIOS sets up only the bottom one (NID 0x17) and disables the top one +(NID 0x1d). + +This patch adds a fixup simply defining the proper pincfg for NID 0x1d +so that the top speaker works as is. + +Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=169071 +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/patch_conexant.c | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +--- a/sound/pci/hda/patch_conexant.c ++++ b/sound/pci/hda/patch_conexant.c +@@ -261,6 +261,7 @@ enum { + CXT_FIXUP_HP_530, + CXT_FIXUP_CAP_MIX_AMP_5047, + CXT_FIXUP_MUTE_LED_EAPD, ++ CXT_FIXUP_HP_SPECTRE, + }; + + /* for hda_fixup_thinkpad_acpi() */ +@@ -765,6 +766,14 @@ static const struct hda_fixup cxt_fixups + .type = HDA_FIXUP_FUNC, + .v.func = cxt_fixup_mute_led_eapd, + }, ++ [CXT_FIXUP_HP_SPECTRE] = { ++ .type = HDA_FIXUP_PINS, ++ .v.pins = (const struct hda_pintbl[]) { ++ /* enable NID 0x1d for the speaker on top */ ++ { 0x1d, 0x91170111 }, ++ { } ++ } ++ }, + }; + + static const struct snd_pci_quirk cxt5045_fixups[] = { +@@ -814,6 +823,7 @@ static const struct snd_pci_quirk cxt506 + SND_PCI_QUIRK(0x1025, 0x0543, "Acer Aspire One 522", CXT_FIXUP_STEREO_DMIC), + SND_PCI_QUIRK(0x1025, 0x054c, "Acer Aspire 3830TG", CXT_FIXUP_ASPIRE_DMIC), + SND_PCI_QUIRK(0x1025, 0x054f, "Acer Aspire 4830T", CXT_FIXUP_ASPIRE_DMIC), ++ SND_PCI_QUIRK(0x103c, 0x8174, "HP Spectre x360", CXT_FIXUP_HP_SPECTRE), + SND_PCI_QUIRK(0x1043, 0x138d, "Asus", CXT_FIXUP_HEADPHONE_MIC_PIN), + SND_PCI_QUIRK(0x152d, 0x0833, "OLPC XO-1.5", CXT_FIXUP_OLPC_XO), + SND_PCI_QUIRK(0x17aa, 0x20f2, "Lenovo T400", CXT_PINCFG_LENOVO_TP410), diff --git a/queue-4.4/alsa-hda-fix-headset-mic-detection-problem-for-several-dell-laptops.patch b/queue-4.4/alsa-hda-fix-headset-mic-detection-problem-for-several-dell-laptops.patch new file mode 100644 index 00000000000..530ea576122 --- /dev/null +++ b/queue-4.4/alsa-hda-fix-headset-mic-detection-problem-for-several-dell-laptops.patch @@ -0,0 +1,59 @@ +From 3f640970a41429f0a076c01270bbd014c9eae61c Mon Sep 17 00:00:00 2001 +From: Hui Wang +Date: Sun, 11 Sep 2016 11:26:16 +0800 +Subject: ALSA: hda - Fix headset mic detection problem for several Dell laptops + +From: Hui Wang + +commit 3f640970a41429f0a076c01270bbd014c9eae61c upstream. + +One of the laptops has the codec ALC256 on it, applying the +ALC255_FIXUP_DELL1_MIC_NO_PRESENCE can fix the problem, the rest +of laptops have the codec ALC295 on them, they are similar to machines +with ALC225, applying the ALC269_FIXUP_DELL1_MIC_NO_PRESENCE can fix +the problem. + +Signed-off-by: Hui Wang +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/patch_realtek.c | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -5790,6 +5790,13 @@ static const struct hda_model_fixup alc2 + {0x14, 0x90170110}, \ + {0x15, 0x0221401f} + ++#define ALC295_STANDARD_PINS \ ++ {0x12, 0xb7a60130}, \ ++ {0x14, 0x90170110}, \ ++ {0x17, 0x21014020}, \ ++ {0x18, 0x21a19030}, \ ++ {0x21, 0x04211020} ++ + #define ALC298_STANDARD_PINS \ + {0x12, 0x90a60130}, \ + {0x21, 0x03211020} +@@ -5899,6 +5906,10 @@ static const struct snd_hda_pin_quirk al + {0x14, 0x90170120}, + {0x21, 0x02211030}), + SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, ++ {0x12, 0xb7a60130}, ++ {0x14, 0x90170110}, ++ {0x21, 0x02211020}), ++ SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, + ALC256_STANDARD_PINS), + SND_HDA_PIN_QUIRK(0x10ec0280, 0x103c, "HP", ALC280_FIXUP_HP_GPIO4, + {0x12, 0x90a60130}, +@@ -6009,6 +6020,8 @@ static const struct snd_hda_pin_quirk al + SND_HDA_PIN_QUIRK(0x10ec0293, 0x1028, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE, + ALC292_STANDARD_PINS, + {0x13, 0x90a60140}), ++ SND_HDA_PIN_QUIRK(0x10ec0295, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE, ++ ALC295_STANDARD_PINS), + SND_HDA_PIN_QUIRK(0x10ec0298, 0x1028, "Dell", ALC298_FIXUP_DELL1_MIC_NO_PRESENCE, + ALC298_STANDARD_PINS, + {0x17, 0x90170110}), diff --git a/queue-4.4/series b/queue-4.4/series index cbc72feaa48..da6c39d74fa 100644 --- a/queue-4.4/series +++ b/queue-4.4/series @@ -88,3 +88,6 @@ staging-fbtft-fix-bug-in-fbtft-core.patch usb-serial-cp210x-add-id-for-a-juniper-console.patch revert-usbtmc-convert-to-devm_kzalloc.patch alsa-hda-adding-one-more-alc255-pin-definition-for-headset-problem.patch +acpica-acpi_get_sleep_type_data-reduce-warnings.patch +alsa-hda-fix-headset-mic-detection-problem-for-several-dell-laptops.patch +alsa-hda-add-the-top-speaker-pin-config-for-hp-spectre-x360.patch -- 2.47.3