diff mbox

drm/i915: Fix SKL i_boost level

Message ID 1447247754-802-1-git-send-email-ander.conselvan.de.oliveira@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Ander Conselvan de Oliveira Nov. 11, 2015, 1:15 p.m. UTC
The i_boost level in the DDI translation tables are stored per level.
However, skl_ddi_set_iboos() would choose an entry of that table based
on the port argument.

Cc: Jim Bride <jim.bride@linux.intel.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
---

I noticed this while reviewing Jim's patch that updates Skylake's DDI
translation tables. Only compile-tested.

Ander

 drivers/gpu/drm/i915/intel_ddi.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

jim.bride@linux.intel.com Nov. 12, 2015, 5:14 p.m. UTC | #1
On Wed, Nov 11, 2015 at 03:15:54PM +0200, Ander Conselvan de Oliveira wrote:
> The i_boost level in the DDI translation tables are stored per level.
> However, skl_ddi_set_iboos() would choose an entry of that table based
> on the port argument.
> 
> Cc: Jim Bride <jim.bride@linux.intel.com>
> Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
> ---

Reviewed-by: Jim Bride <jim.bride@linux.intel.com>
 
> I noticed this while reviewing Jim's patch that updates Skylake's DDI
> translation tables. Only compile-tested.
> 
> Ander
> 
>  drivers/gpu/drm/i915/intel_ddi.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
> index da46edd..8cfdad2 100644
> --- a/drivers/gpu/drm/i915/intel_ddi.c
> +++ b/drivers/gpu/drm/i915/intel_ddi.c
> @@ -2085,21 +2085,21 @@ static void skl_ddi_set_iboost(struct drm_device *dev, u32 level,
>  			iboost = dp_iboost;
>  		} else {
>  			ddi_translations = skl_get_buf_trans_dp(dev, &n_entries);
> -			iboost = ddi_translations[port].i_boost;
> +			iboost = ddi_translations[level].i_boost;
>  		}
>  	} else if (type == INTEL_OUTPUT_EDP) {
>  		if (dp_iboost) {
>  			iboost = dp_iboost;
>  		} else {
>  			ddi_translations = skl_get_buf_trans_edp(dev, &n_entries);
> -			iboost = ddi_translations[port].i_boost;
> +			iboost = ddi_translations[level].i_boost;
>  		}
>  	} else if (type == INTEL_OUTPUT_HDMI) {
>  		if (hdmi_iboost) {
>  			iboost = hdmi_iboost;
>  		} else {
>  			ddi_translations = skl_get_buf_trans_hdmi(dev, &n_entries);
> -			iboost = ddi_translations[port].i_boost;
> +			iboost = ddi_translations[level].i_boost;
>  		}
>  	} else {
>  		return;
> -- 
> 2.4.3
Ander Conselvan de Oliveira Nov. 13, 2015, 12:40 p.m. UTC | #2
On Thu, 2015-11-12 at 09:14 -0800, Jim Bride wrote:
> On Wed, Nov 11, 2015 at 03:15:54PM +0200, Ander Conselvan de Oliveira wrote:
> > The i_boost level in the DDI translation tables are stored per level.
> > However, skl_ddi_set_iboos() would choose an entry of that table based
> > on the port argument.
> > 
> > Cc: Jim Bride <jim.bride@linux.intel.com>
> > Signed-off-by: Ander Conselvan de Oliveira <
> > ander.conselvan.de.oliveira@intel.com>
> > ---
> 
> Reviewed-by: Jim Bride <jim.bride@linux.intel.com>

Pushed to dinq. Thanks for reviewing.

Ander

>  
> > I noticed this while reviewing Jim's patch that updates Skylake's DDI
> > translation tables. Only compile-tested.
> > 
> > Ander
> > 
> >  drivers/gpu/drm/i915/intel_ddi.c | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_ddi.c
> > b/drivers/gpu/drm/i915/intel_ddi.c
> > index da46edd..8cfdad2 100644
> > --- a/drivers/gpu/drm/i915/intel_ddi.c
> > +++ b/drivers/gpu/drm/i915/intel_ddi.c
> > @@ -2085,21 +2085,21 @@ static void skl_ddi_set_iboost(struct drm_device
> > *dev, u32 level,
> >  			iboost = dp_iboost;
> >  		} else {
> >  			ddi_translations = skl_get_buf_trans_dp(dev,
> > &n_entries);
> > -			iboost = ddi_translations[port].i_boost;
> > +			iboost = ddi_translations[level].i_boost;
> >  		}
> >  	} else if (type == INTEL_OUTPUT_EDP) {
> >  		if (dp_iboost) {
> >  			iboost = dp_iboost;
> >  		} else {
> >  			ddi_translations = skl_get_buf_trans_edp(dev,
> > &n_entries);
> > -			iboost = ddi_translations[port].i_boost;
> > +			iboost = ddi_translations[level].i_boost;
> >  		}
> >  	} else if (type == INTEL_OUTPUT_HDMI) {
> >  		if (hdmi_iboost) {
> >  			iboost = hdmi_iboost;
> >  		} else {
> >  			ddi_translations = skl_get_buf_trans_hdmi(dev,
> > &n_entries);
> > -			iboost = ddi_translations[port].i_boost;
> > +			iboost = ddi_translations[level].i_boost;
> >  		}
> >  	} else {
> >  		return;
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
index da46edd..8cfdad2 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
@@ -2085,21 +2085,21 @@  static void skl_ddi_set_iboost(struct drm_device *dev, u32 level,
 			iboost = dp_iboost;
 		} else {
 			ddi_translations = skl_get_buf_trans_dp(dev, &n_entries);
-			iboost = ddi_translations[port].i_boost;
+			iboost = ddi_translations[level].i_boost;
 		}
 	} else if (type == INTEL_OUTPUT_EDP) {
 		if (dp_iboost) {
 			iboost = dp_iboost;
 		} else {
 			ddi_translations = skl_get_buf_trans_edp(dev, &n_entries);
-			iboost = ddi_translations[port].i_boost;
+			iboost = ddi_translations[level].i_boost;
 		}
 	} else if (type == INTEL_OUTPUT_HDMI) {
 		if (hdmi_iboost) {
 			iboost = hdmi_iboost;
 		} else {
 			ddi_translations = skl_get_buf_trans_hdmi(dev, &n_entries);
-			iboost = ddi_translations[port].i_boost;
+			iboost = ddi_translations[level].i_boost;
 		}
 	} else {
 		return;