[PATCH 0/6] drm: Add struct drm_plane_helper_funcs.atomic_enable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Add atomic_enable, a plane helper that enables a plane. It is supposed
to be the inverse of atomic_disable.

While atomic_update can handle all of a plane's enable, disable and
update functionality, many drivers also implement atomic_disable to
do disabling separately. Some drivers also try to detect whether the
plane gets enabled and can benefit if DRM's atomic helpers already
do this. Give them the respective callback. At least in the case of
ast, avoiding to enable the primary plane improves performance with
some BMCs.

Tested on AST2100 hardware.

Thomas Zimmermann (6):
  drm/atomic-helper: Add atomic_enable plane-helper callback
  drm/ast: Implement struct drm_plane_helper_funcs.atomic_enable
  drm/mgag200: Remove disable handling from atomic_update
  drm/mgag200: Implement struct drm_plane_helper_funcs.atomic_enable
  drm/tidss: Remove return values from dispc_plane_{setup,enable}()
  drm/tidss: Implement struct drm_plane_helper_funcs.atomic_enable

 drivers/gpu/drm/ast/ast_mode.c           | 28 ++++++++++++++++-------
 drivers/gpu/drm/drm_atomic_helper.c      | 20 ++++++++++++----
 drivers/gpu/drm/mgag200/mgag200_drv.h    |  3 +++
 drivers/gpu/drm/mgag200/mgag200_mode.c   | 22 ++++++++++--------
 drivers/gpu/drm/tidss/tidss_dispc.c      | 12 ++++------
 drivers/gpu/drm/tidss/tidss_dispc.h      |  8 +++----
 drivers/gpu/drm/tidss/tidss_plane.c      | 20 ++++++++--------
 include/drm/drm_atomic_helper.h          | 26 +++++++++++++++++++++
 include/drm/drm_modeset_helper_vtables.h | 29 +++++++++++++++++++++++-
 9 files changed, 124 insertions(+), 44 deletions(-)


base-commit: 1a019dd7a5d25f7c1c9b77931138290e28947e6a
-- 
2.39.1




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux