]> git.baikalelectronics.ru Git - kernel.git/commit
drm: Add primary plane helpers (v3)
authorMatt Roper <matthew.d.roper@intel.com>
Tue, 1 Apr 2014 22:22:35 +0000 (15:22 -0700)
committerRob Clark <robdclark@gmail.com>
Wed, 2 Apr 2014 00:11:28 +0000 (20:11 -0400)
commit636c209900ed27b0c69398c1975a276fedff8afd
tree9ff29a9c2cbc4ced0113299151002b1b76468866
parentb32bff1e7249069f4f1a04c92072e14b2d1b7e0a
drm: Add primary plane helpers (v3)

When we expose non-overlay planes to userspace, they will become
accessible via standard userspace plane API's.  We should be able to
handle the standard plane operations against primary planes in a generic
way via the modeset handler.

Drivers that can program primary planes more efficiently, that want to
use their own primary plane structure to track additional information,
or that don't have the limitations assumed by the helpers are free to
provide their own implementation of some or all of these handlers.

v3: Tweak kerneldoc formatting slightly to avoid ugliness
v2:
 - Move plane helpers to a new file (drm_plane_helper.c)
 - Tighten checks on update handler (check for scaling, CRTC coverage,
   subpixel positioning)
 - Pass proper panning parameters to modeset interface
 - Disallow disabling primary plane (and thus CRTC) if other planes are
   still active on the CRTC.
 - Use a minimal format list that should work on all hardware/drivers.
   Drivers may call this function with a more accurate plane list to
   enable additional formats they can support.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Rob Clark <robdclark@gmail.com>
drivers/gpu/drm/Makefile
drivers/gpu/drm/drm_plane_helper.c [new file with mode: 0644]
include/drm/drm_plane_helper.h [new file with mode: 0644]