We need pci id to driver-name mapping for drm and wayland platforms in egl_dri2 and egl_gallium.
egl_dri2 holds a own list, which is redundant with the information thats already stored in the drivers. egl_gallium uses the kernel name, which is not always the actual 3d driver name (e.g. radeon -> r300 || r600) To follow the egl_dri2 approach this patchset adds some generic macro-based per driver lists to the drivers. Every driver can have its own set of additional arguments in the macros. A driver list just needs to be included in src/egl/drivers/dri2/pci_ids.h with the appropriate CHIPSET definition. Hope this suits the need for driver loaders, but also driver implementations. Benjamin Franzke (6): Add i915 & i965 pci id lists Add radeon pci id lists egl_dri2: Use external driver pci list targets/egl: Support driver name lookup using pci lists radeon: Use pciid list to generate PCI_CHIP_<FAMILY>_<ID> defines r600g: Use radeon pciid list for the family lookup table src/egl/drivers/dri2/Makefile | 2 +- src/egl/drivers/dri2/common.c | 110 ++++ src/egl/drivers/dri2/egl_dri2.h | 2 + src/egl/drivers/dri2/pci_ids.h | 62 ++ src/egl/drivers/dri2/platform_drm.c | 663 +------------------- src/gallium/state_trackers/egl/drm/native_drm.c | 33 +- .../state_trackers/egl/wayland/native_drm.c | 40 +-- src/gallium/targets/egl/egl.c | 80 +++- src/gallium/targets/egl/pci_ids.h | 1 + src/gallium/winsys/r600/drm/Makefile | 1 + src/gallium/winsys/r600/drm/radeon_pciid.c | 486 +-------------- src/mesa/drivers/dri/intel/i915_pci_ids.h | 19 + src/mesa/drivers/dri/intel/i965_pci_ids.h | 27 + src/mesa/drivers/dri/radeon/r200_pci_ids.h | 22 + src/mesa/drivers/dri/radeon/r300_pci_ids.h | 218 +++++++ src/mesa/drivers/dri/radeon/r600_pci_ids.h | 261 ++++++++ src/mesa/drivers/dri/radeon/radeon_chipset.h | 499 +--------------- src/mesa/drivers/dri/radeon/radeon_pci_ids.h | 23 + 18 files changed, 843 insertions(+), 1706 deletions(-) create mode 100644 src/egl/drivers/dri2/common.c create mode 100644 src/egl/drivers/dri2/pci_ids.h create mode 120000 src/gallium/targets/egl/pci_ids.h create mode 100644 src/mesa/drivers/dri/intel/i915_pci_ids.h create mode 100644 src/mesa/drivers/dri/intel/i965_pci_ids.h create mode 100644 src/mesa/drivers/dri/radeon/r200_pci_ids.h create mode 100644 src/mesa/drivers/dri/radeon/r300_pci_ids.h create mode 100644 src/mesa/drivers/dri/radeon/r600_pci_ids.h create mode 100644 src/mesa/drivers/dri/radeon/radeon_pci_ids.h -- 1.7.3.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev