platform/x86: wmi: Call both legacy and WMI driver notify handlers

Since the legacy WMI notify handlers are now using the WMI event data
provided by the WMI driver core, they can coexist with modern WMI
driver notify handlers.

Remove the precedence of WMI driver notify handlers and call both
when receiving an event.

Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Link: https://lore.kernel.org/r/20240901031055.3030-6-W_Armin@gmx.de
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
Armin Wolf 2024-09-01 05:10:55 +02:00 committed by Hans de Goede
parent 6ed2d7e8e7
commit f5dd17e30a

View File

@ -1175,15 +1175,13 @@ static int wmi_notify_device(struct device *dev, void *data)
}
down_read(&wblock->notify_lock);
/* The WMI driver notify handler conflicts with the legacy WMI handler.
* Because of this the WMI driver notify handler takes precedence.
*/
if (wblock->dev.dev.driver && wblock->driver_ready) {
if (wblock->dev.dev.driver && wblock->driver_ready)
wmi_notify_driver(wblock, obj);
} else {
if (wblock->handler)
wblock->handler(obj, wblock->handler_data);
}
if (wblock->handler)
wblock->handler(obj, wblock->handler_data);
up_read(&wblock->notify_lock);
kfree(obj);