platform/x86: wmi: change notification handler type
authorMikalai Ramanovich <nikolay.romanovich.00@gmail.com>
Fri, 15 Oct 2021 19:13:22 +0000 (22:13 +0300)
committerHans de Goede <hdegoede@redhat.com>
Fri, 22 Oct 2021 08:57:11 +0000 (10:57 +0200)
Since AML code on some Xiaomi laptops notifies the WMI hotkey with
0x20 event, we need ACPI_ALL_NOTIFY here to be able to handle it.

Signed-off-by: Mikalai Ramanovich <nikolay.romanovich.00@gmail.com>
Link: https://lore.kernel.org/r/20211015191322.73388-1-nikolay.romanovich.00@gmail.com
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/wmi.c

index e6997be..c34341f 100644 (file)
@@ -1352,7 +1352,7 @@ static int acpi_wmi_remove(struct platform_device *device)
 {
        struct acpi_device *acpi_device = ACPI_COMPANION(&device->dev);
 
-       acpi_remove_notify_handler(acpi_device->handle, ACPI_DEVICE_NOTIFY,
+       acpi_remove_notify_handler(acpi_device->handle, ACPI_ALL_NOTIFY,
                                   acpi_wmi_notify_handler);
        acpi_remove_address_space_handler(acpi_device->handle,
                                ACPI_ADR_SPACE_EC, &acpi_wmi_ec_space_handler);
@@ -1385,7 +1385,7 @@ static int acpi_wmi_probe(struct platform_device *device)
        }
 
        status = acpi_install_notify_handler(acpi_device->handle,
-                                            ACPI_DEVICE_NOTIFY,
+                                            ACPI_ALL_NOTIFY,
                                             acpi_wmi_notify_handler,
                                             NULL);
        if (ACPI_FAILURE(status)) {
@@ -1414,7 +1414,7 @@ err_remove_busdev:
        device_unregister(wmi_bus_dev);
 
 err_remove_notify_handler:
-       acpi_remove_notify_handler(acpi_device->handle, ACPI_DEVICE_NOTIFY,
+       acpi_remove_notify_handler(acpi_device->handle, ACPI_ALL_NOTIFY,
                                   acpi_wmi_notify_handler);
 
 err_remove_ec_handler: