gallium: Add a dumb drm/kms winsys backed swrast provider
authorGiovanni Campagna <gcampagna@src.gnome.org>
Wed, 23 Jul 2014 18:37:31 +0000 (19:37 +0100)
committerEmil Velikov <emil.l.velikov@gmail.com>
Wed, 30 Jul 2014 15:33:09 +0000 (16:33 +0100)
commit3b176c441b7ddc5f7d2f891da3f76cf3c1814ce1
treea99421810f0150b9759363fb56910a160d10ad97
parent8430af5ebe1ee8119e14ae8fe00ec98fda40c57f
gallium: Add a dumb drm/kms winsys backed swrast provider

Add a new winsys and target that can be used with a dri2 state tracker
and loader instead of drisw. This allows to use gbm as a dri2/image
loader and avoid the extra copy from the backbuffer to the shadow
frontbuffer.

The new driver is called "kms_swrast", and is loaded by gbm as a
fallback, because it is only useful with the gbm platform (as no buffer
sharing is possible)

To force select the driver set the environment variable
GBM_ALWAYS_SOFTWARE

[Emil Velikov]
 - Rebase on top of gallium megadriver.
 - s/text/test/ in configure.ac (Spotted by Andreas Pokorny).
 - Add scons support for winsys/sw/kms-dri and fix the build.
 - Provide separate DriverAPI, due to different InitScreen hook.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
14 files changed:
configure.ac
docs/relnotes/10.3.html
src/gallium/SConscript
src/gallium/auxiliary/target-helpers/inline_drm_helper.h
src/gallium/state_trackers/dri/dri2.c
src/gallium/state_trackers/dri/dri_screen.h
src/gallium/targets/dri/Makefile.am
src/gallium/targets/dri/SConscript
src/gallium/winsys/Makefile.am
src/gallium/winsys/sw/kms-dri/Makefile.am [new file with mode: 0644]
src/gallium/winsys/sw/kms-dri/SConscript [new file with mode: 0644]
src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c [new file with mode: 0644]
src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.h [new file with mode: 0644]
src/gbm/backends/dri/gbm_dri.c