diff options
author | Rob Clark <robdclark@gmail.com> | 2016-09-03 15:16:31 -0400 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2016-09-26 17:40:13 -0400 |
commit | 0222f5db00fd47fb745402514a6d8cf2747f8434 (patch) | |
tree | 2d940c51274f52b0bc60a2f35e31e5c954b7e0ca /CMakeLists.txt | |
parent | bd352500c08c4f5cf6e7e46e53a4558fbde328fe (diff) |
dmabuf: fix YUV tests for drivers other than intel
Ok, so the basic problem with the YUV tests is that they currently
completely ignore driver/hw pitch requirements, since the code that
allocates the buffer doesn't know the pixel format, only the 'cpp'.
The yuv test creates a small 4x4 yuv eglimage. If, say, the hardware
requires the pitch to be aligned to, say, 32pixels, everything is fine
for the Y plane, but the subsampled U/V or U+V plane has half as many
pixels. (This did help me catch a bug in driver, not rejecting the
dmabuf import with invalid pitch, but that doesn't help to get the
piglit tests running.)
The best approach I could come up with to fix this is to pass the
fourcc all the way down to the code that creates the dmabuf (and copies
src data into the dmabuf). Unfortunately this makes the patch a bit
bigger than I was hoping, and not really sure a good way to split it
up.
This is tested on i965 (with the intel dma-buf backend) and freedreno
(with the gbm dma-buf backend). In the gbm case, it requires new
gbm format values for R8 and GR88, which is on mesa master as of
this morning. (So I bumped the gbm version dependency to 12.1.)
Signed-off-by: Rob Clark <robdclark@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index ce7f3f8aa..4002fe9bf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -141,7 +141,7 @@ IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") if(GBM_FOUND) set(PIGLIT_HAS_GBM True) add_definitions(-DPIGLIT_HAS_GBM) - if (GBM_VERSION VERSION_EQUAL "12.0" OR GBM_VERSION VERSION_GREATER "12.0") + if (GBM_VERSION VERSION_EQUAL "12.1" OR GBM_VERSION VERSION_GREATER "12.1") set(PIGLIT_HAS_GBM_BO_MAP True) add_definitions(-DPIGLIT_HAS_GBM_BO_MAP) endif() |