This introduces support for YUV formats in the sun4i DRM driver, through the frontend. In addition to regular YUV formats, a modifier for the Allwinner MB32 tiling format is introduced along with a dedicated ioctl for allocating buffers (through CMA) with the appropriate constraints. This ioctl must always be used when allocating buffers to be used with the MB32 tiling modifier, as dumb GEM buffer allocation is reserved for linear planes. This series is based on (and requires) the following series: * drm/sun4i: backend: Support interleaved YUV planes, from Maxime Ripard: https://patchwork.freedesktop.org/series/39232/ * drm/sun4i: Support the Display Engine frontend, from Maxime Ripard: https://patchwork.freedesktop.org/series/35292/ * drm/sun4i: Support more planes, zpos and plane-wide alpha, from Maxime Ripard: https://patchwork.freedesktop.org/series/36183/ Paul Kocialkowski (10): drm/sun4i: Disable frontend video channel before enabling a layer drm/sun4i: Disable YUV channel when using the frontend and set interlace drm/sun4i: Don't pretend to handle ARGB8888 with the frontend drm/sun4i: Explicitly list and check formats supported by the backend drm/sun4i: Explicitly list and check formats supported by the frontend drm/sun4i: Move and extend format-related helpers and tables drm/sun4i: Add support for YUV formats through the frontend drm/fourcc: Add definitions for Allwinner vendor and MB32 tiled format drm/sun4i: Add a dedicated ioctl call for allocating tiled buffers drm/sun4i: Add support for YUV-based formats in MB32 tiles drivers/gpu/drm/sun4i/Makefile | 1 + drivers/gpu/drm/sun4i/sun4i_backend.c | 148 +++++++++----- drivers/gpu/drm/sun4i/sun4i_backend.h | 6 +- drivers/gpu/drm/sun4i/sun4i_drv.c | 108 +++++++++- drivers/gpu/drm/sun4i/sun4i_drv.h | 6 + drivers/gpu/drm/sun4i/sun4i_format.c | 193 ++++++++++++++++++ drivers/gpu/drm/sun4i/sun4i_format.h | 35 ++++ drivers/gpu/drm/sun4i/sun4i_frontend.c | 359 +++++++++++++++++++++++++++++---- drivers/gpu/drm/sun4i/sun4i_frontend.h | 50 ++++- drivers/gpu/drm/sun4i/sun4i_layer.c | 58 ++++-- include/uapi/drm/drm_fourcc.h | 10 + include/uapi/drm/sun4i_drm.h | 42 ++++ 12 files changed, 910 insertions(+), 106 deletions(-) create mode 100644 drivers/gpu/drm/sun4i/sun4i_format.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_format.h create mode 100644 include/uapi/drm/sun4i_drm.h -- 2.16.2 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel