diff options
| -rw-r--r-- | drivers/gpu/drm/i915/intel_ddi.c | 20 | 
1 files changed, 11 insertions, 9 deletions
| diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c index 7f7741c1406d..e74c2fc360f1 100644 --- a/drivers/gpu/drm/i915/intel_ddi.c +++ b/drivers/gpu/drm/i915/intel_ddi.c @@ -436,15 +436,6 @@ void intel_prepare_dp_ddi_buffers(struct intel_encoder *encoder)  				skl_get_buf_trans_dp(dev_priv, &n_dp_entries);  		ddi_translations_edp =  				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].dp_boost_level) -			iboost_bit = DDI_BUF_BALANCE_LEG_ENABLE; - -		if (WARN_ON(encoder->type == INTEL_OUTPUT_EDP && -			    port != PORT_A && port != PORT_E && -			    n_edp_entries > 9)) -			n_edp_entries = 9;  	} else if (IS_BROADWELL(dev_priv)) {  		ddi_translations_fdi = bdw_ddi_translations_fdi;  		ddi_translations_dp = bdw_ddi_translations_dp; @@ -464,6 +455,17 @@ void intel_prepare_dp_ddi_buffers(struct intel_encoder *encoder)  		n_dp_entries = ARRAY_SIZE(bdw_ddi_translations_dp);  	} +	if (IS_SKYLAKE(dev_priv) || IS_KABYLAKE(dev_priv)) { +		/* If we're boosting the current, set bit 31 of trans1 */ +		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 && +			    port != PORT_A && port != PORT_E && +			    n_edp_entries > 9)) +			n_edp_entries = 9; +	} +  	switch (encoder->type) {  	case INTEL_OUTPUT_EDP:  		ddi_translations = ddi_translations_edp; | 
