mbox series

[v3,00/14] Add HDR Metadata Parsing and handling in DRM layer

Message ID 1544567719-15745-1-git-send-email-uma.shankar@intel.com (mailing list archive)
Headers show
Series Add HDR Metadata Parsing and handling in DRM layer | expand

Message

Shankar, Uma Dec. 11, 2018, 10:35 p.m. UTC
This patch series enables HDR support in drm. It basically defines
HDR metadata structures, property to pass content (after blending)
metadata from user space compositors to driver.

Dynamic Range and Mastering infoframe creation and sending.

ToDo:
1. We need to get the color framework in place for all planes
   which support HDR content in hardware. This is already in progres
   and patches are out for review in mailing list.
2. UserSpace/Compositors: Blending policies and metadata blob
   creation and passing to driver. Work is already in progress
   by Intel's middleware teams on wayland and we should be getting
   the initial version pretty soon for review.

Please review and share your feedbacks/suggestions.

Note: The intention for these patches is to get a design feedback on
the uapi changes, generic property design and infoframe handling.
This cannot get merged as of now without the userspace support in place.

A POC has already been developed by Ville based on wayland. Please refer
below link to see the component interactions and usage:
https://lists.freedesktop.org/archives/wayland-devel/2017-December/036403.html

v2: Updated Ville's POC changes to the patch series.Incorporated cleanups
and fixes from Ville. Rebase on latest drm-tip.

v3: Fixed a warning causing builds to break on CI. No major change.

Note: It took a while to float this version as there was no userspace
consumer for it and dependency on full userspace stack. However, things
are falling in place now. Media driver and VAAPI changes for HDR are
already out, with compositors changes also expected to land soon.

Uma Shankar (10):
  drm: Add HDR source metadata property
  drm: Add CEA extended tag blocks and HDR bitfield macros
  drm: Parse HDR metadata info from EDID
  drm: Parse Colorimetry data block from EDID
  drm/i915: Attach HDR metadata property to connector
  drm: Add HDR capability field to plane structure
  drm: Implement HDR source metadata set and get property handling
  drm: Enable HDR infoframe support
  drm/i915: Write HDR infoframe and send to panel
  drm/i915:Enabled Modeset when HDR Infoframe changes

Ville Syrjälä (4):
  drm/i915: [DO NOT MERGE] hack for glk board outputs
  drm/i915: Add HLG EOTF
  drm/i915: Enable infoframes on GLK+ for HDR
  drivers/video: Constantify function argument for HDMI infoframe log

 drivers/gpu/drm/drm_atomic.c        |   2 +
 drivers/gpu/drm/drm_atomic_uapi.c   |  13 ++++
 drivers/gpu/drm/drm_connector.c     |   6 ++
 drivers/gpu/drm/drm_edid.c          | 143 ++++++++++++++++++++++++++++++++++++
 drivers/gpu/drm/i915/i915_reg.h     |   4 +
 drivers/gpu/drm/i915/intel_atomic.c |  15 +++-
 drivers/gpu/drm/i915/intel_bios.c   |   7 ++
 drivers/gpu/drm/i915/intel_hdmi.c   |  43 ++++++++++-
 drivers/video/hdmi.c                | 129 ++++++++++++++++++++++++++++++++
 include/drm/drm_connector.h         |  12 +++
 include/drm/drm_edid.h              |   4 +
 include/drm/drm_mode_config.h       |   6 ++
 include/drm/drm_plane.h             |   3 +
 include/linux/hdmi.h                |  33 +++++++++
 include/uapi/drm/drm_mode.h         |  16 ++++
 15 files changed, 433 insertions(+), 3 deletions(-)