Commit 3ea45390 authored by Mario Limonciello's avatar Mario Limonciello Committed by Rafael J. Wysocki
Browse files

ACPI: x86: s2idle: Force AMD GUID/_REV 2 on HP Elitebook 865



HP Elitebook 865 supports both the AMD GUID w/ _REV 2 and Microsoft
GUID with _REV 0. Both have very similar code but the AMD GUID
has a special workaround that is specific to a problem with
spurious wakeups on systems with Qualcomm WLAN.

This is believed to be a bug in the Qualcomm WLAN F/W (it doesn't
affect any other WLAN H/W). If this WLAN firmware is fixed this
quirk can be dropped.

Cc: stable@vger.kernel.org # 6.1
Signed-off-by: default avatarMario Limonciello <mario.limonciello@amd.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 057b40f4
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -401,6 +401,13 @@ 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 int lps0_prefer_microsoft(const struct dmi_system_id *id)
{
	pr_debug("Preferring Microsoft GUID.\n");
@@ -462,6 +469,19 @@ static const struct dmi_system_id s2idle_dmi_table[] __initconst = {
			DMI_MATCH(DMI_PRODUCT_NAME, "ROG Flow X16 GV601"),
		},
	},
	{
		/*
		 * 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"),
		},
	},
	{}
};