1951a39d68df598db08dfced8b4707755864a0492Ying Wang/****************************************************************************
2951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************
3951a39d68df598db08dfced8b4707755864a0492Ying Wang ***
4951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   This header was automatically generated from a Linux kernel header
5951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   of the same name, to make information necessary for userspace to
6951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   call into the kernel available to libc.  It contains only constants,
7951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   structures, and macros generated from the original header, and thus,
8951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   contains no copyrightable information.
9951a39d68df598db08dfced8b4707755864a0492Ying Wang ***
10951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************
11951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************/
12951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef LINUX_MOD_DEVICETABLE_H
13951a39d68df598db08dfced8b4707755864a0492Ying Wang#define LINUX_MOD_DEVICETABLE_H
14951a39d68df598db08dfced8b4707755864a0492Ying Wang
15951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCI_ANY_ID (~0)
16951a39d68df598db08dfced8b4707755864a0492Ying Wang
17951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct pci_device_id {
18951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 vendor, device;
19951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 subvendor, subdevice;
20951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 class, class_mask;
21951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t driver_data;
22951a39d68df598db08dfced8b4707755864a0492Ying Wang};
23951a39d68df598db08dfced8b4707755864a0492Ying Wang
24951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IEEE1394_MATCH_VENDOR_ID 0x0001
25951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IEEE1394_MATCH_MODEL_ID 0x0002
26951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IEEE1394_MATCH_SPECIFIER_ID 0x0004
27951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IEEE1394_MATCH_VERSION 0x0008
28951a39d68df598db08dfced8b4707755864a0492Ying Wang
29951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct ieee1394_device_id {
30951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 match_flags;
31951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 vendor_id;
32951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 model_id;
33951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 specifier_id;
34951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 version;
35951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t driver_data
36951a39d68df598db08dfced8b4707755864a0492Ying Wang __attribute__((aligned(sizeof(kernel_ulong_t))));
37951a39d68df598db08dfced8b4707755864a0492Ying Wang};
38951a39d68df598db08dfced8b4707755864a0492Ying Wang
39951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct usb_device_id {
40951a39d68df598db08dfced8b4707755864a0492Ying Wang
41951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 match_flags;
42951a39d68df598db08dfced8b4707755864a0492Ying Wang
43951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 idVendor;
44951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 idProduct;
45951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 bcdDevice_lo;
46951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 bcdDevice_hi;
47951a39d68df598db08dfced8b4707755864a0492Ying Wang
48951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 bDeviceClass;
49951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 bDeviceSubClass;
50951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 bDeviceProtocol;
51951a39d68df598db08dfced8b4707755864a0492Ying Wang
52951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 bInterfaceClass;
53951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 bInterfaceSubClass;
54951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 bInterfaceProtocol;
55951a39d68df598db08dfced8b4707755864a0492Ying Wang
56951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t driver_info;
57951a39d68df598db08dfced8b4707755864a0492Ying Wang};
58951a39d68df598db08dfced8b4707755864a0492Ying Wang
59951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_VENDOR 0x0001
60951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_PRODUCT 0x0002
61951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_DEV_LO 0x0004
62951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_DEV_HI 0x0008
63951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_DEV_CLASS 0x0010
64951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_DEV_SUBCLASS 0x0020
65951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_DEV_PROTOCOL 0x0040
66951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_INT_CLASS 0x0080
67951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_INT_SUBCLASS 0x0100
68951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USB_DEVICE_ID_MATCH_INT_PROTOCOL 0x0200
69951a39d68df598db08dfced8b4707755864a0492Ying Wang
70951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct ccw_device_id {
71951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 match_flags;
72951a39d68df598db08dfced8b4707755864a0492Ying Wang
73951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 cu_type;
74951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 dev_type;
75951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 cu_model;
76951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 dev_model;
77951a39d68df598db08dfced8b4707755864a0492Ying Wang
78951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t driver_info;
79951a39d68df598db08dfced8b4707755864a0492Ying Wang};
80951a39d68df598db08dfced8b4707755864a0492Ying Wang
81951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CCW_DEVICE_ID_MATCH_CU_TYPE 0x01
82951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CCW_DEVICE_ID_MATCH_CU_MODEL 0x02
83951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CCW_DEVICE_ID_MATCH_DEVICE_TYPE 0x04
84951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CCW_DEVICE_ID_MATCH_DEVICE_MODEL 0x08
85951a39d68df598db08dfced8b4707755864a0492Ying Wang
86951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PNP_ID_LEN 8
87951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PNP_MAX_DEVICES 8
88951a39d68df598db08dfced8b4707755864a0492Ying Wang
89951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct pnp_device_id {
90951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 id[PNP_ID_LEN];
91951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t driver_data;
92951a39d68df598db08dfced8b4707755864a0492Ying Wang};
93951a39d68df598db08dfced8b4707755864a0492Ying Wang
94951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct pnp_card_device_id {
95951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 id[PNP_ID_LEN];
96951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t driver_data;
97951a39d68df598db08dfced8b4707755864a0492Ying Wang struct {
98951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 id[PNP_ID_LEN];
99951a39d68df598db08dfced8b4707755864a0492Ying Wang } devs[PNP_MAX_DEVICES];
100951a39d68df598db08dfced8b4707755864a0492Ying Wang};
101951a39d68df598db08dfced8b4707755864a0492Ying Wang
102951a39d68df598db08dfced8b4707755864a0492Ying Wang#define SERIO_ANY 0xff
103951a39d68df598db08dfced8b4707755864a0492Ying Wang
104951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct serio_device_id {
105951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 type;
106951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 extra;
107951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 id;
108951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 proto;
109951a39d68df598db08dfced8b4707755864a0492Ying Wang};
110951a39d68df598db08dfced8b4707755864a0492Ying Wang
111951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct of_device_id
112951a39d68df598db08dfced8b4707755864a0492Ying Wang{
113951a39d68df598db08dfced8b4707755864a0492Ying Wang char name[32];
114951a39d68df598db08dfced8b4707755864a0492Ying Wang char type[32];
115951a39d68df598db08dfced8b4707755864a0492Ying Wang char compatible[128];
116951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t data;
117951a39d68df598db08dfced8b4707755864a0492Ying Wang};
118951a39d68df598db08dfced8b4707755864a0492Ying Wang
119951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct vio_device_id {
120951a39d68df598db08dfced8b4707755864a0492Ying Wang char type[32];
121951a39d68df598db08dfced8b4707755864a0492Ying Wang char compat[32];
122951a39d68df598db08dfced8b4707755864a0492Ying Wang};
123951a39d68df598db08dfced8b4707755864a0492Ying Wang
124951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct pcmcia_device_id {
125951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 match_flags;
126951a39d68df598db08dfced8b4707755864a0492Ying Wang
127951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 manf_id;
128951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 card_id;
129951a39d68df598db08dfced8b4707755864a0492Ying Wang
130951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 func_id;
131951a39d68df598db08dfced8b4707755864a0492Ying Wang
132951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 function;
133951a39d68df598db08dfced8b4707755864a0492Ying Wang
134951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 device_no;
135951a39d68df598db08dfced8b4707755864a0492Ying Wang
136951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 prod_id_hash[4]
137951a39d68df598db08dfced8b4707755864a0492Ying Wang __attribute__((aligned(sizeof(__u32))));
138951a39d68df598db08dfced8b4707755864a0492Ying Wang
139951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t prod_id[4]
140951a39d68df598db08dfced8b4707755864a0492Ying Wang __attribute__((aligned(sizeof(kernel_ulong_t))));
141951a39d68df598db08dfced8b4707755864a0492Ying Wang
142951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t driver_info;
143951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t cisfile;
144951a39d68df598db08dfced8b4707755864a0492Ying Wang};
145951a39d68df598db08dfced8b4707755864a0492Ying Wang
146951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_MANF_ID 0x0001
147951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_CARD_ID 0x0002
148951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_FUNC_ID 0x0004
149951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_FUNCTION 0x0008
150951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_PROD_ID1 0x0010
151951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_PROD_ID2 0x0020
152951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_PROD_ID3 0x0040
153951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_PROD_ID4 0x0080
154951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_DEVICE_NO 0x0100
155951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_FAKE_CIS 0x0200
156951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PCMCIA_DEV_ID_MATCH_ANONYMOUS 0x0400
157951a39d68df598db08dfced8b4707755864a0492Ying Wang
158951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct i2c_device_id {
159951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 id;
160951a39d68df598db08dfced8b4707755864a0492Ying Wang};
161951a39d68df598db08dfced8b4707755864a0492Ying Wang
162951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_EV_MAX 0x1f
163951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_KEY_MAX 0x1ff
164951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_REL_MAX 0x0f
165951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_ABS_MAX 0x3f
166951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MSC_MAX 0x07
167951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_LED_MAX 0x0f
168951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_SND_MAX 0x07
169951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_FF_MAX 0x7f
170951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_SW_MAX 0x0f
171951a39d68df598db08dfced8b4707755864a0492Ying Wang
172951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_BUS 1
173951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_VENDOR 2
174951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_PRODUCT 4
175951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_VERSION 8
176951a39d68df598db08dfced8b4707755864a0492Ying Wang
177951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_EVBIT 0x0010
178951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_KEYBIT 0x0020
179951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_RELBIT 0x0040
180951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_ABSBIT 0x0080
181951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_MSCIT 0x0100
182951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_LEDBIT 0x0200
183951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_SNDBIT 0x0400
184951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_FFBIT 0x0800
185951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INPUT_DEVICE_ID_MATCH_SWBIT 0x1000
186951a39d68df598db08dfced8b4707755864a0492Ying Wang
187951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct input_device_id {
188951a39d68df598db08dfced8b4707755864a0492Ying Wang
189951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t flags;
190951a39d68df598db08dfced8b4707755864a0492Ying Wang
191951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 bustype;
192951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 vendor;
193951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 product;
194951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 version;
195951a39d68df598db08dfced8b4707755864a0492Ying Wang
196951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t evbit[INPUT_DEVICE_ID_EV_MAX / BITS_PER_LONG + 1];
197951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t keybit[INPUT_DEVICE_ID_KEY_MAX / BITS_PER_LONG + 1];
198951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t relbit[INPUT_DEVICE_ID_REL_MAX / BITS_PER_LONG + 1];
199951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t absbit[INPUT_DEVICE_ID_ABS_MAX / BITS_PER_LONG + 1];
200951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t mscbit[INPUT_DEVICE_ID_MSC_MAX / BITS_PER_LONG + 1];
201951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t ledbit[INPUT_DEVICE_ID_LED_MAX / BITS_PER_LONG + 1];
202951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t sndbit[INPUT_DEVICE_ID_SND_MAX / BITS_PER_LONG + 1];
203951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t ffbit[INPUT_DEVICE_ID_FF_MAX / BITS_PER_LONG + 1];
204951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t swbit[INPUT_DEVICE_ID_SW_MAX / BITS_PER_LONG + 1];
205951a39d68df598db08dfced8b4707755864a0492Ying Wang
206951a39d68df598db08dfced8b4707755864a0492Ying Wang kernel_ulong_t driver_info;
207951a39d68df598db08dfced8b4707755864a0492Ying Wang};
208951a39d68df598db08dfced8b4707755864a0492Ying Wang
209951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif
210