Here are some tests for the dma buffer importing. These are mostly things specifically listed down in the spec itself regarding attributes and their values. This version two adds three additional tests for sampling packed RGB, but testing of more complex planar (YUV) formats is left until one has the sampling support in place provided by the image external extension.
I augmented the framework to provide platform independent interface for creating and releasing the target buffers. I hope to re-use the logic for the external image testing later on. v2-v4: - clarifications on closing the buffers - added tests sampling RGB formatted buffers - check for EGL extensions, not for GL (added a utility for this) v5: - split tests into individual commits - introduced common header for drm fourcc formats Topi Pohjolainen (12): util: egl: support for skipping unsupported extension tests framework: hardware independent interface for dma buffers framework: support for creating dma buffers through libdrm tests: spec: EXT_image_dma_buf_import invalid hints tests: spec: EXT_image_dma_buf_import invalid attributes tests: spec: EXT_image_dma_buf_import missing attributes tests: spec: EXT_image_dma_buf_import fd ownership transfer tests: spec: EXT_image_dma_buf_import planar with multiple fds tests: spec: EXT_image_dma_buf_import planar with single fd tests: spec: EXT_image_dma_buf_import sample argb with miptree tests: spec: EXT_image_dma_buf_import sample xrgb with miptree tests: spec: EXT_image_dma_buf_import sample argb without miptree tests/spec/CMakeLists.txt | 1 + .../ext_image_dma_buf_import/CMakeLists.gles1.txt | 20 ++ .../ext_image_dma_buf_import/CMakeLists.gles2.txt | 16 ++ tests/spec/ext_image_dma_buf_import/CMakeLists.txt | 1 + tests/spec/ext_image_dma_buf_import/close_buffer.c | 117 +++++++++ .../spec/ext_image_dma_buf_import/create_yuv420.c | 154 +++++++++++ .../create_yuv420_same_fd.c | 135 ++++++++++ .../ext_image_dma_buf_fourcc.h | 33 +++ .../ext_image_dma_buf_import/invalid_attributes.c | 286 +++++++++++++++++++++ .../spec/ext_image_dma_buf_import/invalid_hints.c | 142 ++++++++++ .../ext_image_dma_buf_import/missing_attributes.c | 183 +++++++++++++ .../ext_image_dma_buf_import/sample_argb8888.c | 217 ++++++++++++++++ .../sample_argb8888_level_zero_only.c | 215 ++++++++++++++++ .../ext_image_dma_buf_import/sample_xrgb8888.c | 218 ++++++++++++++++ tests/util/CMakeLists.txt | 29 +++ tests/util/piglit-framework-gl.c | 24 ++ tests/util/piglit-framework-gl.h | 21 ++ .../util/piglit-framework-gl/piglit_drm_dma_buf.c | 222 ++++++++++++++++ .../util/piglit-framework-gl/piglit_drm_dma_buf.h | 37 +++ .../piglit-framework-gl/piglit_gbm_framework.c | 5 + .../util/piglit-framework-gl/piglit_gl_framework.h | 9 + .../piglit-framework-gl/piglit_x11_framework.c | 5 + tests/util/piglit-util-egl.c | 9 + tests/util/piglit-util-egl.h | 5 + 24 files changed, 2104 insertions(+) create mode 100644 tests/spec/ext_image_dma_buf_import/CMakeLists.gles1.txt create mode 100644 tests/spec/ext_image_dma_buf_import/CMakeLists.gles2.txt create mode 100644 tests/spec/ext_image_dma_buf_import/CMakeLists.txt create mode 100644 tests/spec/ext_image_dma_buf_import/close_buffer.c create mode 100644 tests/spec/ext_image_dma_buf_import/create_yuv420.c create mode 100644 tests/spec/ext_image_dma_buf_import/create_yuv420_same_fd.c create mode 100644 tests/spec/ext_image_dma_buf_import/ext_image_dma_buf_fourcc.h create mode 100644 tests/spec/ext_image_dma_buf_import/invalid_attributes.c create mode 100644 tests/spec/ext_image_dma_buf_import/invalid_hints.c create mode 100644 tests/spec/ext_image_dma_buf_import/missing_attributes.c create mode 100644 tests/spec/ext_image_dma_buf_import/sample_argb8888.c create mode 100644 tests/spec/ext_image_dma_buf_import/sample_argb8888_level_zero_only.c create mode 100644 tests/spec/ext_image_dma_buf_import/sample_xrgb8888.c create mode 100644 tests/util/piglit-framework-gl/piglit_drm_dma_buf.c create mode 100644 tests/util/piglit-framework-gl/piglit_drm_dma_buf.h -- 1.8.1.2 _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
