1 /* Public domain. */ 2 3 #ifndef _LINUX_MOD_DEVICETABLE_H 4 #define _LINUX_MOD_DEVICETABLE_H 5 6 enum dmi_field { 7 DMI_NONE, 8 DMI_BIOS_VENDOR, 9 DMI_BIOS_VERSION, 10 DMI_BIOS_DATE, 11 DMI_SYS_VENDOR, 12 DMI_PRODUCT_NAME, 13 DMI_PRODUCT_VERSION, 14 DMI_PRODUCT_SERIAL, 15 DMI_PRODUCT_UUID, 16 DMI_BOARD_VENDOR, 17 DMI_BOARD_NAME, 18 DMI_BOARD_VERSION, 19 DMI_BOARD_SERIAL, 20 DMI_BOARD_ASSET_TAG, 21 DMI_CHASSIS_VENDOR, 22 DMI_CHASSIS_TYPE, 23 DMI_CHASSIS_VERSION, 24 DMI_CHASSIS_SERIAL, 25 DMI_CHASSIS_ASSET_TAG, 26 DMI_STRING_MAX, 27 }; 28 29 struct dmi_strmatch { 30 unsigned char slot; 31 char substr[79]; 32 }; 33 34 struct dmi_system_id { 35 int (*callback)(const struct dmi_system_id *); 36 const char *ident; 37 struct dmi_strmatch matches[4]; 38 void *driver_data; 39 }; 40 #define DMI_MATCH(a, b) {(a), (b)} 41 #define DMI_EXACT_MATCH(a, b) {(a), (b)} 42 43 struct pci_device_id { 44 uint16_t vendor; 45 uint16_t device; 46 uint16_t subvendor; 47 uint16_t subdevice; 48 uint32_t class; 49 uint32_t class_mask; 50 unsigned long driver_data; 51 }; 52 53 #endif 54