111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/**************************************************************************** 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** This header was automatically generated from a Linux kernel header 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** of the same name, to make information necessary for userspace to 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** call into the kernel available to libc. It contains only constants, 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** structures, and macros generated from the original header, and thus, 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** contains no copyrightable information. 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/ 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef LINUX_MOD_DEVICETABLE_H 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LINUX_MOD_DEVICETABLE_H 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCI_ANY_ID (~0) 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct pci_device_id { 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 vendor, device; 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 subvendor, subdevice; 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 class, class_mask; 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t driver_data; 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define IEEE1394_MATCH_VENDOR_ID 0x0001 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define IEEE1394_MATCH_MODEL_ID 0x0002 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define IEEE1394_MATCH_SPECIFIER_ID 0x0004 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define IEEE1394_MATCH_VERSION 0x0008 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct ieee1394_device_id { 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 match_flags; 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 vendor_id; 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 model_id; 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 specifier_id; 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 version; 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t driver_data 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __attribute__((aligned(sizeof(kernel_ulong_t)))); 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct usb_device_id { 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 match_flags; 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 idVendor; 4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 idProduct; 4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 bcdDevice_lo; 4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 bcdDevice_hi; 4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 bDeviceClass; 4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 bDeviceSubClass; 5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 bDeviceProtocol; 5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 bInterfaceClass; 5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 bInterfaceSubClass; 5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 bInterfaceProtocol; 5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t driver_info; 5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_VENDOR 0x0001 6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_PRODUCT 0x0002 6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_DEV_LO 0x0004 6211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_DEV_HI 0x0008 6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_DEV_CLASS 0x0010 6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_DEV_SUBCLASS 0x0020 6511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_DEV_PROTOCOL 0x0040 6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_INT_CLASS 0x0080 6711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_INT_SUBCLASS 0x0100 6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USB_DEVICE_ID_MATCH_INT_PROTOCOL 0x0200 6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct ccw_device_id { 7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 match_flags; 7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 cu_type; 7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 dev_type; 7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 cu_model; 7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 dev_model; 7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t driver_info; 7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CCW_DEVICE_ID_MATCH_CU_TYPE 0x01 8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CCW_DEVICE_ID_MATCH_CU_MODEL 0x02 8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CCW_DEVICE_ID_MATCH_DEVICE_TYPE 0x04 8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CCW_DEVICE_ID_MATCH_DEVICE_MODEL 0x08 8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PNP_ID_LEN 8 8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PNP_MAX_DEVICES 8 8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct pnp_device_id { 9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 id[PNP_ID_LEN]; 9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t driver_data; 9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 9311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct pnp_card_device_id { 9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 id[PNP_ID_LEN]; 9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t driver_data; 9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct { 9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 id[PNP_ID_LEN]; 9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } devs[PNP_MAX_DEVICES]; 10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define SERIO_ANY 0xff 10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct serio_device_id { 10511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 type; 10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 extra; 10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 id; 10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 proto; 10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct of_device_id 11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char name[32]; 11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char type[32]; 11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char compatible[128]; 11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t data; 11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 11911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct vio_device_id { 12011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char type[32]; 12111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char compat[32]; 12211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 12311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 12411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct pcmcia_device_id { 12511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 match_flags; 12611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 12711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 manf_id; 12811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 card_id; 12911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 func_id; 13111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 function; 13311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 device_no; 13511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 prod_id_hash[4] 13711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __attribute__((aligned(sizeof(__u32)))); 13811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t prod_id[4] 14011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __attribute__((aligned(sizeof(kernel_ulong_t)))); 14111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 14211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t driver_info; 14311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t cisfile; 14411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 14511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 14611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_MANF_ID 0x0001 14711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_CARD_ID 0x0002 14811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_FUNC_ID 0x0004 14911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_FUNCTION 0x0008 15011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_PROD_ID1 0x0010 15111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_PROD_ID2 0x0020 15211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_PROD_ID3 0x0040 15311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_PROD_ID4 0x0080 15411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_DEVICE_NO 0x0100 15511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_FAKE_CIS 0x0200 15611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PCMCIA_DEV_ID_MATCH_ANONYMOUS 0x0400 15711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 15811cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct i2c_device_id { 15911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 id; 16011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 16111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 16211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_EV_MAX 0x1f 16311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_KEY_MAX 0x1ff 16411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_REL_MAX 0x0f 16511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_ABS_MAX 0x3f 16611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MSC_MAX 0x07 16711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_LED_MAX 0x0f 16811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_SND_MAX 0x07 16911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_FF_MAX 0x7f 17011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_SW_MAX 0x0f 17111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 17211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_BUS 1 17311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_VENDOR 2 17411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_PRODUCT 4 17511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_VERSION 8 17611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 17711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_EVBIT 0x0010 17811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_KEYBIT 0x0020 17911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_RELBIT 0x0040 18011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_ABSBIT 0x0080 18111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_MSCIT 0x0100 18211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_LEDBIT 0x0200 18311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_SNDBIT 0x0400 18411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_FFBIT 0x0800 18511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define INPUT_DEVICE_ID_MATCH_SWBIT 0x1000 18611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 18711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct input_device_id { 18811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 18911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t flags; 19011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 19111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 bustype; 19211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 vendor; 19311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 product; 19411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u16 version; 19511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 19611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t evbit[INPUT_DEVICE_ID_EV_MAX / BITS_PER_LONG + 1]; 19711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t keybit[INPUT_DEVICE_ID_KEY_MAX / BITS_PER_LONG + 1]; 19811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t relbit[INPUT_DEVICE_ID_REL_MAX / BITS_PER_LONG + 1]; 19911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t absbit[INPUT_DEVICE_ID_ABS_MAX / BITS_PER_LONG + 1]; 20011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t mscbit[INPUT_DEVICE_ID_MSC_MAX / BITS_PER_LONG + 1]; 20111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t ledbit[INPUT_DEVICE_ID_LED_MAX / BITS_PER_LONG + 1]; 20211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t sndbit[INPUT_DEVICE_ID_SND_MAX / BITS_PER_LONG + 1]; 20311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t ffbit[INPUT_DEVICE_ID_FF_MAX / BITS_PER_LONG + 1]; 20411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t swbit[INPUT_DEVICE_ID_SW_MAX / BITS_PER_LONG + 1]; 20511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 20611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert kernel_ulong_t driver_info; 20711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 20811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 20911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 210