From: Ville Syrjälä Date: Tue, 11 May 2021 16:05:28 +0000 (+0300) Subject: drm/i915: Move has_hdmi_sink check into intel_hdmi_bpc_possible() X-Git-Tag: v5.15~303^2~29^2~89 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f02e6c859514c86ccb53846042e84e04373f7ac7;p=platform%2Fkernel%2Flinux-starfive.git drm/i915: Move has_hdmi_sink check into intel_hdmi_bpc_possible() We wish intel_hdmi_bpc_possible() to consider whether the sink supports HDMI or just DVI when checking whether it'll support HDMI deep color or not. This also takes care of the "force DVI" property. Cc: Werner Sembach Signed-off-by: Ville Syrjälä Link: https://patchwork.freedesktop.org/patch/msgid/20210511160532.21446-3-ville.syrjala@linux.intel.com Reviewed-by: José Roberto de Souza --- diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c index df5fb07..c2a1bbc 100644 --- a/drivers/gpu/drm/i915/display/intel_hdmi.c +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c @@ -1873,11 +1873,17 @@ static bool intel_hdmi_bpc_possible(struct drm_connector *connector, switch (bpc) { case 12: + if (!has_hdmi_sink) + return false; + if (ycbcr420_output) return hdmi->y420_dc_modes & DRM_EDID_YCBCR420_DC_36; else return info->edid_hdmi_dc_modes & DRM_EDID_HDMI_DC_36; case 10: + if (!has_hdmi_sink) + return false; + if (ycbcr420_output) return hdmi->y420_dc_modes & DRM_EDID_YCBCR420_DC_30; else @@ -1975,9 +1981,6 @@ bool intel_hdmi_deep_color_possible(const struct intel_crtc_state *crtc_state, if (crtc_state->pipe_bpp < bpc * 3) return false; - if (!has_hdmi_sink) - return false; - for_each_new_connector_in_state(state, connector, connector_state, i) { if (connector_state->crtc != crtc_state->uapi.crtc) continue;