Home | History | Annotate | Download | only in pci_ids
      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