aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mod_devicetable.h
diff options
context:
space:
mode:
authorJeff Garzik <jgarzik@pobox.com>2005-08-29 16:40:27 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-08-29 16:40:27 -0400
commitc1b054d03f5b31c33eaa0b267c629b118eaf3790 (patch)
tree9333907ca767be24fcb3667877242976c3e3c8dd /include/linux/mod_devicetable.h
parent559fb51ba7e66fe298b8355fabde1275b7def35f (diff)
parentbf4e70e54cf31dcca48d279c7f7e71328eebe749 (diff)
Merge /spare/repo/linux-2.6/
Diffstat (limited to 'include/linux/mod_devicetable.h')
-rw-r--r--include/linux/mod_devicetable.h65
1 files changed, 64 insertions, 1 deletions
diff --git a/include/linux/mod_devicetable.h b/include/linux/mod_devicetable.h
index d6eb7b2efc04..97bbccdbcca3 100644
--- a/include/linux/mod_devicetable.h
+++ b/include/linux/mod_devicetable.h
@@ -33,7 +33,8 @@ struct ieee1394_device_id {
33 __u32 model_id; 33 __u32 model_id;
34 __u32 specifier_id; 34 __u32 specifier_id;
35 __u32 version; 35 __u32 version;
36 kernel_ulong_t driver_data; 36 kernel_ulong_t driver_data
37 __attribute__((aligned(sizeof(kernel_ulong_t))));
37}; 38};
38 39
39 40
@@ -174,5 +175,67 @@ struct serio_device_id {
174 __u8 proto; 175 __u8 proto;
175}; 176};
176 177
178/*
179 * Struct used for matching a device
180 */
181struct of_device_id
182{
183 char name[32];
184 char type[32];
185 char compatible[128];
186#if __KERNEL__
187 void *data;
188#else
189 kernel_ulong_t data;
190#endif
191};
192
193
194/* PCMCIA */
195
196struct pcmcia_device_id {
197 __u16 match_flags;
198
199 __u16 manf_id;
200 __u16 card_id;
201
202 __u8 func_id;
203
204 /* for real multi-function devices */
205 __u8 function;
206
207 /* for pseude multi-function devices */
208 __u8 device_no;
209
210 __u32 prod_id_hash[4];
211
212 /* not matched against in kernelspace*/
213#ifdef __KERNEL__
214 const char * prod_id[4];
215#else
216 kernel_ulong_t prod_id[4]
217 __attribute__((aligned(sizeof(kernel_ulong_t))));
218#endif
219
220 /* not matched against */
221 kernel_ulong_t driver_info;
222#ifdef __KERNEL__
223 char * cisfile;
224#else
225 kernel_ulong_t cisfile;
226#endif
227};
228
229#define PCMCIA_DEV_ID_MATCH_MANF_ID 0x0001
230#define PCMCIA_DEV_ID_MATCH_CARD_ID 0x0002
231#define PCMCIA_DEV_ID_MATCH_FUNC_ID 0x0004
232#define PCMCIA_DEV_ID_MATCH_FUNCTION 0x0008
233#define PCMCIA_DEV_ID_MATCH_PROD_ID1 0x0010
234#define PCMCIA_DEV_ID_MATCH_PROD_ID2 0x0020
235#define PCMCIA_DEV_ID_MATCH_PROD_ID3 0x0040
236#define PCMCIA_DEV_ID_MATCH_PROD_ID4 0x0080
237#define PCMCIA_DEV_ID_MATCH_DEVICE_NO 0x0100
238#define PCMCIA_DEV_ID_MATCH_FAKE_CIS 0x0200
239#define PCMCIA_DEV_ID_MATCH_ANONYMOUS 0x0400
177 240
178#endif /* LINUX_MOD_DEVICETABLE_H */ 241#endif /* LINUX_MOD_DEVICETABLE_H */