diff mbox series

[4/5] drm/i915/dp: Stop sending of HDR Metadata Infoframe when it is not needed

Message ID 20191024182423.958952-5-gwan-gyeong.mun@intel.com (mailing list archive)
State New, archived
Headers show
Series Update VSC SDP / HDR Metadata SDP states on pipe updates. | expand

Commit Message

Gwan-gyeong Mun Oct. 24, 2019, 6:24 p.m. UTC
It prevents sending HDR Metadata Infoframe SDP packet to a receiver when
HDR Metadata Infoframe SDP is not needed.

Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
---
 drivers/gpu/drm/i915/display/intel_dp.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index ed6845485b41..729f1e8cb49a 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -4753,8 +4753,16 @@  void intel_dp_hdr_metadata_enable(struct intel_dp *intel_dp,
 				  const struct intel_crtc_state *crtc_state,
 				  const struct drm_connector_state *conn_state)
 {
-	if (!conn_state->hdr_output_metadata)
+	if (!conn_state->hdr_output_metadata) {
+		struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
+		struct intel_encoder *encoder = &intel_dig_port->base;
+
+		    if (intel_infoframe_enabled(encoder, crtc_state,
+						HDMI_PACKET_TYPE_GAMUT_METADATA))
+			intel_enable_infoframe(encoder, false, crtc_state,
+					       HDMI_PACKET_TYPE_GAMUT_METADATA);
 		return;
+	}
 
 	intel_dp_setup_hdr_metadata_infoframe_sdp(intel_dp,
 						  crtc_state,