drm/i915: Get the iboost setting based on the port type
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 12 Jul 2016 12:59:34 +0000 (15:59 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 2 Aug 2016 12:09:20 +0000 (15:09 +0300)
Program the 'iboost_bit' based on what the VBT says it should be for
the specific port type, rather than assume it's always the same
for DP and HDMI.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1468328376-6380-8-git-send-email-ville.syrjala@linux.intel.com
drivers/gpu/drm/i915/intel_ddi.c

index 5cae63a..5720202 100644 (file)
@@ -446,8 +446,7 @@ void intel_prepare_dp_ddi_buffers(struct intel_encoder *encoder)
                                skl_get_buf_trans_edp(dev_priv, &n_edp_entries);
 
                /* If we're boosting the current, set bit 31 of trans1 */
-               if (dev_priv->vbt.ddi_port_info[port].hdmi_boost_level ||
-                   dev_priv->vbt.ddi_port_info[port].dp_boost_level)
+               if (dev_priv->vbt.ddi_port_info[port].dp_boost_level)
                        iboost_bit = DDI_BUF_BALANCE_LEG_ENABLE;
 
                if (WARN_ON(encoder->type == INTEL_OUTPUT_EDP &&
@@ -524,9 +523,9 @@ static void intel_prepare_hdmi_ddi_buffers(struct intel_encoder *encoder)
 
        if (IS_SKYLAKE(dev_priv) || IS_KABYLAKE(dev_priv)) {
                ddi_translations_hdmi = skl_get_buf_trans_hdmi(dev_priv, &n_hdmi_entries);
+
                /* If we're boosting the current, set bit 31 of trans1 */
-               if (dev_priv->vbt.ddi_port_info[port].hdmi_boost_level ||
-                   dev_priv->vbt.ddi_port_info[port].dp_boost_level)
+               if (dev_priv->vbt.ddi_port_info[port].hdmi_boost_level)
                        iboost_bit = DDI_BUF_BALANCE_LEG_ENABLE;
        } else if (IS_BROADWELL(dev_priv)) {
                ddi_translations_hdmi = bdw_ddi_translations_hdmi;