• Gwan-gyeong Mun's avatar
    drm/i915/dp: Add a config function for YCBCR420 outputs · 8e9d645c
    Gwan-gyeong Mun authored
    This patch checks a support of YCBCR420 outputs on an encoder level.
    If the input mode is YCBCR420-only mode then it prepares DP as an YCBCR420
    output, else it continues with RGB output mode.
    It set output_format to INTEL_OUTPUT_FORMAT_YCBCR420 in order to using
    a pipe scaler as RGB to YCbCr 4:4:4.
    
    v2:
      Addressed review comments from Ville.
      Style fixed with few naming.
      %s/config/crtc_state/
      %s/intel_crtc/crtc/
      If lscon is active, it makes not to call intel_dp_ycbcr420_config()
      to avoid to clobber of lspcon_ycbcr420_config() routine.
      And it move the 420_only check into the intel_dp_ycbcr420_config().
    
    v3: Fix uninitialized return value and it is reported by Dan Carpenter.
    
    v4:
      Addressed review comments from Ville.
      In order to avoid the extra indentation, it inverts if-clause on
      intel_dp_ycbcr420_config().
      Remove the error print where no errors print are allowed.
    
    v6: Rebase
    
    v7:
      Move intel_dp_get_colorimetry_status() to intel_dp from intel_psr.
      intel_dp_get_colorimetry_status() checks
      VSC_SDP_EXTENSION_FOR_COLORIMETRY_SUPPORTED bit in the
      DPRX_FEATURE_ENUMERATION_LIST register.
      And intel_dp_ycbcr420_config() uses intel_dp_get_colorimetry_status().
    
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: default avatarGwan-gyeong Mun <gwan-gyeong.mun@intel.com>
    Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20190521121721.32010-2-gwan-gyeong.mun@intel.com
    8e9d645c
intel_dp.c 208 KB