[PATCH v9 0/8] drm/i915/dp: Support for DP HDR outputs
Ville Syrjälä
ville.syrjala at linux.intel.com
Fri Sep 20 16:06:27 UTC 2019
On Thu, Sep 19, 2019 at 10:53:03PM +0300, Gwan-gyeong Mun wrote:
> Support for HDR10 video was introduced in DisplayPort 1.4.
> On GLK+ platform, in order to use DisplayPort HDR10, we need to support
> BT.2020 colorimetry and HDR Static metadata.
> It implements the CTA-861-G standard for transport of static HDR metadata.
> It enables writing of HDR metadata infoframe SDP to the panel.
> The HDR Metadata will be provided by userspace compositors, based on
> blending policies and passed to the driver through a blob property.
> And It refactors, renames and extends a function which handled vsc sdp
> header and data block setup for supporting colorimetry format.
> And It attaches the colorspace connector property and HDR metadata property
> to a DisplayPort connector.
>
> These patches tested on below test environment.
> Test Environment:
> - Tested System: GLK and Gen11 platform.
> - Monitor: Dell UP2718Q 4K HDR Monitor.
> - In order to test DP HDR10, test environment uses patched Kodi-gbm,
> patched Media driver and HDR10 video.
>
> You can find these on below.
> [patched Kodi-gbm]
> - repo: https://github.com/Kwiboo/xbmc/tree/drmprime-hdr
> [download 4K HDR video file]
> - link: https://4kmedia.org/lg-new-york-hdr-uhd-4k-demo/
> [Media Driver for GLK]
> - repo https://gitlab.freedesktop.org/emersion/intel-vaapi-driver
> master branch
> [Media Driver for ICL]
> - repo: https://github.com/harishkrupo/media-driver/tree/p010_composite
>
> v2:
> - Add a missed blank line after function declaration.
> - Remove useless parentheses.
> - Minor style fix.
>
> v3:
> - Remove not handled return values from
> intel_dp_setup_hdr_metadata_infoframe_sdp(). [Uma]
> - Add handling of different register size for
> HDMI_PACKET_TYPE_GAMUT_METADATA on hsw_dip_data_size() for each GEN
> platforms [Uma]
> - Add new colorimetry options for DP 1.4a spec. [Ville]
> - Separate set of colorimetry enum values for DP. [Ville]
> - In order to checking output format and output colorspace on
> intel_dp_needs_vsc_sdp(), it passes entire intel_crtc_state stucture.[Ville]
> - Remove a pointless variable. [Ville]
>
> v4:
> - Add additional comments to struct drm_prop_enum_list.
> - Polishing an enum string of struct drm_prop_enum_list.
>
> v5:
> - Change definitions of DRM_MODE_COLORIMETRYs to follow HDMI prefix and
> DP abbreviations.
> - Add missed variables on dp_colorspaces.
> - Fix typo. [Uma]
>
> v6:
> - Addressed review comments from Ilia and Ville
> Split drm_mode_create_colorspace_property() to DP and HDMI connector.
> Becasue between HDMI and DP have different colorspaces, it renames
> drm_mode_create_colorspace_property() function to
> drm_mode_create_hdmi_colorspace_property() function for HDMI connector.
> And it adds drm_mode_create_dp_colorspace_property() function for
> creating of DP colorspace property.
> In order to apply changed and added drm api, i915 driver has channged.
>
> v7:
> - Fix typo [Jani Saarinen]
> - Fix white space.
>
> v8:
> - Addressed review comments from Ville
> Drop colorimetries which have another way to distinguish or which would
> not be used.
>
> v9:
> - Addressed review comments from Ville
> - Remove a duplicated output color space from intel_crtc_state.
> - In order to handle colorspace of drm_connector_state, it moves a calling
> of intel_ddi_set_pipe_settings() function into intel_ddi_pre_enable_dp()
> - Split hunk into renaming and adding of code.
> - Add a handling of drm_mode_create_dp_colorspace_property() to
> intel_attach_colorspace_property().
> - Add WARN_ON() when buffer size if larger than register size.
> - Add BUILD_BUG_ON to check a changing of struct dp_sdp size.
> - Change a passed size toward write_infoframe() for DP infoframe sdp
> packet for HDR static metadata.
>
>
> Gwan-gyeong Mun (8):
> drm/i915/dp: Extend program of VSC Header and DB for Colorimetry
> Format
> drm/i915/dp: Add support of BT.2020 Colorimetry to DP MSA
> drm: Rename HDMI colorspace property creation function
> drm: Add DisplayPort colorspace property creation function
> drm/i915/dp: Attach colorspace property
> drm/i915: Add new GMP register size for GEN11
> drm/i915/dp: Program an Infoframe SDP Header and DB for HDR Static
> Metadata
> drm/i915/dp: Attach HDR metadata property to DP connector
Thanks. The series lgtm. I've pushed the core bits into drm-misc-next.
We can proceed with the rest once those make their way back into dinq.
>
> drivers/gpu/drm/drm_connector.c | 101 +++++++--
> .../gpu/drm/i915/display/intel_connector.c | 21 +-
> drivers/gpu/drm/i915/display/intel_ddi.c | 17 +-
> drivers/gpu/drm/i915/display/intel_ddi.h | 3 +-
> drivers/gpu/drm/i915/display/intel_display.c | 1 -
> drivers/gpu/drm/i915/display/intel_display.h | 2 -
> drivers/gpu/drm/i915/display/intel_dp.c | 196 ++++++++++++++++--
> drivers/gpu/drm/i915/display/intel_dp.h | 8 +
> drivers/gpu/drm/i915/display/intel_hdmi.c | 12 +-
> drivers/gpu/drm/i915/i915_reg.h | 1 +
> include/drm/drm_connector.h | 7 +-
> 11 files changed, 323 insertions(+), 46 deletions(-)
>
> --
> 2.23.0
--
Ville Syrjälä
Intel
More information about the dri-devel
mailing list