[PATCH v2 00/11] drm/exynos: improve atomic modesetting

Gustavo Padovan gustavo at padovan.org
Wed Aug 26 10:43:16 PDT 2015

From: Gustavo Padovan <gustavo.padovan at collabora.co.uk>


This patchset adds a couple of changes to improve atomic modesetting:

 * add check for the START shadow register for FIMD to only finish the update
 when the screen was actually updated.
 * add asynchronous atomic commit, so now page flips can be run asynchronously.
 It also add infrastructure to serialize commits for the same CRTC and wait all
 plane updates to finish.
 * enable the DRIVER_ATOMIC feature to enable userspace to use atomic IOCTL with

v2: rename prepare_plane/cleanup_plane to atomic_begin/atomic_flush

Please review.


Gustavo Padovan (11):
  drm/exynos: don't track enabled state at exynos_crtc
  drm/exynos: fimd: unify call to exynos_drm_crtc_finish_pageflip()
  drm/exynos: add begin and flush phases for planes
  drm/exynos: fimd: move window protect code to atomic_begin/flush
  drm/exynos: check for pending fb before finish update
  drm/exynos: add macro to get the address of START_S reg
  drm/exynos: fimd: only finish update if START == START_S
  drm/exynos: add atomic asynchronous commit
  drm/exynos: wait all planes updates to finish
  drm/exynos: remove wait queue for pending page flip
  drm/exynos: Enable atomic modesetting feature

 drivers/gpu/drm/exynos/exynos5433_drm_decon.c |  10 +-
 drivers/gpu/drm/exynos/exynos7_drm_decon.c    |  10 +-
 drivers/gpu/drm/exynos/exynos_drm_crtc.c      |  69 +++++------
 drivers/gpu/drm/exynos/exynos_drm_crtc.h      |   4 +-
 drivers/gpu/drm/exynos/exynos_drm_drv.c       | 158 +++++++++++++++++++++++++-
 drivers/gpu/drm/exynos/exynos_drm_drv.h       |  24 +++-
 drivers/gpu/drm/exynos/exynos_drm_fb.c        |  35 ------
 drivers/gpu/drm/exynos/exynos_drm_fimd.c      |  81 ++++++++-----
 drivers/gpu/drm/exynos/exynos_drm_plane.c     |   2 +
 drivers/gpu/drm/exynos/exynos_drm_vidi.c      |  10 +-
 drivers/gpu/drm/exynos/exynos_mixer.c         |  10 +-
 include/video/samsung_fimd.h                  |   1 +
 12 files changed, 309 insertions(+), 105 deletions(-)


More information about the dri-devel mailing list