Commit ee589119 authored by Varad Gautam's avatar Varad Gautam Committed by Daniel Stone

clients/simple-dmabuf-drm: import with dmabuf modifiers

mesa's freedreno driver supports importing dmabufs with format
DRM_FORMAT_NV12 and DRM_FORMAT_MOD_SAMSUNG_64_32_TILE modifier.
demonstrate weston modifier advertising and import path using this
combination when run with --import-format=NV12.

v2:
 - hard code format if platform doesn't implement
   EGL_EXT_image_dma_buf_import_modifiers and cannot advertise
   format/modifier support.
 - squash using valid frame data to fill dmabuf planes
Signed-off-by: default avatarVarad Gautam <varad.gautam@collabora.com>
Reviewed-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
parent f7b3a396
...@@ -625,7 +625,9 @@ endif ...@@ -625,7 +625,9 @@ endif
if BUILD_SIMPLE_DMABUF_DRM_CLIENT if BUILD_SIMPLE_DMABUF_DRM_CLIENT
demo_clients += weston-simple-dmabuf-drm demo_clients += weston-simple-dmabuf-drm
weston_simple_dmabuf_drm_SOURCES = clients/simple-dmabuf-drm.c weston_simple_dmabuf_drm_SOURCES = \
clients/simple-dmabuf-drm.c \
clients/simple-dmabuf-drm-data.h
nodist_weston_simple_dmabuf_drm_SOURCES = \ nodist_weston_simple_dmabuf_drm_SOURCES = \
protocol/xdg-shell-unstable-v6-protocol.c \ protocol/xdg-shell-unstable-v6-protocol.c \
protocol/xdg-shell-unstable-v6-client-protocol.h \ protocol/xdg-shell-unstable-v6-client-protocol.h \
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
...@@ -385,7 +385,7 @@ AC_ARG_ENABLE(simple-dmabuf-drm-client, ...@@ -385,7 +385,7 @@ AC_ARG_ENABLE(simple-dmabuf-drm-client,
[do not build the simple dmabuf drm client]),, [do not build the simple dmabuf drm client]),,
enable_simple_dmabuf_drm_client="auto") enable_simple_dmabuf_drm_client="auto")
if ! test "x$enable_simple_dmabuf_drm_client" = "xno"; then if ! test "x$enable_simple_dmabuf_drm_client" = "xno"; then
PKG_CHECK_MODULES(SIMPLE_DMABUF_DRM_CLIENT, [wayland-client libdrm], PKG_CHECK_MODULES(SIMPLE_DMABUF_DRM_CLIENT, [wayland-client libdrm egl],
[PKG_CHECK_MODULES(LIBDRM_PLATFORM, [libdrm_freedreno], [PKG_CHECK_MODULES(LIBDRM_PLATFORM, [libdrm_freedreno],
AC_DEFINE([HAVE_LIBDRM_FREEDRENO], [1], [Build freedreno dmabuf client]) have_simple_dmabuf_drm_client=freedreno, AC_DEFINE([HAVE_LIBDRM_FREEDRENO], [1], [Build freedreno dmabuf client]) have_simple_dmabuf_drm_client=freedreno,
[PKG_CHECK_MODULES(LIBDRM_PLATFORM, [libdrm_intel], [PKG_CHECK_MODULES(LIBDRM_PLATFORM, [libdrm_intel],
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment