[v2,0/6] Enable HDR on MCA LSPCON based Gen9 devices
mbox series

Message ID 20191022143404.30442-1-uma.shankar@intel.com
Headers show
  • Enable HDR on MCA LSPCON based Gen9 devices
Related show


Uma Shankar Oct. 22, 2019, 2:33 p.m. UTC
Gen9 hardware supports HDMI2.0 through LSPCON chips. Extending HDR
support for MCA LSPCON based GEN9 devices.

SOC will drive LSPCON as DP and send HDR metadata as standard
DP SDP packets. LSPCON will be set to operate in PCON mode,
will receive the metadata and create Dynamic Range and
Mastering Infoframe (DRM packets) and send it to HDR capable
HDMI sink devices.

v2: Fixed Ville's review comments. Suppressed some warnings.
Patch 6 of the series is marked "Not for Merge" and is just for
reference to userspace people to incorporate in order to support
10bit content with 4K@60 resolutions.

Note: Based on reviews on v1 below changes are expected to be done
before we can merge this series (as per Ville's feedback):

a) Infoframe readout support
b) Stop sending infoframes to DVI sinks
c) Need to figure out how to disable the AVI infoframe
   once enabled (if it doesn't get automagically disabled
   when do a modeset), because otherwise when we switch
   displays from HDMI to DVI we will still send the infoframe
   to the DVI sink
d) DP state readout support for SDP packets.

Uma Shankar (6):
  drm/i915/display: Add HDR Capability detection for LSPCON
  drm/i915/display: Enable HDR on gen9 devices with MCA Lspcon
  drm/i915/display: Attach HDR property for capable Gen9 devices
  drm/i915/display: Set HDR Infoframe for HDR capable LSPCON devices
  drm/i915/display: Enable BT2020 for HDR on LSPCON devices
  [NOT FOR MERGE] drm/i915/display: Reduce blanking to support
    4k60@10bpp for LSPCON

 drivers/gpu/drm/drm_atomic_state_helper.c     |  1 +
 drivers/gpu/drm/drm_atomic_uapi.c             |  1 +
 drivers/gpu/drm/i915/display/intel_ddi.c      |  8 ++
 .../drm/i915/display/intel_display_types.h    |  1 +
 drivers/gpu/drm/i915/display/intel_dp.c       | 19 +++-
 drivers/gpu/drm/i915/display/intel_hdmi.c     | 10 ++
 drivers/gpu/drm/i915/display/intel_lspcon.c   | 91 ++++++++++++++++---
 drivers/gpu/drm/i915/display/intel_lspcon.h   |  8 ++
 include/drm/drm_connector.h                   |  1 +
 9 files changed, 128 insertions(+), 12 deletions(-)