From: Ville Syrjälä <>

Here's a refresh of Jyri's COLOR_ENCODING and COLOR_RANGE properties,
and the i915 implementation I did on top. I tossed in a few core
updates as well: plane state dump, and the BT.2020 constant luminance

Apparently nouveau is already exposing a "iturbt_709" bool property
which allows one to choose between BT.601 and BT.709 encodings, but
given that we want at least BT.2020 in addition I don't think that
property is good enough. Trying to implement it, and somehow extend
it beyond BT.601 vs. BT.709 seems like wasted effort. Hence I think
we should just ignore it and move on.

My userspace implementation in the form of intel ddx
XV_COLORSPACE attribute:

Cc: Harry Wentland <>
Cc: Daniel Vetter <>
Cc: Daniel Stone <>
Cc: Russell King - ARM Linux <>
Cc: Ilia Mirkin <>
Cc: Hans Verkuil <>
Cc: Uma Shankar <>
Cc: Shashank Sharma <>

Jyri Sarha (1):
  drm: Add optional COLOR_ENCODING and COLOR_RANGE properties to

Ville Syrjälä (7):
  drm: Add BT.2020 constant luminance enum value for the COLOR_ENCODING
  drm/atomic: Include color encoding/range in plane state dump
  drm/i915: Correctly handle limited range YCbCr data on VLV/CHV
  drm/i915: Fix plane YCbCr->RGB conversion for GLK
  drm/i915: Add support for the YCbCr COLOR_ENCODING property
  drm/i915: Change the COLOR_ENCODING prop default value to BT.709
  drm/i915: Add support for the YCbCr COLOR_RANGE property

 drivers/gpu/drm/drm_atomic.c         |  12 ++++
 drivers/gpu/drm/drm_color_mgmt.c     | 108 ++++++++++++++++++++++++++++
 drivers/gpu/drm/drm_crtc_internal.h  |   2 +
 drivers/gpu/drm/i915/i915_reg.h      |  24 ++++++-
 drivers/gpu/drm/i915/intel_display.c |  25 +++++++
 drivers/gpu/drm/i915/intel_drv.h     |   2 +
 drivers/gpu/drm/i915/intel_sprite.c  | 134 ++++++++++++++++++++++++++++-------
 include/drm/drm_color_mgmt.h         |  20 ++++++
 include/drm/drm_plane.h              |   8 +++
 9 files changed, 309 insertions(+), 26 deletions(-)


Intel-gfx mailing list

Reply via email to