]> git.karo-electronics.de Git - karo-tx-linux.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)
commitc103d1cfb3543f61ec44d4d15a84c888db84794d
tree9ff29a9c2cbc4ced0113299151002b1b76468866
parentaf93629d1524dfff7df215b7de692f4de5ee855f
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]