ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch
authorJason Ekstrand <jason@jlekstrand.net>
Thu, 2 Jan 2020 20:27:54 +0000 (14:27 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 24 Feb 2020 07:36:43 +0000 (08:36 +0100)
[ Upstream commit 0528904926aab19bffb2068879aa44db166c6d5f ]

Running evemu-record on the lid switch event shows that the lid reports
the first "close" but then never reports an "open".  This causes systemd
to continuously re-suspend the laptop every 30s.  Resetting the _LID to
"open" fixes the issue.

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/acpi/button.c

index ce93a355bd1c88b024e4cd14ebc2925ae046d84b..985afc62da82abac7012780979910381f38235ae 100644 (file)
@@ -89,6 +89,17 @@ static const struct dmi_system_id lid_blacklst[] = {
                },
                .driver_data = (void *)(long)ACPI_BUTTON_LID_INIT_OPEN,
        },
+       {
+               /*
+                * Razer Blade Stealth 13 late 2019, notification of the LID device
+                * only happens on close, not on open and _LID always returns closed.
+                */
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "Razer"),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "Razer Blade Stealth 13 Late 2019"),
+               },
+               .driver_data = (void *)(long)ACPI_BUTTON_LID_INIT_OPEN,
+       },
        {}
 };