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 10static 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 16static 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 23static 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 29static 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 36static 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 42static 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 48static 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 54static 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 60static 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