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_buffer (C struct) c.wmi_bufferhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h wmi_bufferh]jB)}(hstruct wmi_bufferh](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_bufferh]jq)}(hjh]h wmi_buffer}(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 data bufferh]hWMI data buffer}(hjchhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK*hj`hhubah}(h]h ]h"]h$]h&]uh1jhjhhhj.hK)ubeh}(h]h ](hstructeh"]h$]h&]jhjj{jj{jjjuh1j6hhhhhNhNubj)}(h**Definition**:: struct wmi_buffer { size_t length; void *data; }; **Members** ``length`` Buffer length in bytes ``data`` Pointer to the buffer contenth](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.hhK.hjubj)}(h9struct wmi_buffer { size_t length; void *data; };h]h9struct wmi_buffer { size_t length; void *data; };}hjsbah}(h]h ]h"]h$]h&]hhuh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK0hjubh)}(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.hhK5hjubj)}(hhh](j)}(h"``length`` Buffer length in bytes h](j)}(h ``length``h]h)}(hjh]hlength}(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)}(hBuffer length in bytesh]hBuffer length in bytes}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhK,hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhK,hjubj)}(h&``data`` Pointer to the buffer contenth](j)}(h``data``h]h)}(hj h]hdata}(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.hhK,hjubj7)}(hhh]h)}(hPointer to the buffer contenth]hPointer to the buffer content}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK-hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhK,hjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(h**Description**h]j)}(hjLh]h Description}(hjNhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjJubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK0hhhhubh)}(hAThis structure is used to exchange data with the WMI driver core.h]hAThis structure is used to exchange data with the WMI driver core.}(hjbhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK-hhhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmi_string (C struct) c.wmi_stringhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(h wmi_stringh]jB)}(hstruct wmi_stringh](jH)}(hjKh]hstruct}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjhhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK2ubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhK2ubjk)}(h wmi_stringh]jq)}(hjh]h wmi_string}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjhK2ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhK2ubah}(h]j}ah ](jjeh"]h$]h&]jj)jhuh1j;hjhK2hjhhubj)}(hhh]h)}(hWMI string representationh]hWMI string representation}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK6hjhhubah}(h]h ]h"]h$]h&]uh1jhjhhhjhK2ubeh}(h]h ](hstructeh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubj)}(h**Definition**:: struct wmi_string { __le16 length; __le16 chars[]; }; **Members** ``length`` Size of **chars** in bytes ``chars`` UTF16-LE characters with optional nul termination and paddingh](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.hhK:hjubj)}(h=struct wmi_string { __le16 length; __le16 chars[]; };h]h=struct wmi_string { __le16 length; __le16 chars[]; };}hj sbah}(h]h ]h"]h$]h&]hhuh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhK>ubjk)}(h wmi_driverh]jq)}(hjh]h wmi_driver}(hj%hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj!ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjhK>ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhK>ubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjhK>hjhhubj)}(hhh]h)}(hWMI driver structureh]hWMI driver structure}(hjGhhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKWhjDhhubah}(h]h ]h"]h$]h&]uh1jhjhhhjhK>ubeh}(h]h ](hstructeh"]h$]h&]jhjj_jj_jjjuh1j6hhhhhNhNubj)}(hX**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); void (*notify_new)(struct wmi_device *device, const struct wmi_buffer *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 events (deprecated) ``notify_new`` Callback for receiving WMI eventsh](h)}(h**Definition**::h](j)}(h**Definition**h]h Definition}(hjkhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjgubh:}(hjghhhNhNubeh}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK[hjcubj)}(hXstruct 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); void (*notify_new)(struct wmi_device *device, const struct wmi_buffer *data); };h]hXstruct 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); void (*notify_new)(struct wmi_device *device, const struct wmi_buffer *data); };}hjsbah}(h]h ]h"]h$]h&]hhuh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK]hjcubh)}(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.hhKihjcubj)}(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.hhKYhjubj7)}(hhh]h)}(hDriver model structureh]hDriver model structure}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhKYhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhKYhjubj)}(h8``id_table`` List of WMI GUIDs supported by this driver h](j)}(h ``id_table``h]h)}(hjh]hid_table}(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.hhKZhjubj7)}(hhh]h)}(h*List of WMI GUIDs supported by this driverh]h*List of WMI GUIDs supported by this driver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhKZhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhKZhjubj)}(hJ``no_notify_data`` Driver supports WMI events which provide no event data h](j)}(h``no_notify_data``h]h)}(hj&h]hno_notify_data}(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.hhK[hj 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&]uh1hhj;hK[hj<ubah}(h]h ]h"]h$]h&]uh1j6hj ubeh}(h]h ]h"]h$]h&]uh1jhj;hK[hjubj)}(h;``no_singleton`` Driver can be instantiated multiple times h](j)}(h``no_singleton``h]h)}(hj_h]h no_singleton}(hjahhhNhNubah}(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.hhK\hjYubj7)}(hhh]h)}(h)Driver can be instantiated multiple timesh]h)Driver can be instantiated multiple times}(hjxhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjthK\hjuubah}(h]h ]h"]h$]h&]uh1j6hjYubeh}(h]h ]h"]h$]h&]uh1jhjthK\hjubj)}(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.hhK_hj ubj7)}(hhh]h)}(hCallback for device shutdownh]hCallback for device shutdown}(hj# hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj hK_hj ubah}(h]h ]h"]h$]h&]uh1j6hj ubeh}(h]h ]h"]h$]h&]uh1jhj hK_hjubj)}(h:``notify`` Callback for receiving WMI events (deprecated) h](j)}(h ``notify``h]h)}(hjC h]hnotify}(hjE hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjA ubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK`hj= ubj7)}(hhh]h)}(h.Callback for receiving WMI events (deprecated)h]h.Callback for receiving WMI events (deprecated)}(hj\ hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjX hK`hjY ubah}(h]h ]h"]h$]h&]uh1j6hj= ubeh}(h]h ]h"]h$]h&]uh1jhjX hK`hjubj)}(h0``notify_new`` Callback for receiving WMI eventsh](j)}(h``notify_new``h]h)}(hj| h]h notify_new}(hj~ hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjz ubah}(h]h ]h"]h$]h&]uh1jhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhK`hjv ubj7)}(hhh]h)}(h!Callback for receiving WMI eventsh]h!Callback for receiving WMI events}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKahj ubah}(h]h ]h"]h$]h&]uh1j6hjv ubeh}(h]h ]h"]h$]h&]uh1jhj hK`hjubeh}(h]h ]h"]h$]h&]uh1jhjcubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubh)}(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.hhKdhhhhubh)}(hThis represents WMI drivers which handle WMI devices. The data inside the buffer passed to the **notify_new** callback is guaranteed to be aligned on a 8-byte boundary.h](h_This represents WMI drivers which handle WMI devices. The data inside the buffer passed to the }(hj hhhNhNubj)}(h**notify_new**h]h notify_new}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh; callback is guaranteed to be aligned on a 8-byte boundary.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKahhhhubj&)}(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)}(hj h]h to_wmi_driver}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj hhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKsubah}(h]h ]h"]h$]h&]hhjuh1jAjjhj hhhj& hKsubah}(h]j ah ](jjeh"]h$]h&]jj)jhuh1j;hj& hKshj hhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhj hhhj& hKsubeh}(h]h ](hmacroeh"]h$]h&]jhjj? jj? jjjuh1j6hhhhhNhNubh)}(h``to_wmi_driver (drv)``h]h)}(hjE h]hto_wmi_driver (drv)}(hjG hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjC ubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKuhhhhubjb)}(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}(hj_ hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKshj[ ubah}(h]h ]h"]h$]h&]uh1jahjm hKshhhhubj)}(hm**Parameters** ``drv`` driver struct **Description** Cast a struct device_driver to a struct wmi_driver.h](h)}(h**Parameters**h]j)}(hjz h]h Parameters}(hj| hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjx ubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKwhjt ubj)}(hhh]j)}(h``drv`` driver struct h](j)}(h``drv``h]h)}(hj h]hdrv}(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.hhKthj ubj7)}(hhh]h)}(h driver structh]h driver struct}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj hKthj ubah}(h]h ]h"]h$]h&]uh1j6hj ubeh}(h]h ]h"]h$]h&]uh1jhj hKthj ubah}(h]h ]h"]h$]h&]uh1jhjt 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.hhKvhjt ubh)}(h3Cast a struct device_driver to a struct wmi_driver.h]h3Cast a struct device_driver to a struct wmi_driver.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKuhjt ubeh}(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)}(hj h]hwmi_driver_register}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj hhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKubah}(h]h ]h"]h$]h&]hhjuh1jAjjhj hhhj0 hKubah}(h]j ah ](jjeh"]h$]h&]jj)jhuh1j;hj0 hKhj hhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhj hhhj0 hKubeh}(h]h ](hmacroeh"]h$]h&]jhjjI jjI jjjuh1j6hhhhhNhNubh)}(h ``wmi_driver_register (driver)``h]h)}(hjO h]hwmi_driver_register (driver)}(hjQ hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjM ubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhhhhubjb)}(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}(hji hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhje ubah}(h]h ]h"]h$]h&]uh1jahjw hKhhhhubj)}(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)}(hj h]h Parameters}(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.hhKhj~ ubj)}(hhh]j)}(h``driver`` wmi_driver struct h](j)}(h ``driver``h]h)}(hj h]hdriver}(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.hhKhj ubj7)}(hhh]h)}(hwmi_driver structh]hwmi_driver struct}(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)}(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.hhKhj~ ubh)}(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.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhj~ ubeh}(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)}(hj h]hmodule_wmi_driver}(hj' hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj# ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj hhhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKubah}(h]h ]h"]h$]h&]hhjuh1jAjjhj hhhj: hKubah}(h]j ah ](jjeh"]h$]h&]jj)jhuh1j;hj: hKhj hhubj)}(hhh]h}(h]h ]h"]h$]h&]uh1jhj hhhj: hKubeh}(h]h ](hmacroeh"]h$]h&]jhjjS jjS jjjuh1j6hhhhhNhNubh)}(h$``module_wmi_driver (__wmi_driver)``h]h)}(hjY h]h module_wmi_driver (__wmi_driver)}(hj[ hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjW ubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhhhhubjb)}(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}(hjs hhhNhNubah}(h]h ]h"]h$]h&]uh1hhR/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:16: ./include/linux/wmi.hhKhjo ubah}(h]h ]h"]h$]h&]uh1jahj hKhhhhubj)}(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}(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.hhKhj 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.hhKhj ubj7)}(hhh]h)}(hwmi_driver structh]hwmi_driver struct}(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)}(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.hhKhj 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.hhKhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2 wmi_string_to_utf8s (C function)c.wmi_string_to_utf8shNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hRssize_t wmi_string_to_utf8s (const struct wmi_string *str, u8 *dst, size_t length)h]jB)}(hQssize_t wmi_string_to_utf8s(const struct wmi_string *str, u8 *dst, size_t length)h](h)}(hhh]jq)}(hssize_th]hssize_t}(hj0 hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj- ubah}(h]h ]h"]h$]h&] refdomainhreftype identifier reftargetj2 modnameN classnameN c:parent_keysphinx.domains.c LookupKey)}data]jK ASTIdentifier)}jF wmi_string_to_utf8ssbc.wmi_string_to_utf8sasbuh1hhj) hhh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKubjZ)}(h h]h }(hjZ hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj) hhhjY hKubjk)}(hwmi_string_to_utf8sh]jq)}(hjV h]hwmi_string_to_utf8s}(hjl hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjh ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj) hhhjY hKubhdesc_parameterlist)}(h6(const struct wmi_string *str, u8 *dst, size_t length)h](hdesc_parameter)}(hconst struct wmi_string *strh](jH)}(hconsth]hconst}(hj hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubjH)}(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_stringh]h wmi_string}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj modnameN classnameNjJ jM )}jP ]jT c.wmi_string_to_utf8sasbuh1hhj ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubhdesc_sig_punctuation)}(h*h]h*}(hj hhhNhNubah}(h]h ]pah"]h$]h&]uh1j hj ubjq)}(hstrh]hstr}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj ubj )}(hu8 *dsth](h)}(hhh]jq)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj modnameN classnameNjJ jM )}jP ]jT c.wmi_string_to_utf8sasbuh1hhjubjZ)}(h h]h }(hj<hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj )}(hj h]h*}(hjJhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjubjq)}(hdsth]hdst}(hjWhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj ubj )}(h size_t lengthh](h)}(hhh]jq)}(hsize_th]hsize_t}(hjshhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjpubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjumodnameN classnameNjJ jM )}jP ]jT c.wmi_string_to_utf8sasbuh1hhjlubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjlubjq)}(hlengthh]hlength}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjlubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj ubeh}(h]h ]h"]h$]h&]hhuh1j hj) hhhjY hKubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj% hhhjY hKubah}(h]j ah ](jjeh"]h$]h&]jj)jhuh1j;hjY hKhj" hhubj)}(hhh]h)}(h(Convert a WMI string into a UTF8 string.h]h(Convert a WMI string into a UTF8 string.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhjhhubah}(h]h ]h"]h$]h&]uh1jhj" hhhjY hKubeh}(h]h ](hfunctioneh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubj)}(hX3**Parameters** ``const struct wmi_string *str`` WMI string representation ``u8 *dst`` Buffer to fill with UTF8 characters ``size_t length`` Length of the destination buffer **Description** Convert as WMI string into a standard UTF8 string. The conversion will stop once a NUL character is detected or when the buffer is full. Any invalid UTF16 characters will be ignored. The resulting UTF8 string will always be NUL-terminated when this function returns successfully. **Return** Length of the resulting UTF8 string or negative errno code on failure.h](h)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhjubj)}(hhh](j)}(h;``const struct wmi_string *str`` WMI string representation h](j)}(h ``const struct wmi_string *str``h]h)}(hj h]hconst struct wmi_string *str}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhjubj7)}(hhh]h)}(hWMI string representationh]hWMI string representation}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhKhj ubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubj)}(h0``u8 *dst`` Buffer to fill with UTF8 characters h](j)}(h ``u8 *dst``h]h)}(hjCh]hu8 *dst}(hjEhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjAubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhj=ubj7)}(hhh]h)}(h#Buffer to fill with UTF8 charactersh]h#Buffer to fill with UTF8 characters}(hj\hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjXhKhjYubah}(h]h ]h"]h$]h&]uh1j6hj=ubeh}(h]h ]h"]h$]h&]uh1jhjXhKhjubj)}(h3``size_t length`` Length of the destination buffer h](j)}(h``size_t length``h]h)}(hj|h]h size_t length}(hj~hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjzubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhjvubj7)}(hhh]h)}(h Length of the destination bufferh]h Length of the destination buffer}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhKhjubah}(h]h ]h"]h$]h&]uh1j6hjvubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubeh}(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&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhjubh)}(hXConvert as WMI string into a standard UTF8 string. The conversion will stop once a NUL character is detected or when the buffer is full. Any invalid UTF16 characters will be ignored. The resulting UTF8 string will always be NUL-terminated when this function returns successfully.h]hXConvert as WMI string into a standard UTF8 string. The conversion will stop once a NUL character is detected or when the buffer is full. Any invalid UTF16 characters will be ignored. The resulting UTF8 string will always be NUL-terminated when this function returns successfully.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhjubh)}(h **Return**h]j)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhjubh)}(hFLength of the resulting UTF8 string or negative errno code on failure.h]hFLength of the resulting UTF8 string or negative errno code on failure.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chK hjubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2"wmi_string_from_utf8s (C function)c.wmi_string_from_utf8shNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hjssize_t wmi_string_from_utf8s (struct wmi_string *str, size_t max_chars, const u8 *src, size_t src_length)h]jB)}(hissize_t wmi_string_from_utf8s(struct wmi_string *str, size_t max_chars, const u8 *src, size_t src_length)h](h)}(hhh]jq)}(hssize_th]hssize_t}(hj&hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj#ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj(modnameN classnameNjJ jM )}jP ]jS )}jF wmi_string_from_utf8ssbc.wmi_string_from_utf8sasbuh1hhjhhh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chK8ubjZ)}(h h]h }(hjHhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjGhK8ubjk)}(hwmi_string_from_utf8sh]jq)}(hjDh]hwmi_string_from_utf8s}(hjZhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjVubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjGhK8ubj )}(hL(struct wmi_string *str, size_t max_chars, const u8 *src, size_t src_length)h](j )}(hstruct wmi_string *strh](jH)}(hjKh]hstruct}(hjuhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjqubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjqubh)}(hhh]jq)}(h wmi_stringh]h wmi_string}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jBc.wmi_string_from_utf8sasbuh1hhjqubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjqubj )}(hj h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjqubjq)}(hstrh]hstr}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjqubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjmubj )}(hsize_t max_charsh](h)}(hhh]jq)}(hsize_th]hsize_t}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jBc.wmi_string_from_utf8sasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjq)}(h max_charsh]h max_chars}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjmubj )}(h const u8 *srch](jH)}(hj h]hconst}(hj-hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj)ubjZ)}(h h]h }(hj:hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj)ubh)}(hhh]jq)}(hu8h]hu8}(hjKhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjHubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjMmodnameN classnameNjJ jM )}jP ]jBc.wmi_string_from_utf8sasbuh1hhj)ubjZ)}(h h]h }(hjihhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj)ubj )}(hj h]h*}(hjwhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj)ubjq)}(hsrch]hsrc}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj)ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjmubj )}(hsize_t src_lengthh](h)}(hhh]jq)}(hsize_th]hsize_t}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jBc.wmi_string_from_utf8sasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjq)}(h src_lengthh]h src_length}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjmubeh}(h]h ]h"]h$]h&]hhuh1j hjhhhjGhK8ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjGhK8ubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjGhK8hjhhubj)}(hhh]h)}(h(Convert a UTF8 string into a WMI string.h]h(Convert a UTF8 string into a WMI string.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chK8hjhhubah}(h]h ]h"]h$]h&]uh1jhjhhhjGhK8ubeh}(h]h ](hfunctioneh"]h$]h&]jhjjjjjjjuh1j6hhhhhNhNubj)}(hX**Parameters** ``struct wmi_string *str`` WMI string representation ``size_t max_chars`` Maximum number of UTF16 code points to store inside the WMI string ``const u8 *src`` UTF8 string to convert ``size_t src_length`` Length of the source string without any trailing NUL-characters **Description** Convert a UTF8 string into a WMI string. The conversion will stop when the WMI string is full. The resulting WMI string will always be NUL-terminated and have its length field set to and appropriate value when this function returns successfully. **Return** Number of UTF16 code points inside the WMI string or negative errno code on failure.h](h)}(h**Parameters**h]j)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKhjubh)}(hConvert a UTF8 string into a WMI string. The conversion will stop when the WMI string is full. The resulting WMI string will always be NUL-terminated and have its length field set to and appropriate value when this function returns successfully.h]hConvert a UTF8 string into a WMI string. The conversion will stop when the WMI string is full. The resulting WMI string will always be NUL-terminated and have its length field set to and appropriate value when this function returns successfully.}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chK=hjubh)}(h **Return**h]j)}(hjDh]hReturn}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjBubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKAhjubh)}(hTNumber of UTF16 code points inside the WMI string or negative errno code on failure.h]hTNumber of UTF16 code points inside the WMI string or negative errno code on failure.}(hjZhhhNhNubah}(h]h ]h"]h$]h&]uh1hh\/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:19: ./drivers/platform/wmi/string.chKBhjubeh}(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}(hjhhhNhNubah}(h]h ]ktah"]h$]h&]uh1jhjhhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chKubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhKubjk)}(hwmi_instance_counth]jq)}(hwmi_instance_counth]hwmi_instance_count}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjhKubj )}(h(const char *guid_string)h]j )}(hconst char *guid_stringh](jH)}(hj h]hconst}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj)}(hcharh]hchar}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj )}(hj h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjubjq)}(h guid_stringh]h guid_string}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjubah}(h]h ]h"]h$]h&]hhuh1j hjhhhjhKubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhKubah}(h]j|ah ](jjeh"]h$]h&]jj)jhuh1j;hjhKhj~hhubj)}(hhh]h)}(h"Get number of WMI object instancesh]h"Get number of WMI object instances}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chKhj4hhubah}(h]h ]h"]h$]h&]uh1jhj~hhhjhKubeh}(h]h ](hfunctioneh"]h$]h&]jhjjOjjOjjjuh1j6hhhhhNhNubj)}(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)}(hjYh]h Parameters}(hj[hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjWubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chKhjSubj)}(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)}(hjxh]hconst char *guid_string}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjvubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chKhjrubj7)}(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&]uh1hhjhKhjubah}(h]h ]h"]h$]h&]uh1j6hjrubeh}(h]h ]h"]h$]h&]uh1jhjhKhjoubah}(h]h ]h"]h$]h&]uh1jhjSubh)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chKhjSubh)}(h'Get the number of WMI object instances.h]h'Get the number of WMI object instances.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chKhjSubh)}(h **Return**h]j)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chKhjSubh)}(h6Number of WMI object instances or negative error code.h]h6Number of WMI object instances or negative error code.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chKhjSubeh}(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&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj$modnameN classnameNjJ jM )}jP ]jS )}jF wmidev_instance_countsbc.wmidev_instance_countasbuh1hhjhhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMubjZ)}(h h]h }(hjDhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjChMubjk)}(hwmidev_instance_counth]jq)}(hj@h]hwmidev_instance_count}(hjVhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjRubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjChMubj )}(h(struct wmi_device *wdev)h]j )}(hstruct wmi_device *wdevh](jH)}(hjKh]hstruct}(hjqhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjmubjZ)}(h h]h }(hj~hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjmubh)}(hhh]jq)}(h wmi_deviceh]h wmi_device}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]j>c.wmidev_instance_countasbuh1hhjmubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjmubj )}(hj h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjmubjq)}(hwdevh]hwdev}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjmubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjiubah}(h]h ]h"]h$]h&]hhuh1j hjhhhjChMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjChMubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjChMhjhhubj)}(hhh]h)}(h"Get number of WMI object instancesh]h"Get number of WMI object instances}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjhhubah}(h]h ]h"]h$]h&]uh1jhjhhhjChMubeh}(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)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hjubj)}(hhh]j)}(h;``struct wmi_device *wdev`` A wmi bus device from a driver h](j)}(h``struct wmi_device *wdev``h]h)}(hj3h]hstruct wmi_device *wdev}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj1ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj-ubj7)}(hhh]h)}(hA wmi bus device from a driverh]hA wmi bus device from a driver}(hjLhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjHhMhjIubah}(h]h ]h"]h$]h&]uh1j6hj-ubeh}(h]h ]h"]h$]h&]uh1jhjHhMhj*ubah}(h]h ]h"]h$]h&]uh1jhjubh)}(h**Description**h]j)}(hjnh]h Description}(hjphhhNhNubah}(h]h ]h"]h$]h&]uh1jhjlubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hjubh)}(h'Get the number of WMI object instances.h]h'Get the number of WMI object instances.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjubh)}(h **Return**h]j)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hjubh)}(hNumber of WMI object instances.h]hNumber of WMI object instances.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hjubeh}(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}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jS )}jF wmi_evaluate_methodsbc.wmi_evaluate_methodasbuh1hhjhhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhjhMubjk)}(hwmi_evaluate_methodh]jq)}(hjh]hwmi_evaluate_method}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhjhMubj )}(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)}(hj h]hconst}(hj,hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj(ubjZ)}(h h]h }(hj9hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj(ubj)}(hcharh]hchar}(hjGhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj(ubjZ)}(h h]h }(hjUhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj(ubj )}(hj h]h*}(hjchhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj(ubjq)}(h guid_stringh]h guid_string}(hjphhhNhNubah}(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&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jc.wmi_evaluate_methodasbuh1hhjubjZ)}(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 hj$ubj )}(h u32 method_idh](h)}(hhh]jq)}(hu32h]hu32}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jc.wmi_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 hj$ubj )}(hconst struct acpi_buffer *inh](jH)}(hj h]hconst}(hjhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hj&hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjH)}(hjKh]hstruct}(hj4hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjubjZ)}(h h]h }(hjAhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hjRhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjOubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjTmodnameN classnameNjJ jM )}jP ]jc.wmi_evaluate_methodasbuh1hhjubjZ)}(h h]h }(hjphhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj )}(hj h]h*}(hj~hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j 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}(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&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jc.wmi_evaluate_methodasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj )}(hj h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjubjq)}(houth]hout}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj$ubeh}(h]h ]h"]h$]h&]hhuh1j hjhhhjhMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhjhMubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hjhMhjhhubj)}(hhh]h)}(h"Evaluate a WMI method (deprecated)h]h"Evaluate a WMI method (deprecated)}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj"hhubah}(h]h ]h"]h$]h&]uh1jhjhhhjhMubeh}(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 ``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)}(hjGh]h Parameters}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjEubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjAubj)}(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)}(hjfh]hconst char *guid_string}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjdubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj`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}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj{hMhj|ubah}(h]h ]h"]h$]h&]uh1j6hj`ubeh}(h]h ]h"]h$]h&]uh1jhj{hMhj]ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.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&]uh1jhjhMhj]ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjubj7)}(hhh]h)}(hMethod ID to callh]hMethod ID to call}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhMhjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhMhj]ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj ubj7)}(hhh]h)}(h5Mandatory buffer containing input for the method callh]h5Mandatory buffer containing input for the method call}(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)}(hF``struct acpi_buffer *out`` Empty buffer to return the method results h](j)}(h``struct acpi_buffer *out``h]h)}(hjJh]hstruct acpi_buffer *out}(hjLhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjHubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjDubj7)}(hhh]h)}(h)Empty buffer to return the method resultsh]h)Empty buffer to return the method results}(hjchhhNhNubah}(h]h ]h"]h$]h&]uh1hhj_hMhj`ubah}(h]h ]h"]h$]h&]uh1j6hjDubeh}(h]h ]h"]h$]h&]uh1jhj_hMhj]ubeh}(h]h ]h"]h$]h&]uh1jhjAubh)}(h**Description**h]j)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjAubh)}(h6Call an ACPI-WMI method, the caller must free **out**.h](h.Call an ACPI-WMI method, the caller must free }(hjhhhNhNubj)}(h**out**h]hout}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjAubh)}(h **Return**h]j)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjAubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjAubeh}(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&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jS )}jF wmidev_evaluate_methodsbc.wmidev_evaluate_methodasbuh1hhjhhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM4ubjZ)}(h h]h }(hj(hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjhhhj'hM4ubjk)}(hwmidev_evaluate_methodh]jq)}(hj$h]hwmidev_evaluate_method}(hj:hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj6ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjhhhj'hM4ubj )}(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}(hjUhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjQubjZ)}(h h]h }(hjbhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjQubh)}(hhh]jq)}(h wmi_deviceh]h wmi_device}(hjshhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjpubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjumodnameN classnameNjJ jM )}jP ]j"c.wmidev_evaluate_methodasbuh1hhjQubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjQubj )}(hj h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjQubjq)}(hwdevh]hwdev}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjQubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjMubj )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]j"c.wmidev_evaluate_methodasbuh1hhjubjZ)}(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 hjMubj )}(h u32 method_idh](h)}(hhh]jq)}(hu32h]hu32}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]j"c.wmidev_evaluate_methodasbuh1hhj ubjZ)}(h h]h }(hj.hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj ubjq)}(h method_idh]h method_id}(hj<hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjMubj )}(hconst struct acpi_buffer *inh](jH)}(hj h]hconst}(hjUhhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjQubjZ)}(h h]h }(hjbhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjQubjH)}(hjKh]hstruct}(hjphhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjQubjZ)}(h h]h }(hj}hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjQubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]j"c.wmidev_evaluate_methodasbuh1hhjQubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjQubj )}(hj h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjQubjq)}(hinh]hin}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjQubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjMubj )}(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&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]j"c.wmidev_evaluate_methodasbuh1hhjubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubj )}(hj h]h*}(hj*hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjubjq)}(houth]hout}(hj7hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjMubeh}(h]h ]h"]h$]h&]hhuh1j hjhhhj'hM4ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjhhhj'hM4ubah}(h]jah ](jjeh"]h$]h&]jj)jhuh1j;hj'hM4hjhhubj)}(hhh]h)}(h"Evaluate a WMI method (deprecated)h]h"Evaluate a WMI method (deprecated)}(hjahhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM4hj^hhubah}(h]h ]h"]h$]h&]uh1jhjhhhj'hM4ubeh}(h]h ](hfunctioneh"]h$]h&]jhjjyjjyjjjuh1j6hhhhhNhNubj)}(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)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM8hj}ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM5hjubj7)}(hhh]h)}(hA wmi bus device from a driverh]hA wmi bus device from a driver}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhM5hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhM5hjubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM6hjubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhM6hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhM6hjubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM7hjubj7)}(hhh]h)}(hMethod ID to callh]hMethod ID to call}(hj-hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj)hM7hj*ubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhj)hM7hjubj)}(hW``const struct acpi_buffer *in`` Mandatory buffer containing input for the method call h](j)}(h ``const struct acpi_buffer *in``h]h)}(hjMh]hconst struct acpi_buffer *in}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjKubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM8hjGubj7)}(hhh]h)}(h5Mandatory buffer containing input for the method callh]h5Mandatory buffer containing input for the method call}(hjfhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjbhM8hjcubah}(h]h ]h"]h$]h&]uh1j6hjGubeh}(h]h ]h"]h$]h&]uh1jhjbhM8hjubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM9hjubj7)}(hhh]h)}(h)Empty buffer to return the method resultsh]h)Empty buffer to return the method results}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhM9hjubah}(h]h ]h"]h$]h&]uh1j6hjubeh}(h]h ]h"]h$]h&]uh1jhjhM9hjubeh}(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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM;hj}ubh)}(h6Call an ACPI-WMI method, the caller must free **out**.h](h.Call an ACPI-WMI method, the caller must free }(hjhhhNhNubj)}(h**out**h]hout}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM:hj}ubh)}(h **Return**h]j)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM<hj}ubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM=hj}ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2!wmidev_invoke_method (C function)c.wmidev_invoke_methodhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hint wmidev_invoke_method (struct wmi_device *wdev, u8 instance, u32 method_id, const struct wmi_buffer *in, struct wmi_buffer *out)h]jB)}(hint wmidev_invoke_method(struct wmi_device *wdev, u8 instance, u32 method_id, const struct wmi_buffer *in, struct wmi_buffer *out)h](j)}(hinth]hint}(hj?hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj;hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMoubjZ)}(h h]h }(hjNhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj;hhhjMhMoubjk)}(hwmidev_invoke_methodh]jq)}(hwmidev_invoke_methodh]hwmidev_invoke_method}(hj`hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj\ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj;hhhjMhMoubj )}(hj(struct wmi_device *wdev, u8 instance, u32 method_id, const struct wmi_buffer *in, struct wmi_buffer *out)h](j )}(hstruct wmi_device *wdevh](jH)}(hjKh]hstruct}(hj|hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjxubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjxubh)}(hhh]jq)}(h wmi_deviceh]h wmi_device}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jS )}jF jbsbc.wmidev_invoke_methodasbuh1hhjxubjZ)}(h h]h }(hjhhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjxubj )}(hj h]h*}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjxubjq)}(hwdevh]hwdev}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjxubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjtubj )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hjhhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjmodnameN classnameNjJ jM )}jP ]jc.wmidev_invoke_methodasbuh1hhjubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjubjq)}(hinstanceh]hinstance}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjtubj )}(h u32 method_idh](h)}(hhh]jq)}(hu32h]hu32}(hj9 hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj6 ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj; modnameN classnameNjJ jM )}jP ]jc.wmidev_invoke_methodasbuh1hhj2 ubjZ)}(h h]h }(hjW hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj2 ubjq)}(h method_idh]h method_id}(hje hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj2 ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjtubj )}(hconst struct wmi_buffer *inh](jH)}(hj h]hconst}(hj~ hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjz ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjz ubjH)}(hjKh]hstruct}(hj hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjz ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjz ubh)}(hhh]jq)}(h wmi_bufferh]h wmi_buffer}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj modnameN classnameNjJ jM )}jP ]jc.wmidev_invoke_methodasbuh1hhjz ubjZ)}(h h]h }(hj hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjz ubj )}(hj h]h*}(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjz ubjq)}(hinh]hin}(hj hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjz ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjtubj )}(hstruct wmi_buffer *outh](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_bufferh]h wmi_buffer}(hj'!hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj$!ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj)!modnameN classnameNjJ jM )}jP ]jc.wmidev_invoke_methodasbuh1hhj!ubjZ)}(h h]h }(hjE!hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj!ubj )}(hj h]h*}(hjS!hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj!ubjq)}(houth]hout}(hj`!hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj!ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjtubeh}(h]h ]h"]h$]h&]hhuh1j hj;hhhjMhMoubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj7hhhjMhMoubah}(h]j2ah ](jjeh"]h$]h&]jj)jhuh1j;hjMhMohj4hhubj)}(hhh]h)}(hInvoke a WMI methodh]hInvoke a WMI method}(hj!hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMohj!hhubah}(h]h ]h"]h$]h&]uh1jhj4hhhjMhMoubeh}(h]h ](hfunctioneh"]h$]h&]jhjj!jj!jjjuh1j6hhhhhNhNubj)}(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 wmi_buffer *in`` Mandatory WMI buffer containing input for the method call ``struct wmi_buffer *out`` Optional WMI buffer to return the method results **Description** Invoke a WMI method, the caller must free the resulting data inside **out**. Said data is guaranteed to be aligned on a 8-byte boundary. **Return** 0 on success or negative error code on failure.h](h)}(h**Parameters**h]j)}(hj!h]h Parameters}(hj!hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj!ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMshj!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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMphj!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!hMphj!ubah}(h]h ]h"]h$]h&]uh1j6hj!ubeh}(h]h ]h"]h$]h&]uh1jhj!hMphj!ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMqhj!ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"hMqhj"ubah}(h]h ]h"]h$]h&]uh1j6hj!ubeh}(h]h ]h"]h$]h&]uh1jhj"hMqhj!ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMrhj7"ubj7)}(hhh]h)}(hMethod ID to callh]hMethod ID to call}(hjV"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjR"hMrhjS"ubah}(h]h ]h"]h$]h&]uh1j6hj7"ubeh}(h]h ]h"]h$]h&]uh1jhjR"hMrhj!ubj)}(hZ``const struct wmi_buffer *in`` Mandatory WMI buffer containing input for the method call h](j)}(h``const struct wmi_buffer *in``h]h)}(hjv"h]hconst struct wmi_buffer *in}(hjx"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjt"ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMshjp"ubj7)}(hhh]h)}(h9Mandatory WMI buffer containing input for the method callh]h9Mandatory WMI buffer containing input for the method call}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"hMshj"ubah}(h]h ]h"]h$]h&]uh1j6hjp"ubeh}(h]h ]h"]h$]h&]uh1jhj"hMshj!ubj)}(hL``struct wmi_buffer *out`` Optional WMI buffer to return the method results h](j)}(h``struct wmi_buffer *out``h]h)}(hj"h]hstruct wmi_buffer *out}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMthj"ubj7)}(hhh]h)}(h0Optional WMI buffer to return the method resultsh]h0Optional WMI buffer to return the method results}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj"hMthj"ubah}(h]h ]h"]h$]h&]uh1j6hj"ubeh}(h]h ]h"]h$]h&]uh1jhj"hMthj!ubeh}(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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMvhj!ubh)}(hInvoke a WMI method, the caller must free the resulting data inside **out**. Said data is guaranteed to be aligned on a 8-byte boundary.h](hDInvoke a WMI method, the caller must free the resulting data inside }(hj#hhhNhNubj)}(h**out**h]hout}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj#ubh=. Said data is guaranteed to be aligned on a 8-byte boundary.}(hj#hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMuhj!ubh)}(h **Return**h]j)}(hj##h]hReturn}(hj%#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj!#ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMxhj!ubh)}(h/0 on success or negative error code on failure.h]h/0 on success or negative error code on failure.}(hj9#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMyhj!ubeh}(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}(hjk#hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjh#ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjm#modnameN classnameNjJ jM )}jP ]jS )}jF wmi_query_blocksbc.wmi_query_blockasbuh1hhjd#hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMubjZ)}(h h]h }(hj#hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjd#hhhj#hMubjk)}(hwmi_query_blockh]jq)}(hj#h]hwmi_query_block}(hj#hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj#ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjd#hhhj#hMubj )}(h?(const char *guid_string, u8 instance, struct acpi_buffer *out)h](j )}(hconst char *guid_stringh](jH)}(hj 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 ]jah"]h$]h&]uh1jhj#ubjZ)}(h h]h }(hj#hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj#ubj )}(hj h]h*}(hj#hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j 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}(hj$hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj$ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj$modnameN classnameNjJ jM )}jP ]j#c.wmi_query_blockasbuh1hhj$ubjZ)}(h h]h }(hj8$hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj$ubjq)}(hinstanceh]hinstance}(hjF$hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj$ubeh}(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 }(hjl$hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj[$ubh)}(hhh]jq)}(h acpi_bufferh]h acpi_buffer}(hj}$hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjz$ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj$modnameN classnameNjJ jM )}jP ]j#c.wmi_query_blockasbuh1hhj[$ubjZ)}(h h]h }(hj$hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj[$ubj )}(hj h]h*}(hj$hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj[$ubjq)}(houth]hout}(hj$hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj[$ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj#ubeh}(h]h ]h"]h$]h&]hhuh1j hjd#hhhj#hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj`#hhhj#hMubah}(h]j[#ah ](jjeh"]h$]h&]jj)jhuh1j;hj#hMhj]#hhubj)}(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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj$hhubah}(h]h ]h"]h$]h&]uh1jhj]#hhhj#hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjj$jj$jjjuh1j6hhhhhNhNubj)}(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}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj%ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj$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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj%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&]uh1hhj6%hMhj7%ubah}(h]h ]h"]h$]h&]uh1j6hj%ubeh}(h]h ]h"]h$]h&]uh1jhj6%hMhj%ubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hjZ%h]h u8 instance}(hj\%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjX%ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjT%ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hjs%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjo%hMhjp%ubah}(h]h ]h"]h$]h&]uh1j6hjT%ubeh}(h]h ]h"]h$]h&]uh1jhjo%hMhj%ubj)}(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)}(hj%h]hstruct acpi_buffer *out}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj%ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj%ubj7)}(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&]uh1hhj%hMhj%ubah}(h]h ]h"]h$]h&]uh1j6hj%ubeh}(h]h ]h"]h$]h&]uh1jhj%hMhj%ubeh}(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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj$ubh)}(h5Query a ACPI-WMI block, the caller must free **out**.h](h-Query a ACPI-WMI block, 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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj$ubh)}(h **Return**h]j)}(hj&h]hReturn}(hj &hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj&ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj$ubh)}(h4ACPI object containing the content of the WMI block.h]h4ACPI object containing the content of the WMI block.}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj$ubeh}(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}(hjL&hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjH&hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMubjZ)}(h h]h }(hj[&hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjH&hhhjZ&hMubh)}(hhh]jq)}(h acpi_objecth]h acpi_object}(hjl&hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphji&ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjn&modnameN classnameNjJ jM )}jP ]jS )}jF wmidev_block_querysbc.wmidev_block_queryasbuh1hhjH&hhhjZ&hMubjZ)}(h h]h }(hj&hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjH&hhhjZ&hMubj )}(hj h]h*}(hj&hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjH&hhhjZ&hMubjk)}(hwmidev_block_queryh]jq)}(hj&h]hwmidev_block_query}(hj&hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj&ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhjH&hhhjZ&hMubj )}(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 }(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&] refdomainhreftypejF reftargetj&modnameN classnameNjJ jM )}jP ]j&c.wmidev_block_queryasbuh1hhj&ubjZ)}(h h]h }(hj'hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj&ubj )}(hj h]h*}(hj'hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj&ubjq)}(hwdevh]hwdev}(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}(hj:'hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj7'ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj<'modnameN classnameNjJ jM )}jP ]j&c.wmidev_block_queryasbuh1hhj3'ubjZ)}(h h]h }(hjX'hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj3'ubjq)}(hinstanceh]hinstance}(hjf'hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj3'ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj&ubeh}(h]h ]h"]h$]h&]hhuh1j hjH&hhhjZ&hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjD&hhhjZ&hMubah}(h]j?&ah ](jjeh"]h$]h&]jj)jhuh1j;hjZ&hMhjA&hhubj)}(hhh]h)}(h,Return contents of a WMI block (deprectated)h]h,Return contents of a WMI block (deprectated)}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj'hhubah}(h]h ]h"]h$]h&]uh1jhjA&hhhjZ&hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjj'jj'jjjuh1j6hhhhhNhNubj)}(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)}(hj'h]h Parameters}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj'ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.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'ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj(ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(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&]uh1jhj'ubh)}(h**Description**h]j)}(hjE(h]h Description}(hjG(hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjC(ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.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.}(hj[(hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj'ubh)}(h **Return**h]j)}(hjl(h]hReturn}(hjn(hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjj(ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj'ubh)}(h4ACPI object containing the content of the WMI block.h]h4ACPI object containing the content of the WMI block.}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj'ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmidev_query_block (C function)c.wmidev_query_blockhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hUint wmidev_query_block (struct wmi_device *wdev, u8 instance, struct wmi_buffer *out)h]jB)}(hTint wmidev_query_block(struct wmi_device *wdev, u8 instance, struct wmi_buffer *out)h](j)}(hinth]hint}(hj(hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj(hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM ubjZ)}(h h]h }(hj(hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj(hhhj(hM ubjk)}(hwmidev_query_blockh]jq)}(hwmidev_query_blockh]hwmidev_query_block}(hj(hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj(ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj(hhhj(hM ubj )}(h>(struct wmi_device *wdev, u8 instance, struct wmi_buffer *out)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&] refdomainhreftypejF reftargetj)modnameN classnameNjJ jM )}jP ]jS )}jF j(sbc.wmidev_query_blockasbuh1hhj(ubjZ)}(h h]h }(hj,)hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj(ubj )}(hj h]h*}(hj:)hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj(ubjq)}(hwdevh]hwdev}(hjG)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}(hjc)hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj`)ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetje)modnameN classnameNjJ jM )}jP ]j()c.wmidev_query_blockasbuh1hhj\)ubjZ)}(h h]h }(hj)hhhNhNubah}(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 )}(hstruct wmi_buffer *outh](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_bufferh]h wmi_buffer}(hj)hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj)ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj)modnameN classnameNjJ jM )}jP ]j()c.wmidev_query_blockasbuh1hhj)ubjZ)}(h h]h }(hj)hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj)ubj )}(hj h]h*}(hj)hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj)ubjq)}(houth]hout}(hj)hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj)ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj(ubeh}(h]h ]h"]h$]h&]hhuh1j 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#Return contents of a WMI data blockh]h#Return contents of a WMI data block}(hj)*hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hj&*hhubah}(h]h ]h"]h$]h&]uh1jhj(hhhj(hM ubeh}(h]h ](hfunctioneh"]h$]h&]jhjjA*jjA*jjjuh1j6hhhhhNhNubj)}(hX|**Parameters** ``struct wmi_device *wdev`` A wmi bus device from a driver ``u8 instance`` Instance index ``struct wmi_buffer *out`` WMI buffer to fill **Description** Query a WMI data block, the caller must free the resulting data inside **out**. Said data is guaranteed to be aligned on a 8-byte boundary. **Return** 0 on success or a negative error code on failure.h](h)}(h**Parameters**h]j)}(hjK*h]h Parameters}(hjM*hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjI*ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjE*ubj)}(hhh](j)}(h;``struct wmi_device *wdev`` A wmi bus device from a driver h](j)}(h``struct wmi_device *wdev``h]h)}(hjj*h]hstruct wmi_device *wdev}(hjl*hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjh*ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hjd*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*hM hj*ubah}(h]h ]h"]h$]h&]uh1j6hjd*ubeh}(h]h ]h"]h$]h&]uh1jhj*hM hja*ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hj*ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(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 hja*ubj)}(h.``struct wmi_buffer *out`` WMI buffer to fill h](j)}(h``struct wmi_buffer *out``h]h)}(hj*h]hstruct wmi_buffer *out}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj*ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj*ubj7)}(hhh]h)}(hWMI buffer to fillh]hWMI buffer to fill}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj*hMhj*ubah}(h]h ]h"]h$]h&]uh1j6hj*ubeh}(h]h ]h"]h$]h&]uh1jhj*hMhja*ubeh}(h]h ]h"]h$]h&]uh1jhjE*ubh)}(h**Description**h]j)}(hj+h]h Description}(hj+hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj+ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjE*ubh)}(hQuery a WMI data block, the caller must free the resulting data inside **out**. Said data is guaranteed to be aligned on a 8-byte boundary.h](hGQuery a WMI data block, the caller must free the resulting data inside }(hj-+hhhNhNubj)}(h**out**h]hout}(hj5+hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj-+ubh=. Said data is guaranteed to be aligned on a 8-byte boundary.}(hj-+hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjE*ubh)}(h **Return**h]j)}(hjP+h]hReturn}(hjR+hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjN+ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjE*ubh)}(h10 on success or a negative error code on failure.h]h10 on success or a negative error code on failure.}(hjf+hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjE*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}(hj+hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj+ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj+modnameN classnameNjJ jM )}jP ]jS )}jF wmi_set_blocksbc.wmi_set_blockasbuh1hhj+hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM&ubjZ)}(h h]h }(hj+hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj+hhhj+hM&ubjk)}(h wmi_set_blockh]jq)}(hj+h]h wmi_set_block}(hj+hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj+ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj+hhhj+hM&ubj )}(hD(const char *guid_string, u8 instance, const struct acpi_buffer *in)h](j )}(hconst char *guid_stringh](jH)}(hj 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 ]jah"]h$]h&]uh1jhj+ubjZ)}(h h]h }(hj,hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj+ubj )}(hj h]h*}(hj,hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j 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}(hjG,hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjD,ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjI,modnameN classnameNjJ jM )}jP ]j+c.wmi_set_blockasbuh1hhj@,ubjZ)}(h h]h }(hje,hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj@,ubjq)}(hinstanceh]hinstance}(hjs,hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj@,ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj+ubj )}(hconst struct acpi_buffer *inh](jH)}(hj h]hconst}(hj,hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj,ubjZ)}(h h]h }(hj,hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj,ubjH)}(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 acpi_bufferh]h acpi_buffer}(hj,hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj,ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj,modnameN classnameNjJ jM )}jP ]j+c.wmi_set_blockasbuh1hhj,ubjZ)}(h h]h }(hj,hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj,ubj )}(hj h]h*}(hj,hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj,ubjq)}(hinh]hin}(hj,hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj,ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj+ubeh}(h]h ]h"]h$]h&]hhuh1j 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!Write to a WMI block (deprecated)h]h!Write to a WMI block (deprecated)}(hj(-hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM&hj%-hhubah}(h]h ]h"]h$]h&]uh1jhj+hhhj+hM&ubeh}(h]h ](hfunctioneh"]h$]h&]jhjj@-jj@-jjjuh1j6hhhhhNhNubj)}(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)}(hjJ-h]h Parameters}(hjL-hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjH-ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM*hjD-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)}(hji-h]hconst char *guid_string}(hjk-hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjg-ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM'hjc-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&]uh1j6hjc-ubeh}(h]h ]h"]h$]h&]uh1jhj~-hM'hj`-ubj)}(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&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM(hj-ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(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)}(hQ``const struct acpi_buffer *in`` Buffer containing new values for the data block h](j)}(h ``const struct acpi_buffer *in``h]h)}(hj-h]hconst struct acpi_buffer *in}(hj-hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj-ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM)hj-ubj7)}(hhh]h)}(h/Buffer containing new values for the data blockh]h/Buffer containing new values for the data block}(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`-ubeh}(h]h ]h"]h$]h&]uh1jhjD-ubh)}(h**Description**h]j)}(hj.h]h Description}(hj.hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj.ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM+hjD-ubh)}(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.}(hj,.hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM*hjD-ubh)}(h **Return**h]j)}(hj=.h]hReturn}(hj?.hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj;.ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM,hjD-ubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hjS.hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM-hjD-ubeh}(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}(hj.hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj.ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj.modnameN classnameNjJ jM )}jP ]jS )}jF wmidev_block_setsbc.wmidev_block_setasbuh1hhj~.hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMGubjZ)}(h h]h }(hj.hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj~.hhhj.hMGubjk)}(hwmidev_block_seth]jq)}(hj.h]hwmidev_block_set}(hj.hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj.ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj~.hhhj.hMGubj )}(hD(struct wmi_device *wdev, u8 instance, const struct acpi_buffer *in)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&] refdomainhreftypejF reftargetj.modnameN classnameNjJ jM )}jP ]j.c.wmidev_block_setasbuh1hhj.ubjZ)}(h h]h }(hj/hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj.ubj )}(hj h]h*}(hj/hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj.ubjq)}(hwdevh]hwdev}(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}(hjG/hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjD/ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetjI/modnameN classnameNjJ jM )}jP ]j.c.wmidev_block_setasbuh1hhj@/ubjZ)}(h h]h }(hje/hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj@/ubjq)}(hinstanceh]hinstance}(hjs/hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj@/ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj.ubj )}(hconst struct acpi_buffer *inh](jH)}(hj h]hconst}(hj/hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj/ubjZ)}(h h]h }(hj/hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj/ubjH)}(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 acpi_bufferh]h acpi_buffer}(hj/hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj/ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj/modnameN classnameNjJ jM )}jP ]j.c.wmidev_block_setasbuh1hhj/ubjZ)}(h h]h }(hj/hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj/ubj )}(hj h]h*}(hj/hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj/ubjq)}(hinh]hin}(hj/hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj/ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj.ubeh}(h]h ]h"]h$]h&]hhuh1j hj~.hhhj.hMGubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjz.hhhj.hMGubah}(h]ju.ah ](jjeh"]h$]h&]jj)jhuh1j;hj.hMGhjw.hhubj)}(hhh]h)}(h!Write to a WMI block (deprecated)h]h!Write to a WMI block (deprecated)}(hj(0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMGhj%0hhubah}(h]h ]h"]h$]h&]uh1jhjw.hhhj.hMGubeh}(h]h ](hfunctioneh"]h$]h&]jhjj@0jj@0jjjuh1j6hhhhhNhNubj)}(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)}(hjJ0h]h Parameters}(hjL0hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjH0ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMKhjD0ubj)}(hhh](j)}(h;``struct wmi_device *wdev`` A wmi bus device from a driver h](j)}(h``struct wmi_device *wdev``h]h)}(hji0h]hstruct wmi_device *wdev}(hjk0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjg0ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMHhjc0ubj7)}(hhh]h)}(hA wmi bus device from a driverh]hA wmi bus device from a driver}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj~0hMHhj0ubah}(h]h ]h"]h$]h&]uh1j6hjc0ubeh}(h]h ]h"]h$]h&]uh1jhj~0hMHhj`0ubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hj0h]h u8 instance}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj0ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMIhj0ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj0hMIhj0ubah}(h]h ]h"]h$]h&]uh1j6hj0ubeh}(h]h ]h"]h$]h&]uh1jhj0hMIhj`0ubj)}(hQ``const struct acpi_buffer *in`` Buffer containing new values for the data block h](j)}(h ``const struct acpi_buffer *in``h]h)}(hj0h]hconst struct acpi_buffer *in}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj0ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMJhj0ubj7)}(hhh]h)}(h/Buffer containing new values for the data blockh]h/Buffer containing new values for the data block}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj0hMJhj0ubah}(h]h ]h"]h$]h&]uh1j6hj0ubeh}(h]h ]h"]h$]h&]uh1jhj0hMJhj`0ubeh}(h]h ]h"]h$]h&]uh1jhjD0ubh)}(h**Description**h]j)}(hj1h]h Description}(hj1hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj1ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMLhjD0ubh)}(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,1hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMKhjD0ubh)}(h **Return**h]j)}(hj=1h]hReturn}(hj?1hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj;1ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMMhjD0ubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hjS1hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMNhjD0ubeh}(h]h ] kernelindentah"]h$]h&]uh1jhhhhhNhNubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2wmidev_set_block (C function)c.wmidev_set_blockhNtauh1j%hhhhhNhNubj7)}(hhh](j<)}(hXint wmidev_set_block (struct wmi_device *wdev, u8 instance, const struct wmi_buffer *in)h]jB)}(hWint wmidev_set_block(struct wmi_device *wdev, u8 instance, const struct wmi_buffer *in)h](j)}(hinth]hint}(hj1hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj~1hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMyubjZ)}(h h]h }(hj1hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj~1hhhj1hMyubjk)}(hwmidev_set_blockh]jq)}(hwmidev_set_blockh]hwmidev_set_block}(hj1hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj1ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj~1hhhj1hMyubj )}(hC(struct wmi_device *wdev, u8 instance, const struct wmi_buffer *in)h](j )}(hstruct wmi_device *wdevh](jH)}(hjKh]hstruct}(hj1hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj1ubjZ)}(h h]h }(hj1hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj1ubh)}(hhh]jq)}(h wmi_deviceh]h wmi_device}(hj1hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj1ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj1modnameN classnameNjJ jM )}jP ]jS )}jF j1sbc.wmidev_set_blockasbuh1hhj1ubjZ)}(h h]h }(hj1hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj1ubj )}(hj h]h*}(hj 2hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj1ubjq)}(hwdevh]hwdev}(hj2hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj1ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj1ubj )}(h u8 instanceh](h)}(hhh]jq)}(hu8h]hu8}(hj42hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj12ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj62modnameN classnameNjJ jM )}jP ]j1c.wmidev_set_blockasbuh1hhj-2ubjZ)}(h h]h }(hjR2hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj-2ubjq)}(hinstanceh]hinstance}(hj`2hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj-2ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj1ubj )}(hconst struct wmi_buffer *inh](jH)}(hj h]hconst}(hjy2hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhju2ubjZ)}(h h]h }(hj2hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhju2ubjH)}(hjKh]hstruct}(hj2hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhju2ubjZ)}(h h]h }(hj2hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhju2ubh)}(hhh]jq)}(h wmi_bufferh]h wmi_buffer}(hj2hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj2ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj2modnameN classnameNjJ jM )}jP ]j1c.wmidev_set_blockasbuh1hhju2ubjZ)}(h h]h }(hj2hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhju2ubj )}(hj h]h*}(hj2hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hju2ubjq)}(hinh]hin}(hj2hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphju2ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj1ubeh}(h]h ]h"]h$]h&]hhuh1j hj~1hhhj1hMyubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjz1hhhj1hMyubah}(h]ju1ah ](jjeh"]h$]h&]jj)jhuh1j;hj1hMyhjw1hhubj)}(hhh]h)}(hWrite to a WMI data blockh]hWrite to a WMI data block}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMyhj3hhubah}(h]h ]h"]h$]h&]uh1jhjw1hhhj1hMyubeh}(h]h ](hfunctioneh"]h$]h&]jhjj-3jj-3jjjuh1j6hhhhhNhNubj)}(hXG**Parameters** ``struct wmi_device *wdev`` A wmi bus device from a driver ``u8 instance`` Instance index ``const struct wmi_buffer *in`` WMI buffer containing new values for the data block **Description** Write the content of **in** into a WMI data block. **Return** 0 on success or negative error code on failure.h](h)}(h**Parameters**h]j)}(hj73h]h Parameters}(hj93hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj53ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM}hj13ubj)}(hhh](j)}(h;``struct wmi_device *wdev`` A wmi bus device from a driver h](j)}(h``struct wmi_device *wdev``h]h)}(hjV3h]hstruct wmi_device *wdev}(hjX3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjT3ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMzhjP3ubj7)}(hhh]h)}(hA wmi bus device from a driverh]hA wmi bus device from a driver}(hjo3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjk3hMzhjl3ubah}(h]h ]h"]h$]h&]uh1j6hjP3ubeh}(h]h ]h"]h$]h&]uh1jhjk3hMzhjM3ubj)}(h``u8 instance`` Instance index h](j)}(h``u8 instance``h]h)}(hj3h]h u8 instance}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj3ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM{hj3ubj7)}(hhh]h)}(hInstance indexh]hInstance index}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj3hM{hj3ubah}(h]h ]h"]h$]h&]uh1j6hj3ubeh}(h]h ]h"]h$]h&]uh1jhj3hM{hjM3ubj)}(hT``const struct wmi_buffer *in`` WMI buffer containing new values for the data block h](j)}(h``const struct wmi_buffer *in``h]h)}(hj3h]hconst struct wmi_buffer *in}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj3ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM|hj3ubj7)}(hhh]h)}(h3WMI buffer containing new values for the data blockh]h3WMI buffer containing new values for the data block}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj3hM|hj3ubah}(h]h ]h"]h$]h&]uh1j6hj3ubeh}(h]h ]h"]h$]h&]uh1jhj3hM|hjM3ubeh}(h]h ]h"]h$]h&]uh1jhj13ubh)}(h**Description**h]j)}(hj4h]h Description}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj4ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM~hj13ubh)}(h2Write the content of **in** into a WMI data block.h](hWrite the content of }(hj4hhhNhNubj)}(h**in**h]hin}(hj!4hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj4ubh into a WMI data block.}(hj4hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM}hj13ubh)}(h **Return**h]j)}(hj<4h]hReturn}(hj>4hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj:4ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj13ubh)}(h/0 on success or negative error code on failure.h]h/0 on success or negative error code on failure.}(hjR4hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj13ubeh}(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}(hj4hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj4ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj4modnameN classnameNjJ jM )}jP ]jS )}jF wmi_install_notify_handlersbc.wmi_install_notify_handlerasbuh1hhj}4hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMubjZ)}(h h]h }(hj4hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj}4hhhj4hMubjk)}(hwmi_install_notify_handlerh]jq)}(hj4h]hwmi_install_notify_handler}(hj4hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj4ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj}4hhhj4hMubj )}(h:(const char *guid, wmi_notify_handler handler, void *data)h](j )}(hconst char *guidh](jH)}(hj h]hconst}(hj4hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj4ubjZ)}(h h]h }(hj4hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj4ubj)}(hcharh]hchar}(hj4hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj4ubjZ)}(h h]h }(hj4hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj4ubj )}(hj h]h*}(hj 5hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj4ubjq)}(hguidh]hguid}(hj5hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj4ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj4ubj )}(hwmi_notify_handler handlerh](h)}(hhh]jq)}(hwmi_notify_handlerh]hwmi_notify_handler}(hj35hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj05ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj55modnameN classnameNjJ jM )}jP ]j4c.wmi_install_notify_handlerasbuh1hhj,5ubjZ)}(h h]h }(hjQ5hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj,5ubjq)}(hhandlerh]hhandler}(hj_5hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj,5ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj4ubj )}(h void *datah](j)}(hvoidh]hvoid}(hjx5hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjt5ubjZ)}(h h]h }(hj5hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjt5ubj )}(hj h]h*}(hj5hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjt5ubjq)}(hdatah]hdata}(hj5hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjt5ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj4ubeh}(h]h ]h"]h$]h&]hhuh1j hj}4hhhj4hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjy4hhhj4hMubah}(h]jt4ah ](jjeh"]h$]h&]jj)jhuh1j;hj4hMhjv4hhubj)}(hhh]h)}(h,Register handler for WMI events (deprecated)h]h,Register handler for WMI events (deprecated)}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj5hhubah}(h]h ]h"]h$]h&]uh1jhjv4hhhj4hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjj5jj5jjjuh1j6hhhhhNhNubj)}(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)}(hj5h]h Parameters}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj5ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj5ubj)}(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 6h]hconst char *guid}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj 6ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj6ubj7)}(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%6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj!6hMhj"6ubah}(h]h ]h"]h$]h&]uh1j6hj6ubeh}(h]h ]h"]h$]h&]uh1jhj!6hMhj6ubj)}(h@``wmi_notify_handler handler`` Function to handle notifications h](j)}(h``wmi_notify_handler handler``h]h)}(hjE6h]hwmi_notify_handler handler}(hjG6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjC6ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj?6ubj7)}(hhh]h)}(h Function to handle notificationsh]h Function to handle notifications}(hj^6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjZ6hMhj[6ubah}(h]h ]h"]h$]h&]uh1j6hj?6ubeh}(h]h ]h"]h$]h&]uh1jhjZ6hMhj6ubj)}(hB``void *data`` Data to be returned to handler when event is fired h](j)}(h``void *data``h]h)}(hj~6h]h void *data}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj|6ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhjx6ubj7)}(hhh]h)}(h2Data to be returned to handler when event is firedh]h2Data to be returned to handler when event is fired}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj6hMhj6ubah}(h]h ]h"]h$]h&]uh1j6hjx6ubeh}(h]h ]h"]h$]h&]uh1jhj6hMhj6ubeh}(h]h ]h"]h$]h&]uh1jhj5ubh)}(h**Description**h]j)}(hj6h]h Description}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj6ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj5ubh)}(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.}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj5ubh)}(h **Return**h]j)}(hj6h]hReturn}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj6ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj5ubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj5ubeh}(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(7hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj%7ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj*7modnameN classnameNjJ jM )}jP ]jS )}jF wmi_remove_notify_handlersbc.wmi_remove_notify_handlerasbuh1hhj!7hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMubjZ)}(h h]h }(hjJ7hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj!7hhhjI7hMubjk)}(hwmi_remove_notify_handlerh]jq)}(hjF7h]hwmi_remove_notify_handler}(hj\7hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjX7ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj!7hhhjI7hMubj )}(h(const char *guid)h]j )}(hconst char *guidh](jH)}(hj h]hconst}(hjw7hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhjs7ubjZ)}(h h]h }(hj7hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjs7ubj)}(hcharh]hchar}(hj7hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjs7ubjZ)}(h h]h }(hj7hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhjs7ubj )}(hj h]h*}(hj7hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hjs7ubjq)}(hguidh]hguid}(hj7hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjs7ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hjo7ubah}(h]h ]h"]h$]h&]hhuh1j hj!7hhhjI7hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj7hhhjI7hMubah}(h]j7ah ](jjeh"]h$]h&]jj)jhuh1j;hjI7hMhj7hhubj)}(hhh]h)}(h.Unregister handler for WMI events (deprecated)h]h.Unregister handler for WMI events (deprecated)}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj7hhubah}(h]h ]h"]h$]h&]uh1jhj7hhhjI7hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjj7jj7jjjuh1j6hhhhhNhNubj)}(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)}(hj8h]h Parameters}(hj 8hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj8ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj8ubj)}(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&8h]hconst char *guid}(hj(8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj$8ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj 8ubj7)}(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?8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj;8hMhj<8ubah}(h]h ]h"]h$]h&]uh1j6hj 8ubeh}(h]h ]h"]h$]h&]uh1jhj;8hMhj8ubah}(h]h ]h"]h$]h&]uh1jhj8ubh)}(h**Description**h]j)}(hja8h]h Description}(hjc8hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj_8ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj8ubh)}(hAUnregister handler for events sent to the ACPI-WMI mapper device.h]hAUnregister handler for events sent to the ACPI-WMI mapper device.}(hjw8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj8ubh)}(h **Return**h]j)}(hj8h]hReturn}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj8ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj8ubh)}(h'acpi_status signaling success or error.h]h'acpi_status signaling success or error.}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj8ubeh}(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}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMubjZ)}(h h]h }(hj8hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj8hhhj8hMubjk)}(h wmi_has_guidh]jq)}(h wmi_has_guidh]h wmi_has_guid}(hj8hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj8ubah}(h]h ](jjeh"]h$]h&]hhuh1jjhj8hhhj8hMubj )}(h(const char *guid_string)h]j )}(hconst char *guid_stringh](jH)}(hj h]hconst}(hj 9hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj9ubjZ)}(h h]h }(hj9hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj9ubj)}(hcharh]hchar}(hj%9hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj9ubjZ)}(h h]h }(hj39hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj9ubj )}(hj h]h*}(hjA9hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj9ubjq)}(h guid_stringh]h guid_string}(hjN9hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj9ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj9ubah}(h]h ]h"]h$]h&]hhuh1j hj8hhhj8hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj8hhhj8hMubah}(h]j8ah ](jjeh"]h$]h&]jj)jhuh1j;hj8hMhj8hhubj)}(hhh]h)}(hCheck if a GUID is availableh]hCheck if a GUID is available}(hjx9hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhju9hhubah}(h]h ]h"]h$]h&]uh1jhj8hhhj8hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjj9jj9jjjuh1j6hhhhhNhNubj)}(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)}(hj9h]h Parameters}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj9ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj9ubj)}(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)}(hj9h]hconst char *guid_string}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj9ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj9ubj7)}(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}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj9hMhj9ubah}(h]h ]h"]h$]h&]uh1j6hj9ubeh}(h]h ]h"]h$]h&]uh1jhj9hMhj9ubah}(h]h ]h"]h$]h&]uh1jhj9ubh)}(h**Description**h]j)}(hj9h]h Description}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj9ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj9ubh)}(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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj9ubh)}(h **Return**h]j)}(hj:h]hReturn}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj:ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj9ubh)}(h+True if GUID is available, false otherwise.h]h+True if GUID is available, false otherwise.}(hj1:hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj9ubeh}(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 ]jah"]h$]h&]uh1jhj\:hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM ubjZ)}(h h]h }(hjo:hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj\:hhhjn:hM ubj )}(hj h]h*}(hj}:hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj\:hhhjn: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\:hhhjn:hM ubj )}(h(const char *guid_string)h]j )}(hconst char *guid_stringh](jH)}(hj 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 ]jah"]h$]h&]uh1jhj:ubjZ)}(h h]h }(hj:hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj:ubj )}(hj h]h*}(hj:hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j 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&]hhuh1j hj\:hhhjn:hM ubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhjX:hhhjn:hM ubah}(h]jS:ah ](jjeh"]h$]h&]jj)jhuh1j;hjn:hM hjU: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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hj;hhubah}(h]h ]h"]h$]h&]uh1jhjU:hhhjn:hM ubeh}(h]h ](hfunctioneh"]h$]h&]jhjj0;jj0;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&]uh1jhj8;ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj4;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)}(hjY;h]hconst char *guid_string}(hj[;hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjW;ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hjS;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}(hjr;hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjn;hM hjo;ubah}(h]h ]h"]h$]h&]uh1j6hjS;ubeh}(h]h ]h"]h$]h&]uh1jhjn;hM hjP;ubah}(h]h ]h"]h$]h&]uh1jhj4;ubh)}(h**Description**h]j)}(hj;h]h Description}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj;ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj4;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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chM hj4;ubh)}(h **Return**h]j)}(hj;h]hReturn}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj;ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj4;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.}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj4;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}(hj<hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj;hhhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMubjZ)}(h h]h }(hj<hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj;hhhj<hMubjk)}(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&]hhuh1jjhj;hhhj<hMubj )}(h(struct wmi_driver *driver)h]j )}(hstruct wmi_driver *driverh](jH)}(hjKh]hstruct}(hj=<hhhNhNubah}(h]h ]jTah"]h$]h&]uh1jGhj9<ubjZ)}(h h]h }(hjJ<hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj9<ubh)}(hhh]jq)}(h wmi_driverh]h wmi_driver}(hj[<hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphjX<ubah}(h]h ]h"]h$]h&] refdomainhreftypejF reftargetj]<modnameN classnameNjJ jM )}jP ]jS )}jF j#<sbc.wmi_driver_unregisterasbuh1hhj9<ubjZ)}(h h]h }(hj{<hhhNhNubah}(h]h ]jfah"]h$]h&]uh1jYhj9<ubj )}(hj h]h*}(hj<hhhNhNubah}(h]h ]j ah"]h$]h&]uh1j hj9<ubjq)}(hdriverh]hdriver}(hj<hhhNhNubah}(h]h ]j|ah"]h$]h&]uh1jphj9<ubeh}(h]h ]h"]h$]h&]noemphhhuh1j hj5<ubah}(h]h ]h"]h$]h&]hhuh1j hj;hhhj<hMubeh}(h]h ]h"]h$]h&]hhjuh1jAjjhj;hhhj<hMubah}(h]j;ah ](jjeh"]h$]h&]jj)jhuh1j;hj<hMhj;hhubj)}(hhh]h)}(hUnregister a WMI driverh]hUnregister a WMI driver}(hj<hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj<hhubah}(h]h ]h"]h$]h&]uh1jhj;hhhj<hMubeh}(h]h ](hfunctioneh"]h$]h&]jhjj<jj<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&]uh1jhj<ubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj<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&]uh1hhj<ubah}(h]h ]h"]h$]h&]uh1jhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj<ubj7)}(hhh]h)}(hWMI driver to unregisterh]hWMI driver to unregister}(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&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj<ubh)}(h*Unregisters a WMI driver from the WMI bus.h]h*Unregisters a WMI driver from the WMI bus.}(hjR=hhhNhNubah}(h]h ]h"]h$]h&]uh1hhZ/var/lib/git/docbuild/linux/Documentation/driver-api/wmi:22: ./drivers/platform/wmi/core.chMhj<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}jm=jj=s nametypes}jm=sh}(jj=hj4j=jj jjj}jjjj j j j j j j j% jjj|jjjjjjjj2j7j[#j`#j?&jD&j(j(j+j+ju.jz.ju1jz1jt4jy4j7j7j8j8jS:jX:j;j;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.