Hi Dave, this tag contains support for the Prefetch Resolve Engine/Gasket that was bolted onto the IPU on i.MX6QP to improve memory read bandwidth utilization and eventually allow direct scanout from tiled GPU renderbuffers. Also we stop busy waiting in the atomic plane disable and crtc disable paths, which would cause wait_for_vblank timeouts. Support for RGBA formats with the alpha channel on a separate plane, allows to save memory bandwidth by skipping burst reads on the RGB plane if all alpha components of a burst are zero. Then there are a few fixes and cleanups, like using a helper in plane atomic_check, allowing to move the overlay plane without enforcing a modeset, and removing an unused structure definition. regards Philipp The following changes since commit 9c233760a65cec0c98df7b62bc5185d8889e5fc7: Merge tag 'drm-misc-next-2017-03-12' of git://anongit.freedesktop.org/git/drm-misc into drm-next (2017-03-15 11:32:01 +1000) are available in the git repository at: git://git.pengutronix.de/git/pza/linux.git tags/imx-drm-next-2017-03-17 for you to fetch changes up to 7d5ed2920d15a8583084f7ca689a30277ef9af55: drm/imx: Remove unneeded definition for structure imx_drm_component (2017-03-16 10:14:52 +0100) ---------------------------------------------------------------- imx-drm PRE/PRG support, deferred plane disabling, separate alpha support - Initial support for the Prefetch Resolve Engine/Gasket on i.MX6QP, improving linear scanout buffer memory bandwidth utilization. This will in the future grow reordering support and allow direct scanout of Vivante tiled renderbuffers from the GPU. - Deferred plane disabling gets rid of some busy waiting in the atomic plane disable and crtc disable paths that lead to wait_for_vblank timeouts. - Add support for RGBA formats with a separate alpha plane, that can reduce memory bandwidth utilization for mostly transparent overlay planes by skipping color reads for completely transparent regions. - Allow moving an active overlay plane without enforcing a modeset. - Add 8-bit and 16-bit bayer formats to ipu_cpmem_set_image. - Set the base address in ipu_cpmem_set_image even for invalid formats to increase robustness against errors. - Use drm_plane_helper_check_state in plane atomic_check. - Some cleanup. ---------------------------------------------------------------- Liu Ying (1): drm/imx: Remove unneeded definition for structure imx_drm_component Lucas Stach (10): gpu: ipu-v3: remove IRQ dance on DC channel disable gpu: ipu-v3: add DT binding for the Prefetch Resolve Engine gpu: ipu-v3: add driver for Prefetch Resolve Engine gpu: ipu-v3: add DT binding for the Prefetch Resolve Gasket gpu: ipu-v3: add driver for Prefetch Resolve Gasket gpu: ipu-v3: document valid IPUv3 compatibles and extend for i.MX6 QuadPlus gpu: ipu-v3: hook up PRG unit gpu: ipu-v3: only set non-zero AXI ID for IC when PRG is absent drm/imx: enable/disable PRG on CRTC enable/disable drm/imx: use PRG/PRE when possible Philipp Zabel (11): drm/imx: ipuv3-plane: use drm_plane_helper_check_state, clipped coordinates drm/imx: ipuv3-plane: update overlay plane position also without modeset gpu: ipu-cpmem: set image base address even for incorrect formats gpu: ipu-cpmem: add bayer formats to ipu_cpmem_set_image gpu: ipu-v3: add unsynchronised DP channel disabling drm/imx: don't wait for vblank and stop calling cleanup_planes in commit_tail drm/imx: add deferred plane disabling drm: add RGB formats with separate alpha plane gpu: ipu-v3: add support for separate alpha channels drm/imx: extend drm_plane_state_to_eba for separate channel support drm/imx: ipuv3-plane: add support for separate alpha planes .../bindings/display/imx/fsl-imx-drm.txt | 59 ++- drivers/gpu/drm/drm_fourcc.c | 8 + drivers/gpu/drm/imx/imx-drm-core.c | 30 +- drivers/gpu/drm/imx/imx-drm.h | 3 + drivers/gpu/drm/imx/ipuv3-crtc.c | 24 +- drivers/gpu/drm/imx/ipuv3-plane.c | 344 ++++++++++++++--- drivers/gpu/drm/imx/ipuv3-plane.h | 6 + drivers/gpu/ipu-v3/Makefile | 2 +- drivers/gpu/ipu-v3/ipu-common.c | 43 ++- drivers/gpu/ipu-v3/ipu-cpmem.c | 78 +++- drivers/gpu/ipu-v3/ipu-dc.c | 61 +-- drivers/gpu/ipu-v3/ipu-dp.c | 15 +- drivers/gpu/ipu-v3/ipu-image-convert.c | 7 +- drivers/gpu/ipu-v3/ipu-pre.c | 289 ++++++++++++++ drivers/gpu/ipu-v3/ipu-prg.c | 424 +++++++++++++++++++++ drivers/gpu/ipu-v3/ipu-prv.h | 27 +- include/uapi/drm/drm_fourcc.h | 14 + include/video/imx-ipu-v3.h | 39 +- 18 files changed, 1325 insertions(+), 148 deletions(-) create mode 100644 drivers/gpu/ipu-v3/ipu-pre.c create mode 100644 drivers/gpu/ipu-v3/ipu-prg.c _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel