[PATCH 0/2] CRTC background color support for i915
Matt Roper
matthew.d.roper at intel.com
Thu Oct 22 17:25:33 PDT 2015
Recent Intel platforms (SKL+) support a background canvas color below the
hardware planes. This background color can be seen on areas not covered by a
plane, or if we program the hardware with various plane blending modes.
Chandra Konduru previously took a stab at writing i915 patches to support this
feature, but we were in the middle of the great i915 atomic transition at the
time, so there was too much driver churn to ever get them in. Now that i915
atomic work has settled down a bit, let's make another attempt to get this
feature support in.
One of the items that came up in review of Chandra's earlier patches was that
although userspace needs to pass a color value to the kernel, it would be best
if userspace didn't have to care about the formatting of color values used by
the underyling hardware (i.e., number of bits, ordering of R,G,B components,
etc.). The first patch here aims to address that by setting up an 'RGBA'
property type, specifying a fixed bit layout (with 16bpc), and providing helper
macros to fetch specific color bits with the desired precision. This should
prevent drivers from trying to shove property values directly into the
hardware, which could lead to incompatibility between platforms if we aren't
careful.
A libdrm patch that provides helper macros to build color values of the
appropriate format will be provided as a followup, as will an update to
the i-g-t test for this feature (which is surprisingly already merged, even
though the kernel support isn't there yet).
Cc: dri-devel at lists.freedesktop.org
Cc: Chandra Konduru <chandra.konduru at intel.com>
Matt Roper (2):
drm: Add infrastructure for CRTC background color property
drm/i915/skl: Add support for pipe background color
Documentation/DocBook/gpu.tmpl | 10 +++++++-
drivers/gpu/drm/drm_atomic.c | 4 +++
drivers/gpu/drm/drm_crtc.c | 33 ++++++++++++++++++++++++
drivers/gpu/drm/i915/i915_debugfs.c | 9 +++++++
drivers/gpu/drm/i915/i915_reg.h | 10 ++++++++
drivers/gpu/drm/i915/intel_display.c | 43 +++++++++++++++++++++++++++++++
include/drm/drm_crtc.h | 49 ++++++++++++++++++++++++++++++++++++
7 files changed, 157 insertions(+), 1 deletion(-)
--
2.1.4
More information about the dri-devel
mailing list