[RFC v4 0/8] Add Plane Color Properties
Uma Shankar
uma.shankar at intel.com
Fri Aug 17 14:18:43 UTC 2018
This patch series adds properties for plane color features. It adds
properties for degamma used to linearize data, CSC used for gamut
conversion, and gamma used to again non-linearize data as per panel
supported color space. These can be utilize by user space to convert
planes from one format to another, one color space to another etc.
Usersapce can take smart blending decisions and utilize these hardware
supported plane color features to get accurate color profile. The same
can help in consistent color quality from source to panel taking
advantage of advanced color features in hardware.
These patches just add the property interfaces and enable helper
functions.
This series adds Intel Gen9 specific plane gamma feature. We can
build up and add other platform/hardware specific implementation
on top of this series
Note: This is just to get a design feedback whether these interfaces
look ok. Based on community feedback on interfaces, we will implement
IGT tests to validate plane color features. This is un-tested currently.
Userspace implementation using these properties have been done in drm
hwcomposer by "Alexandru-Cosmin Gheorghe Alexandru-Cosmin.Gheorghe at arm.com"
from ARM. A merge request has been opened by Alexandru for drm_hwcomposer,
implementing the property changes for the same. Please review that as well:
https://gitlab.freedesktop.org/drm-hwcomposer/drm-hwcomposer/merge_requests/25
v2: Dropped legacy gamma table for plane as suggested by Maarten. Added
Gen9/BDW plane gamma feature and rebase on tot.
v3: Added a new drm_color_lut_ext structure to accommodate 32 bit precision
entries, pointed to by Brian, Starkey for HDR usecases. Addressed Sean,Paul
comments and moved plane color properties to drm_plane instead of
mode_config. Added property documentation as suggested by Daniel, Vetter.
Fixed a rebase fumble which occurred in v2, pointed by Emil Velikov.
v4: Rebase
Uma Shankar (8):
drm: Add Enhanced Gamma LUT precision structure
drm: Add Plane Degamma properties
drm: Add Plane CTM property
drm: Add Plane Gamma properties
drm: Define helper function for plane color enabling
drm/i915: Enable plane color features
drm/i915: Implement Plane Gamma for Bdw and Gen9 platforms
drm/i915: Load plane color luts from atomic flip
Documentation/gpu/drm-kms.rst | 18 ++++
drivers/gpu/drm/drm_atomic.c | 32 ++++++++
drivers/gpu/drm/drm_atomic_helper.c | 13 +++
drivers/gpu/drm/drm_plane.c | 131 ++++++++++++++++++++++++++++++
drivers/gpu/drm/i915/i915_drv.h | 5 ++
drivers/gpu/drm/i915/i915_pci.c | 5 +-
drivers/gpu/drm/i915/i915_reg.h | 25 ++++++
drivers/gpu/drm/i915/intel_atomic_plane.c | 4 +
drivers/gpu/drm/i915/intel_color.c | 80 ++++++++++++++++++
drivers/gpu/drm/i915/intel_device_info.h | 5 ++
drivers/gpu/drm/i915/intel_display.c | 4 +
drivers/gpu/drm/i915/intel_drv.h | 10 +++
drivers/gpu/drm/i915/intel_sprite.c | 4 +
include/drm/drm_color_mgmt.h | 5 ++
include/drm/drm_plane.h | 61 ++++++++++++++
include/uapi/drm/drm_mode.h | 15 ++++
16 files changed, 416 insertions(+), 1 deletion(-)
--
1.9.1
More information about the dri-devel
mailing list