[PATCH v2 00/12] drm/exynos: rework vblank handling

Andrzej Hajda a.hajda at samsung.com
Wed Mar 8 14:58:34 UTC 2017


Hi Inki,

This patchset fixes long standing issue with occassional page faults
or vblank event timeouts on TM2 targets due to delayed vblank handling.
DECON driver should now handle properly all scenarios described in drm
docs [1][2], at least it was my intention.

The patchset also:
- adds frame counter callback,
- fixes VBLANK interrupt trigger time,
- fixes soft-trigger mask,
- removes redundant pipe related fields.

The patch is based on todays linux-next, the real dependency is on the Shawn patchset
'Add vblank hooks to struct drm_crtc_funcs'.

I have successfully tested it on TM2 panel, TV and both.

[1]: https://dri.freedesktop.org/docs/drm/gpu/drm-kms.html?highlight=drm_crtc_state#c.drm_crtc_arm_vblank_event
[2]: https://dri.freedesktop.org/docs/drm/gpu/drm-kms.html?highlight=drm_crtc_state#c.drm_crtc_state

Regards
Andrzej


Andrzej Hajda (12):
  drm/exynos: move crtc event handling to drivers callbacks
  drm/exynos: simplify completion event handling
  drm/exynos/decon5433: fix vblank event handling
  drm/exynos/decon5433: implement frame counter
  drm/exynos/decon5433: signal frame done interrupt at front porch
  drm/exynos/fimd: signal frame done interrupt at front porch
  drm/exynos/decon5433: fix software trigger mask
  drm/exynos: kill exynos_drm_crtc::pipe
  drm/exynos: kill exynos_drm_private::pipe
  drm/exynos: set plane possible_crtcs in exynos_plane_init
  drm/exynos: kill pipe field from drivers contexts
  drm/exynos: kill mode_set_nofb callback

 drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 119 +++++++++++++++++++++-----
 drivers/gpu/drm/exynos/exynos7_drm_decon.c    |  20 ++---
 drivers/gpu/drm/exynos/exynos_drm_crtc.c      |  65 +++++++-------
 drivers/gpu/drm/exynos/exynos_drm_crtc.h      |   3 +-
 drivers/gpu/drm/exynos/exynos_drm_drv.h       |  14 +--
 drivers/gpu/drm/exynos/exynos_drm_fimd.c      |  28 ++----
 drivers/gpu/drm/exynos/exynos_drm_plane.c     |   5 +-
 drivers/gpu/drm/exynos/exynos_drm_plane.h     |   1 -
 drivers/gpu/drm/exynos/exynos_drm_vidi.c      |  23 +----
 drivers/gpu/drm/exynos/exynos_mixer.c         |  14 +--
 include/video/exynos5433_decon.h              |  12 +++
 11 files changed, 166 insertions(+), 138 deletions(-)

-- 
2.7.4



More information about the dri-devel mailing list