1.. SPDX-License-Identifier: GPL-2.0-or-later
2
3==============
4WMI Driver API
5==============
6
7The WMI driver core supports a more modern bus-based interface for interacting
8with WMI devices, and an older GUID-based interface. The latter interface is
9considered to be deprecated, so new WMI drivers should generally avoid it since
10it has some issues with multiple WMI devices sharing the same GUID.
11The modern bus-based interface instead maps each WMI device to a
12:c:type:`struct wmi_device <wmi_device>`, so it supports WMI devices sharing the
13same GUID. Drivers can then register a :c:type:`struct wmi_driver <wmi_driver>`
14which will be bound to compatible WMI devices by the driver core.
15
16.. kernel-doc:: include/linux/wmi.h
17   :internal:
18
19.. kernel-doc:: drivers/platform/x86/wmi.c
20   :export:
21