[1/1] ACPI: x86: Drop quirk for HP Elitebook

Message ID 20230223202622.9023-2-mario.limonciello@amd.com
State New
Headers
Series Drop s2idle quirk |

Commit Message

Mario Limonciello Feb. 23, 2023, 8:26 p.m. UTC
  There was a quirk in `acpi/x86/s2idle.c` for an HP Elitebook G9
platforms to force AMD GUID codepath instead of Microsoft codepath.

This was due to a bug with WCN6855 WLAN firmware interaction with
the system.

This bug is fixed by WCN6855 firmware:
WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.23

Remove the quirk as it's no longer necessary with this firmware.

Link: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=c7a57ef688f7d99d8338a5d8edddc8836ff0e6de
Tested-by: Anson Tsao <anson.tsao@amd.com>
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
---
 drivers/acpi/x86/s2idle.c | 24 ------------------------
 1 file changed, 24 deletions(-)
  

Comments

Rafael J. Wysocki Feb. 28, 2023, 8:31 p.m. UTC | #1
On Thu, Feb 23, 2023 at 9:26 PM Mario Limonciello
<mario.limonciello@amd.com> wrote:
>
> There was a quirk in `acpi/x86/s2idle.c` for an HP Elitebook G9
> platforms to force AMD GUID codepath instead of Microsoft codepath.
>
> This was due to a bug with WCN6855 WLAN firmware interaction with
> the system.
>
> This bug is fixed by WCN6855 firmware:
> WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.23
>
> Remove the quirk as it's no longer necessary with this firmware.
>
> Link: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=c7a57ef688f7d99d8338a5d8edddc8836ff0e6de
> Tested-by: Anson Tsao <anson.tsao@amd.com>
> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
> ---
>  drivers/acpi/x86/s2idle.c | 24 ------------------------
>  1 file changed, 24 deletions(-)
>
> diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
> index c7afce465a07..e499c60c4579 100644
> --- a/drivers/acpi/x86/s2idle.c
> +++ b/drivers/acpi/x86/s2idle.c
> @@ -384,29 +384,6 @@ static const struct acpi_device_id amd_hid_ids[] = {
>         {}
>  };
>
> -static int lps0_prefer_amd(const struct dmi_system_id *id)
> -{
> -       pr_debug("Using AMD GUID w/ _REV 2.\n");
> -       rev_id = 2;
> -       return 0;
> -}
> -static const struct dmi_system_id s2idle_dmi_table[] __initconst = {
> -       {
> -               /*
> -                * AMD Rembrandt based HP EliteBook 835/845/865 G9
> -                * Contains specialized AML in AMD/_REV 2 path to avoid
> -                * triggering a bug in Qualcomm WLAN firmware. This may be
> -                * removed in the future if that firmware is fixed.
> -                */
> -               .callback = lps0_prefer_amd,
> -               .matches = {
> -                       DMI_MATCH(DMI_BOARD_VENDOR, "HP"),
> -                       DMI_MATCH(DMI_BOARD_NAME, "8990"),
> -               },
> -       },
> -       {}
> -};
> -
>  static int lps0_device_attach(struct acpi_device *adev,
>                               const struct acpi_device_id *not_used)
>  {
> @@ -586,7 +563,6 @@ static const struct platform_s2idle_ops acpi_s2idle_ops_lps0 = {
>
>  void __init acpi_s2idle_setup(void)
>  {
> -       dmi_check_system(s2idle_dmi_table);
>         acpi_scan_add_handler(&lps0_handler);
>         s2idle_set_ops(&acpi_s2idle_ops_lps0);
>  }
> --

Applied as 6.3-rc material, thanks!
  

Patch

diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
index c7afce465a07..e499c60c4579 100644
--- a/drivers/acpi/x86/s2idle.c
+++ b/drivers/acpi/x86/s2idle.c
@@ -384,29 +384,6 @@  static const struct acpi_device_id amd_hid_ids[] = {
 	{}
 };
 
-static int lps0_prefer_amd(const struct dmi_system_id *id)
-{
-	pr_debug("Using AMD GUID w/ _REV 2.\n");
-	rev_id = 2;
-	return 0;
-}
-static const struct dmi_system_id s2idle_dmi_table[] __initconst = {
-	{
-		/*
-		 * AMD Rembrandt based HP EliteBook 835/845/865 G9
-		 * Contains specialized AML in AMD/_REV 2 path to avoid
-		 * triggering a bug in Qualcomm WLAN firmware. This may be
-		 * removed in the future if that firmware is fixed.
-		 */
-		.callback = lps0_prefer_amd,
-		.matches = {
-			DMI_MATCH(DMI_BOARD_VENDOR, "HP"),
-			DMI_MATCH(DMI_BOARD_NAME, "8990"),
-		},
-	},
-	{}
-};
-
 static int lps0_device_attach(struct acpi_device *adev,
 			      const struct acpi_device_id *not_used)
 {
@@ -586,7 +563,6 @@  static const struct platform_s2idle_ops acpi_s2idle_ops_lps0 = {
 
 void __init acpi_s2idle_setup(void)
 {
-	dmi_check_system(s2idle_dmi_table);
 	acpi_scan_add_handler(&lps0_handler);
 	s2idle_set_ops(&acpi_s2idle_ops_lps0);
 }