vl/dri3: use external texture as back buffers(v4)
authorNayan Deshmukh <nayan26deshmukh@gmail.com>
Wed, 11 Jan 2017 16:57:13 +0000 (22:27 +0530)
committerChristian König <christian.koenig@amd.com>
Tue, 17 Jan 2017 10:51:50 +0000 (11:51 +0100)
commit0ef17d76bbbc9506d50138f1b4d79db8ef08ad6d
tree8160ae3f190f1463f4f8ba51ed98838a3bfca921
parent9fe9db8031f4979fde0849855c6aca1a83432f4e
vl/dri3: use external texture as back buffers(v4)

dri3 allows us to send handle of a texture directly to X
so this patch allows a state tracker to directly send its
texture to X to be used as back buffer and avoids extra
copying

v2: use clip width/height to display a portion of the surface
v3: remove redundant variables, fix wrapping, rename variables
    handle vaapi path
v3.1: we need clip_width/height for every frame so we don't need
      to maintain it for each buffer instead use a global variable
v4: In case of single gpu we can cache the buffers as applications
    use constant number of buffer and we can avoid calls to present
    extension for every frame

Reviewed and Suggested-by: Leo Liu <leo.liu@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Tested-by: Andy Furniss <adf.lists@gmail.com>
Signed-off-by: Nayan Deshmukh <nayan26deshmukh@gmail.com>
configure.ac
src/gallium/auxiliary/vl/vl_winsys.h
src/gallium/auxiliary/vl/vl_winsys_dri3.c