platform/x86: wmi: Stop using ACPI device class
authorArmin Wolf <W_Armin@gmx.de>
Tue, 30 Jan 2024 22:19:42 +0000 (23:19 +0100)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Tue, 6 Feb 2024 09:53:20 +0000 (11:53 +0200)
When an ACPI netlink event is received by acpid, the ACPI device
class is passed as its first argument. But since the class string
is not initialized during probe, an empty string is being passed:

netlink:  PNP0C14:01 000000d0 00000000

Fix this by passing a static string instead.

Tested on a Dell Inspiron 3505.

Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Link: https://lore.kernel.org/r/20240130221942.2770-1-W_Armin@gmx.de
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/x86/wmi.c

index 7ef1e82dc61c38741cc171c69d534c41b539f86b..3335de4e32b22ce1eefa3b8fe565e98f5b79d408 100644 (file)
@@ -1202,8 +1202,7 @@ static int wmi_notify_device(struct device *dev, void *data)
                wblock->handler(*event, wblock->handler_data);
        }
 
-       acpi_bus_generate_netlink_event(wblock->acpi_device->pnp.device_class,
-                                       acpi_dev_name(wblock->acpi_device), *event, 0);
+       acpi_bus_generate_netlink_event("wmi", acpi_dev_name(wblock->acpi_device), *event, 0);
 
        return -EBUSY;
 }