[Mesa-dev] [PATCH 0/6] Per driver pci id lists

Benjamin Franzke benjaminfranzke at googlemail.com
Mon Jun 6 08:49:26 PDT 2011


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



More information about the mesa-dev mailing list