[PATCH v4 0/7] drm/imx: Add active plane reconfiguration support
Liu Ying
gnuiyl at gmail.com
Fri Aug 26 07:30:37 UTC 2016
This patch adds active plane reconfiguration support for imx-drm.
This may fixes some mode setting failure issues which were introduced
by imx-drm atomic conversion patch set. The main idea is to disable the
plane in question in CRTC's atomic_disable operation and then the drm
atomic core will enable it again automatically.
v3->v4:
* Change the bool active_only parameter of commit_planes() to an uint32_t
parameter named 'flags' and add two flags - DRM_PLANE_COMMIT_ACTIVE_ONLY
and DRM_PLANE_COMMIT_NO_DISABLE_AFTER_MODESET. This way, the drm atomic
core is able to skip the atomic_disable call for the planes which are
committed with the NO_DISABLE_AFTER_MODESET flag set.
* Fix the helper disable_planes_on_crtc(), which is needed for CRTC's
atomic_disable callback to disable planes.
* Improve kernel-doc of CRTC's atomic_disable callback to address Daniel
Vetter's comment.
* Do not wait for DMFC FIFO to clear to avoid timeout warning, as the
precedure to disable display channel is changed slightly after the
NO_DISABLE_AFTER_MODESET flag is used.
v2->v3:
* Disable all appropriate affected planes(when necessary) in CRTC's
->atomic_disable callback, but not in each plane's ->atomic_update callback,
as suggested by Daniel Vetter.
* +Cc Lucas Stach, as he tested the patch v2.
v1->v2:
* Do not reject reconfiguring an active overlay plane.
Liu Ying (7):
drm/atomic-helper: Add atomic_disable CRTC helper callback
drm/atomic-helper: Disable appropriate planes in
disable_planes_on_crtc()
drm/atomic-helper: Add NO_DISABLE_AFTER_MODESET flag support for plane
commit
gpu: ipu-v3: Do not wait for DMFC FIFO to clear when disabling DMFC
channel
drm/imx: ipuv3-crtc: Use the callback ->atomic_disable instead of
->disable
drm/imx: Use DRM_PLANE_COMMIT_NO_DISABLE_AFTER_MODESET flag
drm/imx: Add active plane reconfiguration support
drivers/gpu/drm/arm/malidp_drv.c | 3 +-
drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 2 +-
drivers/gpu/drm/drm_atomic_helper.c | 64 +++++++++++++++++++---------
drivers/gpu/drm/exynos/exynos_drm_drv.c | 2 +-
drivers/gpu/drm/imx/imx-drm-core.c | 30 ++++++++++++-
drivers/gpu/drm/imx/ipuv3-crtc.c | 8 +++-
drivers/gpu/drm/imx/ipuv3-plane.c | 21 ++++++---
drivers/gpu/drm/mediatek/mtk_drm_drv.c | 6 ++-
drivers/gpu/drm/msm/msm_atomic.c | 2 +-
drivers/gpu/drm/omapdrm/omap_drv.c | 2 +-
drivers/gpu/drm/rcar-du/rcar_du_kms.c | 3 +-
drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 3 +-
drivers/gpu/drm/sti/sti_drv.c | 2 +-
drivers/gpu/drm/tegra/drm.c | 3 +-
drivers/gpu/drm/tilcdc/tilcdc_drv.c | 2 +-
drivers/gpu/drm/vc4/vc4_kms.c | 2 +-
drivers/gpu/drm/virtio/virtgpu_display.c | 3 +-
drivers/gpu/ipu-v3/ipu-dmfc.c | 18 +-------
include/drm/drm_atomic_helper.h | 11 +++--
include/drm/drm_modeset_helper_vtables.h | 24 +++++++++++
20 files changed, 146 insertions(+), 65 deletions(-)
--
2.7.4
More information about the dri-devel
mailing list