]> 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)
commit8fe6f06509e7f190f08ab6330e1107d9111866e5
tree9ff29a9c2cbc4ced0113299151002b1b76468866
parenta16f7cb8f334d35d1d9c1785c008fe2c852fab5b
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]