[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YyC0eeVzI/MQsOPx@rog>
Date: Tue, 13 Sep 2022 18:48:57 +0200
From: Philipp Zabel <philipp.zabel@...il.com>
To: Mario Limonciello <mario.limonciello@....com>
Cc: rafael@...nel.org, linux-kernel@...r.kernel.org,
catalin@...ebit.com, travisghansen@...oo.com,
Shyam-sundar.S-k@....com, Len Brown <lenb@...nel.org>,
linux-acpi@...r.kernel.org
Subject: Re: [PATCH v2 4/6] acpi/x86: s2idle: Add a quirk for ASUS TUF Gaming
A17 FA707RE
Am Mon, Sep 12, 2022 at 12:23:58PM -0500 schrieb Mario Limonciello:
> ASUS TUF Gaming A17 FA707RE has problems with ACPI events after
> s2idle resume. It's from a missing call to an ASL method in AMD
> the s2idle calling path. Force the system to use the Microsoft
> Modern Standby calling path instead.
>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=216101
> Reported-and-tested-by: catalin@...ebit.com
> Signed-off-by: Mario Limonciello <mario.limonciello@....com>
> ---
> v1->v2:
> * Fixup for __init
> ---
> drivers/acpi/x86/s2idle.c | 26 +++++++++++++++++++++++++-
> 1 file changed, 25 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
> index a9b0f2b54a1c..9ee734e0c3c5 100644
> --- a/drivers/acpi/x86/s2idle.c
> +++ b/drivers/acpi/x86/s2idle.c
> @@ -17,6 +17,7 @@
>
> #include <linux/acpi.h>
> #include <linux/device.h>
> +#include <linux/dmi.h>
> #include <linux/suspend.h>
>
> #include "../sleep.h"
> @@ -400,6 +401,28 @@ static const struct acpi_device_id amd_hid_ids[] = {
> {}
> };
>
> +static int lps0_prefer_microsoft(const struct dmi_system_id *id)
> +{
> + pr_debug("Preferring Microsoft GUID.\n");
> + prefer_microsoft_guid = true;
> + return 0;
> +}
> +
> +static const struct dmi_system_id s2idle_dmi_table[] __initconst = {
> + {
> + /*
> + * ASUS TUF Gaming A17 FA707RE
> + * https://bugzilla.kernel.org/show_bug.cgi?id=216101
> + */
> + .callback = lps0_prefer_microsoft,
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
> + DMI_MATCH(DMI_PRODUCT_NAME, "ASUS TUF Gaming A17"),
> + },
> + },
> + {}
> +};
> +
> static int lps0_device_attach(struct acpi_device *adev,
> const struct acpi_device_id *not_used)
> {
> @@ -566,8 +589,9 @@ static const struct platform_s2idle_ops acpi_s2idle_ops_lps0 = {
> .end = acpi_s2idle_end,
> };
>
> -void acpi_s2idle_setup(void)
> +void __init acpi_s2idle_setup(void)
Reviewed-by: Philipp Zabel <philipp.zabel@...il.com>
Tested-by: Philipp Zabel <philipp.zabel@...il.com> # GA402RJ
regards
Philipp
Powered by blists - more mailing lists