On Mon, Jun 6, 2011 at 11:49 AM, Benjamin Franzke <benjaminfran...@googlemail.com> wrote: > 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
For completeness sake, it would be nice to convert r300g to use r300_pci_ids.h and remove is_r3xx() and hence radeon_drm_public.h. Alex > > 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 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev