• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * This header was generated from the Linux kernel headers by update_headers.py,
3  * to provide necessary information from kernel to userspace, such as constants,
4  * structures, and macros, and thus, contains no copyrightable information.
5  */
6 #ifndef _UAPI_LINUX_WMI_H
7 #define _UAPI_LINUX_WMI_H
8 #include <linux/ioctl.h>
9 #include <linux/types.h>
10 #define WMI_IOC 'W'
11 struct wmi_ioctl_buffer {
12 	__u64	length;
13 	__u8	data[];
14 };
15 struct calling_interface_buffer {
16 	__u16 cmd_class;
17 	__u16 cmd_select;
18 	volatile __u32 input[4];
19 	volatile __u32 output[4];
20 } __packed;
21 struct dell_wmi_extensions {
22 	__u32 argattrib;
23 	__u32 blength;
24 	__u8 data[];
25 } __packed;
26 struct dell_wmi_smbios_buffer {
27 	__u64 length;
28 	struct calling_interface_buffer std;
29 	struct dell_wmi_extensions	ext;
30 } __packed;
31 #define CLASS_TOKEN_READ	0
32 #define CLASS_TOKEN_WRITE	1
33 #define SELECT_TOKEN_STD	0
34 #define SELECT_TOKEN_BAT	1
35 #define SELECT_TOKEN_AC		2
36 #define CLASS_FLASH_INTERFACE	7
37 #define SELECT_FLASH_INTERFACE	3
38 #define CLASS_ADMIN_PROP	10
39 #define SELECT_ADMIN_PROP	3
40 #define CLASS_INFO		17
41 #define SELECT_RFKILL		11
42 #define SELECT_APP_REGISTRATION	3
43 #define SELECT_DOCK		22
44 #define CAPSULE_EN_TOKEN	0x0461
45 #define CAPSULE_DIS_TOKEN	0x0462
46 #define WSMT_EN_TOKEN		0x04EC
47 #define WSMT_DIS_TOKEN		0x04ED
48 #define DELL_WMI_SMBIOS_CMD	_IOWR(WMI_IOC, 0, struct dell_wmi_smbios_buffer)
49 #endif
50