1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef LINUX_DEVICE_ID_PCMCIA_H 3 #define LINUX_DEVICE_ID_PCMCIA_H 4 5 #ifdef __KERNEL__ 6 #include <linux/types.h> 7 typedef unsigned long kernel_ulong_t; 8 #endif 9 10 /* PCMCIA */ 11 12 #define PCMCIA_DEV_ID_MATCH_MANF_ID 0x0001 13 #define PCMCIA_DEV_ID_MATCH_CARD_ID 0x0002 14 #define PCMCIA_DEV_ID_MATCH_FUNC_ID 0x0004 15 #define PCMCIA_DEV_ID_MATCH_FUNCTION 0x0008 16 #define PCMCIA_DEV_ID_MATCH_PROD_ID1 0x0010 17 #define PCMCIA_DEV_ID_MATCH_PROD_ID2 0x0020 18 #define PCMCIA_DEV_ID_MATCH_PROD_ID3 0x0040 19 #define PCMCIA_DEV_ID_MATCH_PROD_ID4 0x0080 20 #define PCMCIA_DEV_ID_MATCH_DEVICE_NO 0x0100 21 #define PCMCIA_DEV_ID_MATCH_FAKE_CIS 0x0200 22 #define PCMCIA_DEV_ID_MATCH_ANONYMOUS 0x0400 23 24 struct pcmcia_device_id { 25 __u16 match_flags; 26 27 __u16 manf_id; 28 __u16 card_id; 29 30 __u8 func_id; 31 32 /* for real multi-function devices */ 33 __u8 function; 34 35 /* for pseudo multi-function devices */ 36 __u8 device_no; 37 38 __u32 prod_id_hash[4]; 39 40 /* not matched against in kernelspace */ 41 const char * prod_id[4]; 42 43 /* not matched against */ 44 kernel_ulong_t driver_info; 45 char * cisfile; 46 }; 47 48 #endif /* ifndef LINUX_DEVICE_ID_PCMCIA_H */ 49