1 #ifndef _PCI_ID_DRIVER_MAP_H_ 2 #define _PCI_ID_DRIVER_MAP_H_ 3 4 #include <stddef.h> 5 6 #ifndef ARRAY_SIZE 7 #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0])) 8 #endif 9 10 static const int i915_chip_ids[] = { 11 #define CHIPSET(chip, desc, misc) chip, 12 #include "pci_ids/i915_pci_ids.h" 13 #undef CHIPSET 14 }; 15 16 static const int i965_chip_ids[] = { 17 #define CHIPSET(chip, desc, misc) chip, 18 #include "pci_ids/i965_pci_ids.h" 19 #undef CHIPSET 20 }; 21 22 #ifndef DRIVER_MAP_GALLIUM_ONLY 23 static const int r100_chip_ids[] = { 24 #define CHIPSET(chip, name, family) chip, 25 #include "pci_ids/radeon_pci_ids.h" 26 #undef CHIPSET 27 }; 28 29 static const int r200_chip_ids[] = { 30 #define CHIPSET(chip, name, family) chip, 31 #include "pci_ids/r200_pci_ids.h" 32 #undef CHIPSET 33 }; 34 #endif 35 36 static const int r300_chip_ids[] = { 37 #define CHIPSET(chip, name, family) chip, 38 #include "pci_ids/r300_pci_ids.h" 39 #undef CHIPSET 40 }; 41 42 static const int r600_chip_ids[] = { 43 #define CHIPSET(chip, name, family) chip, 44 #include "pci_ids/r600_pci_ids.h" 45 #undef CHIPSET 46 }; 47 48 static const int radeonsi_chip_ids[] = { 49 #define CHIPSET(chip, name, family) chip, 50 #include "pci_ids/radeonsi_pci_ids.h" 51 #undef CHIPSET 52 }; 53 54 static const int vmwgfx_chip_ids[] = { 55 #define CHIPSET(chip, name, family) chip, 56 #include "pci_ids/vmwgfx_pci_ids.h" 57 #undef CHIPSET 58 }; 59 60 static const struct { 61 int vendor_id; 62 const char *driver; 63 const int *chip_ids; 64 int num_chips_ids; 65 } driver_map[] = { 66 { 0x8086, "i915", i915_chip_ids, ARRAY_SIZE(i915_chip_ids) }, 67 { 0x8086, "i965", i965_chip_ids, ARRAY_SIZE(i965_chip_ids) }, 68 #ifndef DRIVER_MAP_GALLIUM_ONLY 69 { 0x1002, "radeon", r100_chip_ids, ARRAY_SIZE(r100_chip_ids) }, 70 { 0x1002, "r200", r200_chip_ids, ARRAY_SIZE(r200_chip_ids) }, 71 #endif 72 { 0x1002, "r300", r300_chip_ids, ARRAY_SIZE(r300_chip_ids) }, 73 { 0x1002, "r600", r600_chip_ids, ARRAY_SIZE(r600_chip_ids) }, 74 { 0x1002, "radeonsi", radeonsi_chip_ids, ARRAY_SIZE(radeonsi_chip_ids) }, 75 { 0x10de, "nouveau", NULL, -1 }, 76 { 0x15ad, "vmwgfx", vmwgfx_chip_ids, ARRAY_SIZE(vmwgfx_chip_ids) }, 77 { 0x0000, NULL, NULL, 0 }, 78 }; 79 80 #endif /* _PCI_ID_DRIVER_MAP_H_ */ 81