sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget"/translations/zh_CN/driver-api/wmimodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/zh_TW/driver-api/wmimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/it_IT/driver-api/wmimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/ja_JP/driver-api/wmimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/ko_KR/driver-api/wmimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/sp_SP/driver-api/wmimodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(h)SPDX-License-Identifier: GPL-2.0-or-laterh]h)SPDX-License-Identifier: GPL-2.0-or-later}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhh`, so it supports WMI devices sharing the same GUID. Drivers can then register a :c:type:`struct wmi_driver ` which will be bound to compatible WMI devices by the driver core.h](hXqThe WMI driver core supports a more modern bus-based interface for interacting with WMI devices, and an older GUID-based interface. The latter interface is considered to be deprecated, so new WMI drivers should generally avoid it since it has some issues with multiple WMI devices sharing the same GUID. The modern bus-based interface instead maps each WMI device to a }(hhhhhNhNubh)}(h(:c:type:`struct wmi_device `h]hliteral)}(hhh]hstruct wmi_device}(hhhhhNhNubah}(h]h ](xrefcc-typeeh"]h$]h&]uh1hhhubah}(h]h ]h"]h$]h&]refdocdriver-api/wmi refdomainhreftypetype refexplicitrefwarn reftarget wmi_deviceuh1hhhhKhhubhP, so it supports WMI devices sharing the same GUID. Drivers can then register a }(hhhhhNhNubh)}(h(:c:type:`struct wmi_driver `h]h)}(hhh]hstruct wmi_driver}(hjhhhNhNubah}(h]h ](hhc-typeeh"]h$]h&]uh1hhhubah}(h]h ]h"]h$]h&]refdoch refdomainhreftypetype refexplicitrefwarnh wmi_driveruh1hhhhKhhubhB which will be bound to compatible WMI devices by the driver core.}(hhhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhhhhubhindex)}(hhh]h}(h]h ]h"]h$]h&]entries](singlewmi_device (C struct) c.wmi_devicehNtauh1j%hhhhhNhNubhdesc)}(hhh](hdesc_signature)}(h wmi_deviceh]hdesc_signature_line)}(hstruct wmi_deviceh](hdesc_sig_keyword)}(hstructh]hstruct}(hjIhhhNhNubah}(h]h ]kah"]h$]h&]uh1jGhjChhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKubhdesc_sig_space)}(h h]h }(hj[hhhNhNubah}(h]h ]wah"]h$]h&]uh1jYhjChhhjXhKubh desc_name)}(h wmi_deviceh]h desc_sig_name)}(hj?h]h wmi_device}(hjrhhhNhNubah}(h]h ]nah"]h$]h&]uh1jphjlubah}(h]h ](sig-namedescnameeh"]h$]h&]hhuh1jjhjChhhjXhKubeh}(h]h ]h"]h$]h&]hh add_permalinkuh1jAsphinx_line_type declaratorhj=hhhjXhKubah}(h]j4ah ](sig sig-objecteh"]h$]h&] is_multiline _toc_parts) _toc_namehuh1j;hjXhKhj8hhubh desc_content)}(hhh]h)}(hWMI device structureh]hWMI device structure}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjhhubah}(h]h ]h"]h$]h&]uh1jhj8hhhjXhKubeh}(h]h ](hstructeh"]h$]h&]domainhobjtypejdesctypejnoindex noindexentrynocontentsentryuh1j6hhhhhNhNubh container)}(hX**Definition**:: struct wmi_device { struct device dev; bool setable; const char *driver_override; }; **Members** ``dev`` Device associated with this WMI device ``setable`` True for devices implementing the Set Control Method ``driver_override`` Driver name to force a match; do not set directly, because core frees it; use driver_set_override() to set or clear it.h](h)}(h**Definition**::h](hstrong)}(h**Definition**h]h Definition}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjubh literal_block)}(h`struct wmi_device { struct device dev; bool setable; const char *driver_override; };h]h`struct wmi_device { struct device dev; bool setable; const char *driver_override; };}hjsbah}(h]h ]h"]h$]h&]hhuh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjubh)}(h **Members**h]j)}(hjh]hMembers}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjubhdefinition_list)}(hhh](hdefinition_list_item)}(h/``dev`` Device associated with this WMI device h](hterm)}(h``dev``h]h)}(hj h]hdev}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjubh definition)}(hhh]h)}(h&Device associated with this WMI deviceh]h&Device associated with this WMI device}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj5hKhj8ubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhj5hKhjubj)}(hA``setable`` True for devices implementing the Set Control Method h](j)}(h ``setable``h]h)}(hj[h]hsetable}(hj]hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjYubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjUubj7)}(hhh]h)}(h4True for devices implementing the Set Control Methodh]h4True for devices implementing the Set Control Method}(hjthhhNhNubah}(h]h ]h"]h$]h&]uh1hhjphKhjqubah}(h]h ]h"]h$]h&]uh1j6hjUubeh}(h]h ]h"]h$]h&]uh1jhjphKhjubj)}(h``driver_override`` Driver name to force a match; do not set directly, because core frees it; use driver_set_override() to set or clear it.h](j)}(h``driver_override``h]h)}(hjh]hdriver_override}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjubj7)}(hhh]h)}(hwDriver name to force a match; do not set directly, because core frees it; use driver_set_override() to set or clear it.h]hwDriver name to force a match; do not set directly, because core frees it; use driver_set_override() to set or clear it.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhhhhubh)}(h>This represents WMI devices discovered by the WMI driver core.h]h>This represents WMI devices discovered by the WMI driver core.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhhhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2to_wmi_device (C macro)c.to_wmi_devicehNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h to_wmi_deviceh]jB)}(h to_wmi_deviceh]jk)}(h to_wmi_deviceh]jq)}(hjh]h to_wmi_device}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK%ubah}(h]h ]h"]h$]h&]hhjuh1jAjjhj hhhj,hK%ubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hj,hK%hj hhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhj hhhj,hK%ubeh}(h]h ](hmacroeh"]h$]h&]jhjjEjjEjjjuh1j6hhhhhNhNubh)}(h``to_wmi_device (device)``h]h)}(hjKh]hto_wmi_device (device)}(hjMhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjIubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK'hhhhubh block_quote)}(h.Helper macro to cast a device to a wmi_device h]h)}(h-Helper macro to cast a device to a wmi_deviceh]h-Helper macro to cast a device to a wmi_device}(hjghhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK hjcubah}(h]h ]h"]h$]h&]uh1jahjuhK hhhhubj)}(hi**Parameters** ``device`` device struct **Description** Cast a struct device to a struct wmi_device.h](h)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK$hj|ubj)}(hhh]j)}(h``device`` device struct h](j)}(h ``device``h]h)}(hjh]hdevice}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK!hjubj7)}(hhh]h)}(h device structh]h device struct}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhK!hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhK!hjubah}(h]h ]h"]h$]h&]uh1jhj|ubh)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK#hj|ubh)}(h,Cast a struct device to a struct wmi_device.h]h,Cast a struct device to a struct wmi_device.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK#hj|ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmi_driver (C struct) c.wmi_driverhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h wmi_driverh]jB)}(hstruct wmi_driverh](jH)}(hjKh]hstruct}(hj!hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjhhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK(ubjZ)}(h h]h }(hj/hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhj.hK(ubjk)}(h wmi_driverh]jq)}(hjh]h wmi_driver}(hjAhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj=ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhj.hK(ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhj.hK(ubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hj.hK(hjhhubj)}(hhh]h)}(hWMI driver structureh]hWMI driver structure}(hjchhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK4hj`hhubah}(h]h ]h"]h$]h&]uh1jhjhhhj.hK(ubeh}(h]h ](hstructeh"]h$]h&]jhjj{jj{jjjuh1j6hhhhhNhNubj)}(hXE**Definition**:: struct wmi_driver { struct device_driver driver; const struct wmi_device_id *id_table; bool no_notify_data; bool no_singleton; int (*probe)(struct wmi_device *wdev, const void *context); void (*remove)(struct wmi_device *wdev); void (*shutdown)(struct wmi_device *wdev); void (*notify)(struct wmi_device *device, union acpi_object *data); }; **Members** ``driver`` Driver model structure ``id_table`` List of WMI GUIDs supported by this driver ``no_notify_data`` Driver supports WMI events which provide no event data ``no_singleton`` Driver can be instantiated multiple times ``probe`` Callback for device binding ``remove`` Callback for device unbinding ``shutdown`` Callback for device shutdown ``notify`` Callback for receiving WMI eventsh](h)}(h**Definition**::h](j)}(h**Definition**h]h Definition}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK8hjubj)}(hXustruct wmi_driver { struct device_driver driver; const struct wmi_device_id *id_table; bool no_notify_data; bool no_singleton; int (*probe)(struct wmi_device *wdev, const void *context); void (*remove)(struct wmi_device *wdev); void (*shutdown)(struct wmi_device *wdev); void (*notify)(struct wmi_device *device, union acpi_object *data); };h]hXustruct wmi_driver { struct device_driver driver; const struct wmi_device_id *id_table; bool no_notify_data; bool no_singleton; int (*probe)(struct wmi_device *wdev, const void *context); void (*remove)(struct wmi_device *wdev); void (*shutdown)(struct wmi_device *wdev); void (*notify)(struct wmi_device *device, union acpi_object *data); };}hjsbah}(h]h ]h"]h$]h&]hhuh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK:hjubh)}(h **Members**h]j)}(hjh]hMembers}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKEhjubj)}(hhh](j)}(h"``driver`` Driver model structure h](j)}(h ``driver``h]h)}(hjh]hdriver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK6hjubj7)}(hhh]h)}(hDriver model structureh]hDriver model structure}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhK6hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhK6hjubj)}(h8``id_table`` List of WMI GUIDs supported by this driver h](j)}(h ``id_table``h]h)}(hj h]hid_table}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK7hjubj7)}(hhh]h)}(h*List of WMI GUIDs supported by this driverh]h*List of WMI GUIDs supported by this driver}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhK7hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhK7hjubj)}(hJ``no_notify_data`` Driver supports WMI events which provide no event data h](j)}(h``no_notify_data``h]h)}(hjBh]hno_notify_data}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj@ubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK8hj<ubj7)}(hhh]h)}(h6Driver supports WMI events which provide no event datah]h6Driver supports WMI events which provide no event data}(hj[hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjWhK8hjXubah}(h]h ]h"]h$]h&]uh1j6hj<ubeh}(h]h ]h"]h$]h&]uh1jhjWhK8hjubj)}(h;``no_singleton`` Driver can be instantiated multiple times h](j)}(h``no_singleton``h]h)}(hj{h]h no_singleton}(hj}hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjyubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK9hjuubj7)}(hhh]h)}(h)Driver can be instantiated multiple timesh]h)Driver can be instantiated multiple times}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhK9hjubah}(h]h ]h"]h$]h&]uh1j6hjuubeh}(h]h ]h"]h$]h&]uh1jhjhK9hjubj)}(h&``probe`` Callback for device binding h](j)}(h ``probe``h]h)}(hjh]hprobe}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK:hjubj7)}(hhh]h)}(hCallback for device bindingh]hCallback for device binding}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhK:hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhK:hjubj)}(h)``remove`` Callback for device unbinding h](j)}(h ``remove``h]h)}(hjh]hremove}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK;hjubj7)}(hhh]h)}(hCallback for device unbindingh]hCallback for device unbinding}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhK;hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhK;hjubj)}(h*``shutdown`` Callback for device shutdown h](j)}(h ``shutdown``h]h)}(hj&h]hshutdown}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj$ubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhhhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2to_wmi_driver (C macro)c.to_wmi_driverhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h to_wmi_driverh]jB)}(h to_wmi_driverh]jk)}(h to_wmi_driverh]jq)}(hjh]h to_wmi_driver}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKRubah}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhKRubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjhKRhjhhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhjhhhjhKRubeh}(h]h ](hmacroeh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubh)}(h``to_wmi_driver (drv)``h]h)}(hjh]hto_wmi_driver (drv)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKThhhhubjb)}(h.Helper macro to cast a driver to a wmi_driver h]h)}(h-Helper macro to cast a driver to a wmi_driverh]h-Helper macro to cast a driver to a wmi_driver}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKMhj,ubah}(h]h ]h"]h$]h&]uh1jahj>hKMhhhhubj)}(hm**Parameters** ``drv`` driver struct **Description** Cast a struct device_driver to a struct wmi_driver.h](h)}(h**Parameters**h]j)}(hjKh]h Parameters}(hjMhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjIubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKQhjEubj)}(hhh]j)}(h``drv`` driver struct h](j)}(h``drv``h]h)}(hjjh]hdrv}(hjlhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKNhjdubj7)}(hhh]h)}(h driver structh]h driver struct}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhKNhjubah}(h]h ]h"]h$]h&]uh1j6hjdubeh}(h]h ]h"]h$]h&]uh1jhjhKNhjaubah}(h]h ]h"]h$]h&]uh1jhjEubh)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKPhjEubh)}(h3Cast a struct device_driver to a struct wmi_driver.h]h3Cast a struct device_driver to a struct wmi_driver.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKPhjEubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmi_driver_register (C macro)c.wmi_driver_registerhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hwmi_driver_registerh]jB)}(hwmi_driver_registerh]jk)}(hwmi_driver_registerh]jq)}(hjh]hwmi_driver_register}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK_ubah}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhK_ubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjhK_hjhhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhjhhhjhK_ubeh}(h]h ](hmacroeh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubh)}(h ``wmi_driver_register (driver)``h]h)}(hj h]hwmi_driver_register (driver)}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKahhhhubjb)}(h&Helper macro to register a WMI driver h]h)}(h%Helper macro to register a WMI driverh]h%Helper macro to register a WMI driver}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKYhj6ubah}(h]h ]h"]h$]h&]uh1jahjHhKYhhhhubj)}(h**Parameters** ``driver`` wmi_driver struct **Description** Helper macro for registering a WMI driver. It automatically passes THIS_MODULE to the underlying function.h](h)}(h**Parameters**h]j)}(hjUh]h Parameters}(hjWhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjSubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK]hjOubj)}(hhh]j)}(h``driver`` wmi_driver struct h](j)}(h ``driver``h]h)}(hjth]hdriver}(hjvhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjrubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKZhjnubj7)}(hhh]h)}(hwmi_driver structh]hwmi_driver struct}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhKZhjubah}(h]h ]h"]h$]h&]uh1j6hjnubeh}(h]h ]h"]h$]h&]uh1jhjhKZhjkubah}(h]h ]h"]h$]h&]uh1jhjOubh)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK\hjOubh)}(hjHelper macro for registering a WMI driver. It automatically passes THIS_MODULE to the underlying function.h]hjHelper macro for registering a WMI driver. It automatically passes THIS_MODULE to the underlying function.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK\hjOubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2module_wmi_driver (C macro)c.module_wmi_driverhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hmodule_wmi_driverh]jB)}(hmodule_wmi_driverh]jk)}(hmodule_wmi_driverh]jq)}(hjh]hmodule_wmi_driver}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKiubah}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhj hKiubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hj hKihjhhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhjhhhj hKiubeh}(h]h ](hmacroeh"]h$]h&]jhjj$ jj$ jjjuh1j6hhhhhNhNubh)}(h$``module_wmi_driver (__wmi_driver)``h]h)}(hj* h]h module_wmi_driver (__wmi_driver)}(hj, hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj( ubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKkhhhhubjb)}(h1Helper macro to register/unregister a WMI driver h]h)}(h0Helper macro to register/unregister a WMI driverh]h0Helper macro to register/unregister a WMI driver}(hjD hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKbhj@ ubah}(h]h ]h"]h$]h&]uh1jahjR hKbhhhhubj)}(hX"**Parameters** ``__wmi_driver`` wmi_driver struct **Description** Helper macro for WMI drivers which do not do anything special in module init/exit. This eliminates a lot of boilerplate. Each module may only use this macro once, and calling it replaces module_init() and module_exit().h](h)}(h**Parameters**h]j)}(hj_ h]h Parameters}(hja hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj] ubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKfhjY ubj)}(hhh]j)}(h#``__wmi_driver`` wmi_driver struct h](j)}(h``__wmi_driver``h]h)}(hj~ h]h __wmi_driver}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj| ubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKchjx ubj7)}(hhh]h)}(hwmi_driver structh]hwmi_driver struct}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj hKchj ubah}(h]h ]h"]h$]h&]uh1j6hjx ubeh}(h]h ]h"]h$]h&]uh1jhj hKchju ubah}(h]h ]h"]h$]h&]uh1jhjY ubh)}(h**Description**h]j)}(hj h]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKehjY ubh)}(hHelper macro for WMI drivers which do not do anything special in module init/exit. This eliminates a lot of boilerplate. Each module may only use this macro once, and calling it replaces module_init() and module_exit().h]hHelper macro for WMI drivers which do not do anything special in module init/exit. This eliminates a lot of boilerplate. Each module may only use this macro once, and calling it replaces module_init() and module_exit().}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKehjY ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmi_instance_count (C function)c.wmi_instance_counthNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h0int wmi_instance_count (const char *guid_string)h]jB)}(h/int wmi_instance_count(const char *guid_string)h](hdesc_sig_keyword_type)}(hinth]hint}(hj hhhNhNubah}(h]h ]ktah"]h$]h&]uh1j hj hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chKubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj hhhj hKubjk)}(hwmi_instance_counth]jq)}(hwmi_instance_counth]hwmi_instance_count}(hj" hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj hhhj hKubhdesc_parameterlist)}(h(const char *guid_string)h]hdesc_parameter)}(hconst char *guid_stringh](jH)}(hconsth]hconst}(hjB hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj> ubjZ)}(h h]h }(hjP hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj> ubj )}(hcharh]hchar}(hj^ hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj> ubjZ)}(h h]h }(hjl hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj> ubhdesc_sig_punctuation)}(h*h]h*}(hj| hhhNhNubah}(h]h ]pah"]h$]h&]uh1jz hj> ubjq)}(h guid_stringh]h guid_string}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj> ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj8 ubah}(h]h ]h"]h$]h&]hhuh1j6 hj hhhj hKubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj hhhj hKubah}(h]j ah ](jjeh"]h$]h&]jj)jhuh1j;hj hKhj hhubj)}(hhh]h)}(h"Get number of WMI object instancesh]h"Get number of WMI object instances}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chKhj hhubah}(h]h ]h"]h$]h&]uh1jhj hhhj hKubeh}(h]h ](hfunctioneh"]h$]h&]jhjj jj jjjuh1j6hhhhhNhNubj)}(h**Parameters** ``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba **Description** Get the number of WMI object instances. **Return** Number of WMI object instances or negative error code.h](h)}(h**Parameters**h]j)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chKhj ubj)}(hhh]j)}(h\``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba h](j)}(h``const char *guid_string``h]h)}(hj h]hconst char *guid_string}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chKhj ubj7)}(hhh]h)}(h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49bah]h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj hKhj ubah}(h]h ]h"]h$]h&]uh1j6hj ubeh}(h]h ]h"]h$]h&]uh1jhj hKhj ubah}(h]h ]h"]h$]h&]uh1jhj ubh)}(h**Description**h]j)}(hj1 h]h Description}(hj3 hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj/ ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chKhj ubh)}(h'Get the number of WMI object instances.h]h'Get the number of WMI object instances.}(hjG hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chKhj ubh)}(h **Return**h]j)}(hjX h]hReturn}(hjZ hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjV ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chKhj ubh)}(h6Number of WMI object instances or negative error code.h]h6Number of WMI object instances or negative error code.}(hjn hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chKhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2"wmidev_instance_count (C function)c.wmidev_instance_counthNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h2u8 wmidev_instance_count (struct wmi_device *wdev)h]jB)}(h1u8 wmidev_instance_count(struct wmi_device *wdev)h](h)}(hhh]jq)}(hu8h]hu8}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ]h"]h$]h&] refdomainhreftype identifier reftargetj modnameN classnameN c:parent_keysphinx.domains.c LookupKey)}data]j ASTIdentifier)}j wmidev_instance_countsbc.wmidev_instance_countasbuh1hhj hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj hhhj hM ubjk)}(hwmidev_instance_counth]jq)}(hj h]hwmidev_instance_count}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj hhhj hM ubj7 )}(h(struct wmi_device *wdev)h]j= )}(hstruct wmi_device *wdevh](jH)}(hjKh]hstruct}(hj hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubh)}(hhh]jq)}(h wmi_deviceh]h wmi_device}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetj modnameN classnameNj j )}j ]j c.wmidev_instance_countasbuh1hhj ubjZ)}(h h]h }(hj3 hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubj{ )}(hj~ h]h*}(hjA hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj ubjq)}(hwdevh]hwdev}(hjN hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj ubah}(h]h ]h"]h$]h&]hhuh1j6 hj hhhj hM ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj hhhj hM ubah}(h]j ah ](jjeh"]h$]h&]jj)jhuh1j;hj hM hj hhubj)}(hhh]h)}(h"Get number of WMI object instancesh]h"Get number of WMI object instances}(hjx hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhju hhubah}(h]h ]h"]h$]h&]uh1jhj hhhj hM ubeh}(h]h ](hfunctioneh"]h$]h&]jhjj jj jjjuh1j6hhhhhNhNubj)}(h**Parameters** ``struct wmi_device *wdev`` A wmi bus device from a driver **Description** Get the number of WMI object instances. **Return** Number of WMI object instances.h](h)}(h**Parameters**h]j)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubj)}(hhh]j)}(h;``struct wmi_device *wdev`` A wmi bus device from a driver h](j)}(h``struct wmi_device *wdev``h]h)}(hj h]hstruct wmi_device *wdev}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubj7)}(hhh]h)}(hA wmi bus device from a driverh]hA wmi bus device from a driver}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj hMhj ubah}(h]h ]h"]h$]h&]uh1j6hj ubeh}(h]h ]h"]h$]h&]uh1jhj hMhj ubah}(h]h ]h"]h$]h&]uh1jhj ubh)}(h**Description**h]j)}(hj h]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubh)}(h'Get the number of WMI object instances.h]h'Get the number of WMI object instances.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubh)}(h **Return**h]j)}(hj h]hReturn}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubh)}(hNumber of WMI object instances.h]hNumber of WMI object instances.}(hj1 hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2 wmi_evaluate_method (C function)c.wmi_evaluate_methodhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hacpi_status wmi_evaluate_method (const char *guid_string, u8 instance, u32 method_id, const struct acpi_buffer *in, struct acpi_buffer *out)h]jB)}(hacpi_status wmi_evaluate_method(const char *guid_string, u8 instance, u32 method_id, const struct acpi_buffer *in, struct acpi_buffer *out)h](h)}(hhh]jq)}(h acpi_statush]h acpi_status}(hjc hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj` ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetje modnameN classnameNj j )}j ]j )}j wmi_evaluate_methodsbc.wmi_evaluate_methodasbuh1hhj\ hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj\ hhhj hMubjk)}(hwmi_evaluate_methodh]jq)}(hj h]hwmi_evaluate_method}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj\ hhhj hMubj7 )}(hl(const char *guid_string, u8 instance, u32 method_id, const struct acpi_buffer *in, struct acpi_buffer *out)h](j= )}(hconst char *guid_stringh](jH)}(hjD h]hconst}(hj hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubj )}(hcharh]hchar}(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubj{ )}(hj~ h]h*}(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj ubjq)}(h guid_stringh]h guid_string}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj ubj= )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]j c.wmi_evaluate_methodasbuh1hhj ubjZ)}(h h]h }(hj0hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubjq)}(hinstanceh]hinstance}(hj>hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj ubj= )}(h u32 method_idh](h)}(hhh]jq)}(hu32h]hu32}(hjZhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjWubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetj\modnameN classnameNj j )}j ]j c.wmi_evaluate_methodasbuh1hhjSubjZ)}(h h]h }(hjxhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjSubjq)}(h method_idh]h method_id}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjSubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj ubj= )}(hconst struct acpi_buffer *inh](jH)}(hjD h]hconst}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjH)}(hjKh]hstruct}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]j c.wmi_evaluate_methodasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj{ )}(hj~ h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjubjq)}(hinh]hin}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj ubj= )}(hstruct acpi_buffer *outh](jH)}(hjKh]hstruct}(hj*hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj&ubjZ)}(h h]h }(hj7hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj&ubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hjHhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjEubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjJmodnameN classnameNj j )}j ]j c.wmi_evaluate_methodasbuh1hhj&ubjZ)}(h h]h }(hjfhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj&ubj{ )}(hj~ h]h*}(hjthhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj&ubjq)}(houth]hout}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj&ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj ubeh}(h]h ]h"]h$]h&]hhuh1j6 hj\ hhhj hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjX hhhj hMubah}(h]jS ah ](jjeh"]h$]h&]jj)jhuh1j;hj hMhjU hhubj)}(hhh]h)}(h"Evaluate a WMI method (deprecated)h]h"Evaluate a WMI method (deprecated)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjhhubah}(h]h ]h"]h$]h&]uh1jhjU hhhj hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubj)}(hX**Parameters** ``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba ``u8 instance`` Instance index ``u32 method_id`` Method ID to call ``const struct acpi_buffer *in`` Mandatory buffer containing input for the method call ``struct acpi_buffer *out`` Empty buffer to return the method results **Description** Call an ACPI-WMI method, the caller must free **out**. **Return** acpi_status signaling success or error.h](h)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj)}(hhh](j)}(h\``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba h](j)}(h``const char *guid_string``h]h)}(hjh]hconst char *guid_string}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49bah]h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hj%h]h u8 instance}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj#ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hj>hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj:hMhj;ubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhj:hMhjubj)}(h$``u32 method_id`` Method ID to call h](j)}(h``u32 method_id``h]h)}(hj^h]h u32 method_id}(hj`hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj\ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjXubj7)}(hhh]h)}(hMethod ID to callh]hMethod ID to call}(hjwhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjshMhjtubah}(h]h ]h"]h$]h&]uh1j6hjXubeh}(h]h ]h"]h$]h&]uh1jhjshMhjubj)}(hW``const struct acpi_buffer *in`` Mandatory buffer containing input for the method call h](j)}(h ``const struct acpi_buffer *in``h]h)}(hjh]hconst struct acpi_buffer *in}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(h5Mandatory buffer containing input for the method callh]h5Mandatory buffer containing input for the method call}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(hF``struct acpi_buffer *out`` Empty buffer to return the method results h](j)}(h``struct acpi_buffer *out``h]h)}(hjh]hstruct acpi_buffer *out}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(h)Empty buffer to return the method resultsh]h)Empty buffer to return the method results}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubeh}(h]h ]h"]h$]h&]uh1jhjubh)}(h**Description**h]j)}(hj h]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(h6Call an ACPI-WMI method, the caller must free **out**.h](h.Call an ACPI-WMI method, the caller must free }(hj!hhhNhNubj)}(h**out**h]hout}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj!ubh.}(hj!hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(h **Return**h]j)}(hjDh]hReturn}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjBubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hjZhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2#wmidev_evaluate_method (C function)c.wmidev_evaluate_methodhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hacpi_status wmidev_evaluate_method (struct wmi_device *wdev, u8 instance, u32 method_id, const struct acpi_buffer *in, struct acpi_buffer *out)h]jB)}(hacpi_status wmidev_evaluate_method(struct wmi_device *wdev, u8 instance, u32 method_id, const struct acpi_buffer *in, struct acpi_buffer *out)h](h)}(hhh]jq)}(h acpi_statush]h acpi_status}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]j )}j wmidev_evaluate_methodsbc.wmidev_evaluate_methodasbuh1hhjhhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM;ubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhM;ubjk)}(hwmidev_evaluate_methodh]jq)}(hjh]hwmidev_evaluate_method}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjhM;ubj7 )}(hl(struct wmi_device *wdev, u8 instance, u32 method_id, const struct acpi_buffer *in, struct acpi_buffer *out)h](j= )}(hstruct wmi_device *wdevh](jH)}(hjKh]hstruct}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubh)}(hhh]jq)}(h wmi_deviceh]h wmi_device}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]jc.wmidev_evaluate_methodasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj{ )}(hj~ h]h*}(hj%hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjubjq)}(hwdevh]hwdev}(hj2hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubj= )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hjNhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjKubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjPmodnameN classnameNj j )}j ]jc.wmidev_evaluate_methodasbuh1hhjGubjZ)}(h h]h }(hjlhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjGubjq)}(hinstanceh]hinstance}(hjzhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjGubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubj= )}(h u32 method_idh](h)}(hhh]jq)}(hu32h]hu32}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]jc.wmidev_evaluate_methodasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjq)}(h method_idh]h method_id}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubj= )}(hconst struct acpi_buffer *inh](jH)}(hjD h]hconst}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjH)}(hjKh]hstruct}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]jc.wmidev_evaluate_methodasbuh1hhjubjZ)}(h h]h }(hj2hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj{ )}(hj~ h]h*}(hj@hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjubjq)}(hinh]hin}(hjMhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubj= )}(hstruct acpi_buffer *outh](jH)}(hjKh]hstruct}(hjfhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjbubjZ)}(h h]h }(hjshhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjbubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]jc.wmidev_evaluate_methodasbuh1hhjbubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjbubj{ )}(hj~ h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjbubjq)}(houth]hout}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjbubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubeh}(h]h ]h"]h$]h&]hhuh1j6 hjhhhjhM;ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhM;ubah}(h]j|ah ](jjeh"]h$]h&]jj)jhuh1j;hjhM;hj~hhubj)}(hhh]h)}(hEvaluate a WMI methodh]hEvaluate a WMI method}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM0hjhhubah}(h]h ]h"]h$]h&]uh1jhj~hhhjhM;ubeh}(h]h ](hfunctioneh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubj)}(hX**Parameters** ``struct wmi_device *wdev`` A wmi bus device from a driver ``u8 instance`` Instance index ``u32 method_id`` Method ID to call ``const struct acpi_buffer *in`` Mandatory buffer containing input for the method call ``struct acpi_buffer *out`` Empty buffer to return the method results **Description** Call an ACPI-WMI method, the caller must free **out**. **Return** acpi_status signaling success or error.h](h)}(h**Parameters**h]j)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM4hjubj)}(hhh](j)}(h;``struct wmi_device *wdev`` A wmi bus device from a driver h](j)}(h``struct wmi_device *wdev``h]h)}(hj(h]hstruct wmi_device *wdev}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj&ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM1hj"ubj7)}(hhh]h)}(hA wmi bus device from a driverh]hA wmi bus device from a driver}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj=hM1hj>ubah}(h]h ]h"]h$]h&]uh1j6hj"ubeh}(h]h ]h"]h$]h&]uh1jhj=hM1hjubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hjah]h u8 instance}(hjchhhNhNubah}(h]h ]h"]h$]h&]uh1hhj_ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM2hj[ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjvhM2hjwubah}(h]h ]h"]h$]h&]uh1j6hj[ubeh}(h]h ]h"]h$]h&]uh1jhjvhM2hjubj)}(h$``u32 method_id`` Method ID to call h](j)}(h``u32 method_id``h]h)}(hjh]h u32 method_id}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM3hjubj7)}(hhh]h)}(hMethod ID to callh]hMethod ID to call}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhM3hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhM3hjubj)}(hW``const struct acpi_buffer *in`` Mandatory buffer containing input for the method call h](j)}(h ``const struct acpi_buffer *in``h]h)}(hjh]hconst struct acpi_buffer *in}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM4hjubj7)}(hhh]h)}(h5Mandatory buffer containing input for the method callh]h5Mandatory buffer containing input for the method call}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhM4hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhM4hjubj)}(hF``struct acpi_buffer *out`` Empty buffer to return the method results h](j)}(h``struct acpi_buffer *out``h]h)}(hj h]hstruct acpi_buffer *out}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM5hjubj7)}(hhh]h)}(h)Empty buffer to return the method resultsh]h)Empty buffer to return the method results}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj!hM5hj"ubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhj!hM5hjubeh}(h]h ]h"]h$]h&]uh1jhjubh)}(h**Description**h]j)}(hjGh]h Description}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjEubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM7hjubh)}(h6Call an ACPI-WMI method, the caller must free **out**.h](h.Call an ACPI-WMI method, the caller must free }(hj]hhhNhNubj)}(h**out**h]hout}(hjehhhNhNubah}(h]h ]h"]h$]h&]uh1jhj]ubh.}(hj]hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM7hjubh)}(h **Return**h]j)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj~ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM9hjubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM9hjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmi_query_block (C function)c.wmi_query_blockhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h[acpi_status wmi_query_block (const char *guid_string, u8 instance, struct acpi_buffer *out)h]jB)}(hZacpi_status wmi_query_block(const char *guid_string, u8 instance, struct acpi_buffer *out)h](h)}(hhh]jq)}(h acpi_statush]h acpi_status}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]j )}j wmi_query_blocksbc.wmi_query_blockasbuh1hhjhhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhMubjk)}(hwmi_query_blockh]jq)}(hjh]hwmi_query_block}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjhMubj7 )}(h?(const char *guid_string, u8 instance, struct acpi_buffer *out)h](j= )}(hconst char *guid_stringh](jH)}(hjD h]hconst}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hj$hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj )}(hcharh]hchar}(hj2hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjubjZ)}(h h]h }(hj@hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj{ )}(hj~ h]h*}(hjNhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjubjq)}(h guid_stringh]h guid_string}(hj[hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubj= )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hjwhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjtubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjymodnameN classnameNj j )}j ]jc.wmi_query_blockasbuh1hhjpubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjpubjq)}(hinstanceh]hinstance}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjpubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubj= )}(hstruct acpi_buffer *outh](jH)}(hjKh]hstruct}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]jc.wmi_query_blockasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj{ )}(hj~ h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjubjq)}(houth]hout}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubeh}(h]h ]h"]h$]h&]hhuh1j6 hjhhhjhMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhMubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjhMhjhhubj)}(hhh]h)}(h+Return contents of a WMI block (deprecated)h]h+Return contents of a WMI block (deprecated)}(hj=hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj:hhubah}(h]h ]h"]h$]h&]uh1jhjhhhjhMubeh}(h]h ](hfunctioneh"]h$]h&]jhjjUjjUjjjuh1j6hhhhhNhNubj)}(hXq**Parameters** ``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba ``u8 instance`` Instance index ``struct acpi_buffer *out`` Empty buffer to return the contents of the data block to **Description** Query a ACPI-WMI block, the caller must free **out**. **Return** ACPI object containing the content of the WMI block.h](h)}(h**Parameters**h]j)}(hj_h]h Parameters}(hjahhhNhNubah}(h]h ]h"]h$]h&]uh1jhj]ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjYubj)}(hhh](j)}(h\``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba h](j)}(h``const char *guid_string``h]h)}(hj~h]hconst char *guid_string}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj|ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjxubj7)}(hhh]h)}(h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49bah]h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjxubeh}(h]h ]h"]h$]h&]uh1jhjhMhjuubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hjh]h u8 instance}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjuubj)}(hU``struct acpi_buffer *out`` Empty buffer to return the contents of the data block to h](j)}(h``struct acpi_buffer *out``h]h)}(hjh]hstruct acpi_buffer *out}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(h8Empty buffer to return the contents of the data block toh]h8Empty buffer to return the contents of the data block to}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjuubeh}(h]h ]h"]h$]h&]uh1jhjYubh)}(h**Description**h]j)}(hj+h]h Description}(hj-hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj)ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjYubh)}(h5Query a ACPI-WMI block, the caller must free **out**.h](h-Query a ACPI-WMI block, the caller must free }(hjAhhhNhNubj)}(h**out**h]hout}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjAubh.}(hjAhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjYubh)}(h **Return**h]j)}(hjdh]hReturn}(hjfhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjbubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjYubh)}(h4ACPI object containing the content of the WMI block.h]h4ACPI object containing the content of the WMI block.}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjYubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmidev_block_query (C function)c.wmidev_block_queryhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hMunion acpi_object * wmidev_block_query (struct wmi_device *wdev, u8 instance)h]jB)}(hKunion acpi_object *wmidev_block_query(struct wmi_device *wdev, u8 instance)h](jH)}(hunionh]hunion}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjhhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhMubh)}(hhh]jq)}(h acpi_objecth]h acpi_object}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]j )}j wmidev_block_querysbc.wmidev_block_queryasbuh1hhjhhhjhMubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhMubj{ )}(hj~ h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjhhhjhMubjk)}(hwmidev_block_queryh]jq)}(hjh]hwmidev_block_query}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjhMubj7 )}(h&(struct wmi_device *wdev, u8 instance)h](j= )}(hstruct wmi_device *wdevh](jH)}(hjKh]hstruct}(hj$hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj ubjZ)}(h h]h }(hj1hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubh)}(hhh]jq)}(h wmi_deviceh]h wmi_device}(hjBhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj?ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjDmodnameN classnameNj j )}j ]jc.wmidev_block_queryasbuh1hhj ubjZ)}(h h]h }(hj`hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubj{ )}(hj~ h]h*}(hjnhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj ubjq)}(hwdevh]hwdev}(hj{hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubj= )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]jc.wmidev_block_queryasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjq)}(hinstanceh]hinstance}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjubeh}(h]h ]h"]h$]h&]hhuh1j6 hjhhhjhMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhMubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjhMhjhhubj)}(hhh]h)}(hReturn contents of a WMI blockh]hReturn contents of a WMI block}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjhhubah}(h]h ]h"]h$]h&]uh1jhjhhhjhMubeh}(h]h ](hfunctioneh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubj)}(h**Parameters** ``struct wmi_device *wdev`` A wmi bus device from a driver ``u8 instance`` Instance index **Description** Query an ACPI-WMI block, the caller must free the result. **Return** ACPI object containing the content of the WMI block.h](h)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubj)}(hhh](j)}(h;``struct wmi_device *wdev`` A wmi bus device from a driver h](j)}(h``struct wmi_device *wdev``h]h)}(hj.h]hstruct wmi_device *wdev}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj,ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj(ubj7)}(hhh]h)}(hA wmi bus device from a driverh]hA wmi bus device from a driver}(hjGhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjChMhjDubah}(h]h ]h"]h$]h&]uh1j6hj(ubeh}(h]h ]h"]h$]h&]uh1jhjChMhj%ubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hjgh]h u8 instance}(hjihhhNhNubah}(h]h ]h"]h$]h&]uh1hhjeubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjaubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj|hMhj}ubah}(h]h ]h"]h$]h&]uh1j6hjaubeh}(h]h ]h"]h$]h&]uh1jhj|hMhj%ubeh}(h]h ]h"]h$]h&]uh1jhj ubh)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubh)}(h9Query an ACPI-WMI block, the caller must free the result.h]h9Query an ACPI-WMI block, the caller must free the result.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubh)}(h **Return**h]j)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubh)}(h4ACPI object containing the content of the WMI block.h]h4ACPI object containing the content of the WMI block.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmi_set_block (C function)c.wmi_set_blockhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h^acpi_status wmi_set_block (const char *guid_string, u8 instance, const struct acpi_buffer *in)h]jB)}(h]acpi_status wmi_set_block(const char *guid_string, u8 instance, const struct acpi_buffer *in)h](h)}(hhh]jq)}(h acpi_statush]h acpi_status}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]j )}j wmi_set_blocksbc.wmi_set_blockasbuh1hhj hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMubjZ)}(h h]h }(hj3hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj hhhj2hMubjk)}(h wmi_set_blockh]jq)}(hj/h]h wmi_set_block}(hjEhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjAubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj hhhj2hMubj7 )}(hD(const char *guid_string, u8 instance, const struct acpi_buffer *in)h](j= )}(hconst char *guid_stringh](jH)}(hjD h]hconst}(hj`hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj\ubjZ)}(h h]h }(hjmhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj\ubj )}(hcharh]hchar}(hj{hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj\ubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj\ubj{ )}(hj~ h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj\ubjq)}(h guid_stringh]h guid_string}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj\ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjXubj= )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]j-c.wmi_set_blockasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjq)}(hinstanceh]hinstance}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjXubj= )}(hconst struct acpi_buffer *inh](jH)}(hjD h]hconst}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjH)}(hjKh]hstruct}(hj hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hj-hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hj>hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj;ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetj@modnameN classnameNj j )}j ]j-c.wmi_set_blockasbuh1hhjubjZ)}(h h]h }(hj\hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj{ )}(hj~ h]h*}(hjjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjubjq)}(hinh]hin}(hjwhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjXubeh}(h]h ]h"]h$]h&]hhuh1j6 hj hhhj2hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhj2hMubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hj2hMhjhhubj)}(hhh]h)}(h!Write to a WMI block (deprecated)h]h!Write to a WMI block (deprecated)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjhhubah}(h]h ]h"]h$]h&]uh1jhjhhhj2hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubj)}(hXl**Parameters** ``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba ``u8 instance`` Instance index ``const struct acpi_buffer *in`` Buffer containing new values for the data block **Description** Write the contents of the input buffer to an ACPI-WMI data block. **Return** acpi_status signaling success or error.h](h)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj)}(hhh](j)}(h\``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba h](j)}(h``const char *guid_string``h]h)}(hjh]hconst char *guid_string}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49bah]h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hjh]h u8 instance}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj0hMhj1ubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhj0hMhjubj)}(hQ``const struct acpi_buffer *in`` Buffer containing new values for the data block h](j)}(h ``const struct acpi_buffer *in``h]h)}(hjTh]hconst struct acpi_buffer *in}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjRubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjNubj7)}(hhh]h)}(h/Buffer containing new values for the data blockh]h/Buffer containing new values for the data block}(hjmhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjihMhjjubah}(h]h ]h"]h$]h&]uh1j6hjNubeh}(h]h ]h"]h$]h&]uh1jhjihMhjubeh}(h]h ]h"]h$]h&]uh1jhjubh)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(hAWrite the contents of the input buffer to an ACPI-WMI data block.h]hAWrite the contents of the input buffer to an ACPI-WMI data block.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(h **Return**h]j)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmidev_block_set (C function)c.wmidev_block_sethNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(haacpi_status wmidev_block_set (struct wmi_device *wdev, u8 instance, const struct acpi_buffer *in)h]jB)}(h`acpi_status wmidev_block_set(struct wmi_device *wdev, u8 instance, const struct acpi_buffer *in)h](h)}(hhh]jq)}(h acpi_statush]h acpi_status}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]j )}j wmidev_block_setsbc.wmidev_block_setasbuh1hhjhhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhMubjk)}(hwmidev_block_seth]jq)}(hjh]hwmidev_block_set}(hj2hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj.ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjhMubj7 )}(hD(struct wmi_device *wdev, u8 instance, const struct acpi_buffer *in)h](j= )}(hstruct wmi_device *wdevh](jH)}(hjKh]hstruct}(hjMhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjIubjZ)}(h h]h }(hjZhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjIubh)}(hhh]jq)}(h wmi_deviceh]h wmi_device}(hjkhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjhubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmmodnameN classnameNj j )}j ]jc.wmidev_block_setasbuh1hhjIubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjIubj{ )}(hj~ h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjIubjq)}(hwdevh]hwdev}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjIubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjEubj= )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetjmodnameN classnameNj j )}j ]jc.wmidev_block_setasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjq)}(hinstanceh]hinstance}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjEubj= )}(hconst struct acpi_buffer *inh](jH)}(hjD h]hconst}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjH)}(hjKh]hstruct}(hj hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hj-hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hj>hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj;ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetj@modnameN classnameNj j )}j ]jc.wmidev_block_setasbuh1hhjubjZ)}(h h]h }(hj\hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj{ )}(hj~ h]h*}(hjjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjubjq)}(hinh]hin}(hjwhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjEubeh}(h]h ]h"]h$]h&]hhuh1j6 hjhhhjhMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhMubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjhMhjhhubj)}(hhh]h)}(hWrite to a WMI blockh]hWrite to a WMI block}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjhhubah}(h]h ]h"]h$]h&]uh1jhjhhhjhMubeh}(h]h ](hfunctioneh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubj)}(hXG**Parameters** ``struct wmi_device *wdev`` A wmi bus device from a driver ``u8 instance`` Instance index ``const struct acpi_buffer *in`` Buffer containing new values for the data block **Description** Write contents of the input buffer to an ACPI-WMI data block. **Return** acpi_status signaling success or error.h](h)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj)}(hhh](j)}(h;``struct wmi_device *wdev`` A wmi bus device from a driver h](j)}(h``struct wmi_device *wdev``h]h)}(hjh]hstruct wmi_device *wdev}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubj7)}(hhh]h)}(hA wmi bus device from a driverh]hA wmi bus device from a driver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhMhjubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hj h]h u8 instance}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hj4 hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj0 hMhj1 ubah}(h]h ]h"]h$]h&]uh1j6hj ubeh}(h]h ]h"]h$]h&]uh1jhj0 hMhjubj)}(hQ``const struct acpi_buffer *in`` Buffer containing new values for the data block h](j)}(h ``const struct acpi_buffer *in``h]h)}(hjT h]hconst struct acpi_buffer *in}(hjV hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjR ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjN ubj7)}(hhh]h)}(h/Buffer containing new values for the data blockh]h/Buffer containing new values for the data block}(hjm hhhNhNubah}(h]h ]h"]h$]h&]uh1hhji hMhjj ubah}(h]h ]h"]h$]h&]uh1j6hjN ubeh}(h]h ]h"]h$]h&]uh1jhji hMhjubeh}(h]h ]h"]h$]h&]uh1jhjubh)}(h**Description**h]j)}(hj h]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(h=Write contents of the input buffer to an ACPI-WMI data block.h]h=Write contents of the input buffer to an ACPI-WMI data block.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(h **Return**h]j)}(hj h]hReturn}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2'wmi_install_notify_handler (C function)c.wmi_install_notify_handlerhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(haacpi_status wmi_install_notify_handler (const char *guid, wmi_notify_handler handler, void *data)h]jB)}(h`acpi_status wmi_install_notify_handler(const char *guid, wmi_notify_handler handler, void *data)h](h)}(hhh]jq)}(h acpi_statush]h acpi_status}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetj!modnameN classnameNj j )}j ]j )}j wmi_install_notify_handlersbc.wmi_install_notify_handlerasbuh1hhj hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMubjZ)}(h h]h }(hj !hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj hhhj!hMubjk)}(hwmi_install_notify_handlerh]jq)}(hj!h]hwmi_install_notify_handler}(hj2!hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj.!ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj hhhj!hMubj7 )}(h:(const char *guid, wmi_notify_handler handler, void *data)h](j= )}(hconst char *guidh](jH)}(hjD h]hconst}(hjM!hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjI!ubjZ)}(h h]h }(hjZ!hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjI!ubj )}(hcharh]hchar}(hjh!hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjI!ubjZ)}(h h]h }(hjv!hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjI!ubj{ )}(hj~ h]h*}(hj!hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hjI!ubjq)}(hguidh]hguid}(hj!hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjI!ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjE!ubj= )}(hwmi_notify_handler handlerh](h)}(hhh]jq)}(hwmi_notify_handlerh]hwmi_notify_handler}(hj!hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj!ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetj!modnameN classnameNj j )}j ]j!c.wmi_install_notify_handlerasbuh1hhj!ubjZ)}(h h]h }(hj!hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj!ubjq)}(hhandlerh]hhandler}(hj!hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj!ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjE!ubj= )}(h void *datah](j )}(hvoidh]hvoid}(hj!hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj!ubjZ)}(h h]h }(hj"hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj!ubj{ )}(hj~ h]h*}(hj"hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj!ubjq)}(hdatah]hdata}(hj"hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj!ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hjE!ubeh}(h]h ]h"]h$]h&]hhuh1j6 hj hhhj!hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj hhhj!hMubah}(h]j ah ](jjeh"]h$]h&]jj)jhuh1j;hj!hMhj hhubj)}(hhh]h)}(h,Register handler for WMI events (deprecated)h]h,Register handler for WMI events (deprecated)}(hjE"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM hjB"hhubah}(h]h ]h"]h$]h&]uh1jhj hhhj!hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjj]"jj]"jjjuh1j6hhhhhNhNubj)}(hXw**Parameters** ``const char *guid`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba ``wmi_notify_handler handler`` Function to handle notifications ``void *data`` Data to be returned to handler when event is fired **Description** Register a handler for events sent to the ACPI-WMI mapper device. **Return** acpi_status signaling success or error.h](h)}(h**Parameters**h]j)}(hjg"h]h Parameters}(hji"hhhNhNubah}(h]h ]h"]h$]h&]uh1jhje"ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhja"ubj)}(hhh](j)}(hU``const char *guid`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba h](j)}(h``const char *guid``h]h)}(hj"h]hconst char *guid}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM hj"ubj7)}(hhh]h)}(h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49bah]h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"hM hj"ubah}(h]h ]h"]h$]h&]uh1j6hj"ubeh}(h]h ]h"]h$]h&]uh1jhj"hM hj}"ubj)}(h@``wmi_notify_handler handler`` Function to handle notifications h](j)}(h``wmi_notify_handler handler``h]h)}(hj"h]hwmi_notify_handler handler}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj"ubj7)}(hhh]h)}(h Function to handle notificationsh]h Function to handle notifications}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"hMhj"ubah}(h]h ]h"]h$]h&]uh1j6hj"ubeh}(h]h ]h"]h$]h&]uh1jhj"hMhj}"ubj)}(hB``void *data`` Data to be returned to handler when event is fired h](j)}(h``void *data``h]h)}(hj"h]h void *data}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhj"ubj7)}(hhh]h)}(h2Data to be returned to handler when event is firedh]h2Data to be returned to handler when event is fired}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj #hMhj#ubah}(h]h ]h"]h$]h&]uh1j6hj"ubeh}(h]h ]h"]h$]h&]uh1jhj #hMhj}"ubeh}(h]h ]h"]h$]h&]uh1jhja"ubh)}(h**Description**h]j)}(hj3#h]h Description}(hj5#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj1#ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhja"ubh)}(hARegister a handler for events sent to the ACPI-WMI mapper device.h]hARegister a handler for events sent to the ACPI-WMI mapper device.}(hjI#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhja"ubh)}(h **Return**h]j)}(hjZ#h]hReturn}(hj\#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjX#ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhja"ubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hjp#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMhja"ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2&wmi_remove_notify_handler (C function)c.wmi_remove_notify_handlerhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h8acpi_status wmi_remove_notify_handler (const char *guid)h]jB)}(h7acpi_status wmi_remove_notify_handler(const char *guid)h](h)}(hhh]jq)}(h acpi_statush]h acpi_status}(hj#hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj#ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetj#modnameN classnameNj j )}j ]j )}j wmi_remove_notify_handlersbc.wmi_remove_notify_handlerasbuh1hhj#hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM?ubjZ)}(h h]h }(hj#hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj#hhhj#hM?ubjk)}(hwmi_remove_notify_handlerh]jq)}(hj#h]hwmi_remove_notify_handler}(hj#hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj#ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj#hhhj#hM?ubj7 )}(h(const char *guid)h]j= )}(hconst char *guidh](jH)}(hjD h]hconst}(hj#hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj#ubjZ)}(h h]h }(hj#hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj#ubj )}(hcharh]hchar}(hj $hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj#ubjZ)}(h h]h }(hj$hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj#ubj{ )}(hj~ h]h*}(hj($hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj#ubjq)}(hguidh]hguid}(hj5$hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj#ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj#ubah}(h]h ]h"]h$]h&]hhuh1j6 hj#hhhj#hM?ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj#hhhj#hM?ubah}(h]j#ah ](jjeh"]h$]h&]jj)jhuh1j;hj#hM?hj#hhubj)}(hhh]h)}(h.Unregister handler for WMI events (deprecated)h]h.Unregister handler for WMI events (deprecated)}(hj_$hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM8hj\$hhubah}(h]h ]h"]h$]h&]uh1jhj#hhhj#hM?ubeh}(h]h ](hfunctioneh"]h$]h&]jhjjw$jjw$jjjuh1j6hhhhhNhNubj)}(h**Parameters** ``const char *guid`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba **Description** Unregister handler for events sent to the ACPI-WMI mapper device. **Return** acpi_status signaling success or error.h](h)}(h**Parameters**h]j)}(hj$h]h Parameters}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj$ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM<hj{$ubj)}(hhh]j)}(hU``const char *guid`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba h](j)}(h``const char *guid``h]h)}(hj$h]hconst char *guid}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj$ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM9hj$ubj7)}(hhh]h)}(h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49bah]h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj$hM9hj$ubah}(h]h ]h"]h$]h&]uh1j6hj$ubeh}(h]h ]h"]h$]h&]uh1jhj$hM9hj$ubah}(h]h ]h"]h$]h&]uh1jhj{$ubh)}(h**Description**h]j)}(hj$h]h Description}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj$ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM;hj{$ubh)}(hAUnregister handler for events sent to the ACPI-WMI mapper device.h]hAUnregister handler for events sent to the ACPI-WMI mapper device.}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM;hj{$ubh)}(h **Return**h]j)}(hj%h]hReturn}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj%ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM=hj{$ubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM=hj{$ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmi_has_guid (C function)c.wmi_has_guidhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h+bool wmi_has_guid (const char *guid_string)h]jB)}(h*bool wmi_has_guid(const char *guid_string)h](j )}(hboolh]hbool}(hjG%hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjC%hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMgubjZ)}(h h]h }(hjV%hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjC%hhhjU%hMgubjk)}(h wmi_has_guidh]jq)}(h wmi_has_guidh]h wmi_has_guid}(hjh%hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjd%ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjC%hhhjU%hMgubj7 )}(h(const char *guid_string)h]j= )}(hconst char *guid_stringh](jH)}(hjD h]hconst}(hj%hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj%ubjZ)}(h h]h }(hj%hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj%ubj )}(hcharh]hchar}(hj%hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj%ubjZ)}(h h]h }(hj%hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj%ubj{ )}(hj~ h]h*}(hj%hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj%ubjq)}(h guid_stringh]h guid_string}(hj%hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj%ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj|%ubah}(h]h ]h"]h$]h&]hhuh1j6 hjC%hhhjU%hMgubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj?%hhhjU%hMgubah}(h]j:%ah ](jjeh"]h$]h&]jj)jhuh1j;hjU%hMghj<%hhubj)}(hhh]h)}(hCheck if a GUID is availableh]hCheck if a GUID is available}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM`hj%hhubah}(h]h ]h"]h$]h&]uh1jhj<%hhhjU%hMgubeh}(h]h ](hfunctioneh"]h$]h&]jhjj &jj &jjjuh1j6hhhhhNhNubj)}(h**Parameters** ``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba **Description** Check if a given GUID is defined by _WDG. **Return** True if GUID is available, false otherwise.h](h)}(h**Parameters**h]j)}(hj&h]h Parameters}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj&ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMdhj&ubj)}(hhh]j)}(h\``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba h](j)}(h``const char *guid_string``h]h)}(hj3&h]hconst char *guid_string}(hj5&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj1&ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMahj-&ubj7)}(hhh]h)}(h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49bah]h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba}(hjL&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjH&hMahjI&ubah}(h]h ]h"]h$]h&]uh1j6hj-&ubeh}(h]h ]h"]h$]h&]uh1jhjH&hMahj*&ubah}(h]h ]h"]h$]h&]uh1jhj&ubh)}(h**Description**h]j)}(hjn&h]h Description}(hjp&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjl&ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMchj&ubh)}(h)Check if a given GUID is defined by _WDG.h]h)Check if a given GUID is defined by _WDG.}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMchj&ubh)}(h **Return**h]j)}(hj&h]hReturn}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj&ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMehj&ubh)}(h+True if GUID is available, false otherwise.h]h+True if GUID is available, false otherwise.}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMehj&ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2$wmi_get_acpi_device_uid (C function)c.wmi_get_acpi_device_uidhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h8char * wmi_get_acpi_device_uid (const char *guid_string)h]jB)}(h6char *wmi_get_acpi_device_uid(const char *guid_string)h](j )}(hcharh]hchar}(hj&hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj&hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM}ubjZ)}(h h]h }(hj&hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj&hhhj&hM}ubj{ )}(hj~ h]h*}(hj&hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj&hhhj&hM}ubjk)}(hwmi_get_acpi_device_uidh]jq)}(hwmi_get_acpi_device_uidh]hwmi_get_acpi_device_uid}(hj'hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj'ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj&hhhj&hM}ubj7 )}(h(const char *guid_string)h]j= )}(hconst char *guid_stringh](jH)}(hjD h]hconst}(hj$'hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj 'ubjZ)}(h h]h }(hj1'hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj 'ubj )}(hcharh]hchar}(hj?'hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj 'ubjZ)}(h h]h }(hjM'hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj 'ubj{ )}(hj~ h]h*}(hj['hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj 'ubjq)}(h guid_stringh]h guid_string}(hjh'hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj 'ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj'ubah}(h]h ]h"]h$]h&]hhuh1j6 hj&hhhj&hM}ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj&hhhj&hM}ubah}(h]j&ah ](jjeh"]h$]h&]jj)jhuh1j;hj&hM}hj&hhubj)}(hhh]h)}(h;Get _UID name of ACPI device that defines GUID (deprecated)h]h;Get _UID name of ACPI device that defines GUID (deprecated)}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMvhj'hhubah}(h]h ]h"]h$]h&]uh1jhj&hhhj&hM}ubeh}(h]h ](hfunctioneh"]h$]h&]jhjj'jj'jjjuh1j6hhhhhNhNubj)}(hX **Parameters** ``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba **Description** Find the _UID of ACPI device associated with this WMI GUID. **Return** The ACPI _UID field value or NULL if the WMI GUID was not found.h](h)}(h**Parameters**h]j)}(hj'h]h Parameters}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj'ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMzhj'ubj)}(hhh]j)}(h\``const char *guid_string`` 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba h](j)}(h``const char *guid_string``h]h)}(hj'h]hconst char *guid_string}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj'ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMwhj'ubj7)}(hhh]h)}(h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49bah]h?36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj'hMwhj'ubah}(h]h ]h"]h$]h&]uh1j6hj'ubeh}(h]h ]h"]h$]h&]uh1jhj'hMwhj'ubah}(h]h ]h"]h$]h&]uh1jhj'ubh)}(h**Description**h]j)}(hj(h]h Description}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj (ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMyhj'ubh)}(h;Find the _UID of ACPI device associated with this WMI GUID.h]h;Find the _UID of ACPI device associated with this WMI GUID.}(hj$(hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chMyhj'ubh)}(h **Return**h]j)}(hj5(h]hReturn}(hj7(hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj3(ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM{hj'ubh)}(h@The ACPI _UID field value or NULL if the WMI GUID was not found.h]h@The ACPI _UID field value or NULL if the WMI GUID was not found.}(hjK(hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM{hj'ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2"wmi_driver_unregister (C function)c.wmi_driver_unregisterhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h6void wmi_driver_unregister (struct wmi_driver *driver)h]jB)}(h5void wmi_driver_unregister(struct wmi_driver *driver)h](j )}(hvoidh]hvoid}(hjz(hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjv(hhhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM7ubjZ)}(h h]h }(hj(hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjv(hhhj(hM7ubjk)}(hwmi_driver_unregisterh]jq)}(hwmi_driver_unregisterh]hwmi_driver_unregister}(hj(hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj(ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjv(hhhj(hM7ubj7 )}(h(struct wmi_driver *driver)h]j= )}(hstruct wmi_driver *driverh](jH)}(hjKh]hstruct}(hj(hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj(ubjZ)}(h h]h }(hj(hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj(ubh)}(hhh]jq)}(h wmi_driverh]h wmi_driver}(hj(hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj(ubah}(h]h ]h"]h$]h&] refdomainhreftypej reftargetj(modnameN classnameNj j )}j ]j )}j j(sbc.wmi_driver_unregisterasbuh1hhj(ubjZ)}(h h]h }(hj(hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj(ubj{ )}(hj~ h]h*}(hj)hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jz hj(ubjq)}(hdriverh]hdriver}(hj)hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj(ubeh}(h]h ]h"]h$]h&]noemphhhuh1j< hj(ubah}(h]h ]h"]h$]h&]hhuh1j6 hjv(hhhj(hM7ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjr(hhhj(hM7ubah}(h]jm(ah ](jjeh"]h$]h&]jj)jhuh1j;hj(hM7hjo(hhubj)}(hhh]h)}(hUnregister a WMI driverh]hUnregister a WMI driver}(hj:)hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM2hj7)hhubah}(h]h ]h"]h$]h&]uh1jhjo(hhhj(hM7ubeh}(h]h ](hfunctioneh"]h$]h&]jhjjR)jjR)jjjuh1j6hhhhhNhNubj)}(h**Parameters** ``struct wmi_driver *driver`` WMI driver to unregister **Description** Unregisters a WMI driver from the WMI bus.h](h)}(h**Parameters**h]j)}(hj\)h]h Parameters}(hj^)hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjZ)ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM6hjV)ubj)}(hhh]j)}(h7``struct wmi_driver *driver`` WMI driver to unregister h](j)}(h``struct wmi_driver *driver``h]h)}(hj{)h]hstruct wmi_driver *driver}(hj})hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjy)ubah}(h]h ]h"]h$]h&]uh1jhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM3hju)ubj7)}(hhh]h)}(hWMI driver to unregisterh]hWMI driver to unregister}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj)hM3hj)ubah}(h]h ]h"]h$]h&]uh1j6hju)ubeh}(h]h ]h"]h$]h&]uh1jhj)hM3hjr)ubah}(h]h ]h"]h$]h&]uh1jhjV)ubh)}(h**Description**h]j)}(hj)h]h Description}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj)ubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM5hjV)ubh)}(h*Unregisters a WMI driver from the WMI bus.h]h*Unregisters a WMI driver from the WMI bus.}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1hhY/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/x86/wmi.chM5hjV)ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubeh}(h]wmi-driver-apiah ]h"]wmi driver apiah$]h&]uh1hhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerj *error_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}nameids}j)j)s nametypes}j)sh}(j)hj4j=jj jjjjjjjjj j j j jS jX j|jjjjjjjjjj j j#j#j:%j?%j&j&jm(jr(u footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log] decorationNhhub.