aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_hdmi.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/i915/intel_hdmi.c')
-rw-r--r--drivers/gpu/drm/i915/intel_hdmi.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
index 4dea833f9d1b..e039702c1907 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -513,12 +513,14 @@ static void intel_hdmi_set_spd_infoframe(struct drm_encoder *encoder,
513 513
514static void 514static void
515intel_hdmi_set_hdmi_infoframe(struct drm_encoder *encoder, 515intel_hdmi_set_hdmi_infoframe(struct drm_encoder *encoder,
516 const struct intel_crtc_state *crtc_state) 516 const struct intel_crtc_state *crtc_state,
517 const struct drm_connector_state *conn_state)
517{ 518{
518 union hdmi_infoframe frame; 519 union hdmi_infoframe frame;
519 int ret; 520 int ret;
520 521
521 ret = drm_hdmi_vendor_infoframe_from_display_mode(&frame.vendor.hdmi, 522 ret = drm_hdmi_vendor_infoframe_from_display_mode(&frame.vendor.hdmi,
523 conn_state->connector,
522 &crtc_state->base.adjusted_mode); 524 &crtc_state->base.adjusted_mode);
523 if (ret < 0) 525 if (ret < 0)
524 return; 526 return;
@@ -585,7 +587,7 @@ static void g4x_set_infoframes(struct drm_encoder *encoder,
585 587
586 intel_hdmi_set_avi_infoframe(encoder, crtc_state); 588 intel_hdmi_set_avi_infoframe(encoder, crtc_state);
587 intel_hdmi_set_spd_infoframe(encoder, crtc_state); 589 intel_hdmi_set_spd_infoframe(encoder, crtc_state);
588 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state); 590 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state, conn_state);
589} 591}
590 592
591static bool hdmi_sink_is_deep_color(const struct drm_connector_state *conn_state) 593static bool hdmi_sink_is_deep_color(const struct drm_connector_state *conn_state)
@@ -726,7 +728,7 @@ static void ibx_set_infoframes(struct drm_encoder *encoder,
726 728
727 intel_hdmi_set_avi_infoframe(encoder, crtc_state); 729 intel_hdmi_set_avi_infoframe(encoder, crtc_state);
728 intel_hdmi_set_spd_infoframe(encoder, crtc_state); 730 intel_hdmi_set_spd_infoframe(encoder, crtc_state);
729 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state); 731 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state, conn_state);
730} 732}
731 733
732static void cpt_set_infoframes(struct drm_encoder *encoder, 734static void cpt_set_infoframes(struct drm_encoder *encoder,
@@ -769,7 +771,7 @@ static void cpt_set_infoframes(struct drm_encoder *encoder,
769 771
770 intel_hdmi_set_avi_infoframe(encoder, crtc_state); 772 intel_hdmi_set_avi_infoframe(encoder, crtc_state);
771 intel_hdmi_set_spd_infoframe(encoder, crtc_state); 773 intel_hdmi_set_spd_infoframe(encoder, crtc_state);
772 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state); 774 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state, conn_state);
773} 775}
774 776
775static void vlv_set_infoframes(struct drm_encoder *encoder, 777static void vlv_set_infoframes(struct drm_encoder *encoder,
@@ -822,7 +824,7 @@ static void vlv_set_infoframes(struct drm_encoder *encoder,
822 824
823 intel_hdmi_set_avi_infoframe(encoder, crtc_state); 825 intel_hdmi_set_avi_infoframe(encoder, crtc_state);
824 intel_hdmi_set_spd_infoframe(encoder, crtc_state); 826 intel_hdmi_set_spd_infoframe(encoder, crtc_state);
825 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state); 827 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state, conn_state);
826} 828}
827 829
828static void hsw_set_infoframes(struct drm_encoder *encoder, 830static void hsw_set_infoframes(struct drm_encoder *encoder,
@@ -855,7 +857,7 @@ static void hsw_set_infoframes(struct drm_encoder *encoder,
855 857
856 intel_hdmi_set_avi_infoframe(encoder, crtc_state); 858 intel_hdmi_set_avi_infoframe(encoder, crtc_state);
857 intel_hdmi_set_spd_infoframe(encoder, crtc_state); 859 intel_hdmi_set_spd_infoframe(encoder, crtc_state);
858 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state); 860 intel_hdmi_set_hdmi_infoframe(encoder, crtc_state, conn_state);
859} 861}
860 862
861void intel_dp_dual_mode_set_tmds_output(struct intel_hdmi *hdmi, bool enable) 863void intel_dp_dual_mode_set_tmds_output(struct intel_hdmi *hdmi, bool enable)