[Intel-gfx] [PATCH] drm/i915/bxt: PORT_PLL_REF_SEL bit should be set for all BXT variations.

Imre Deak imre.deak at intel.com
Fri Apr 15 13:34:36 UTC 2016


On to, 2016-04-14 at 15:37 -0700, Dongwon Kim wrote:
> This patch is to correct one thing in this commit:
> 
> commit 25a56705332add0363e47b3a0eca001d6fbd5bec
> Author: Dongwon Kim <dongwon.kim at intel.com>
> Date:   Wed Mar 16 18:06:13 2016 -0700
> 
>     drm/i915/bxt: Reversed polarity of PORT_PLL_REF_SEL bit
> 
>     For BXT, description of polarities of PORT_PLL_REF_SEL
>     has been reversed for newer Gen9LP steppings according to the
>     recent update in Bspec. This bit now should be set for
>     "Non-SSC" mode for all Gen9LP starting from B0 stepping.
> 
>     v2: Only B0 and newer stepping should be affected by this
>     change.
> 
> This reversed bit polarity is actually common
> for all BXT and APL SoCs. Therefore, revision checking
> in the original commit should be removed to make
> the bit set regardless of revision ID of GFX block.
> 
> Signed-off-by: Dongwon Kim <dongwon.kim at intel.com>

Reviewed-by: Imre Deak <imre.deak at intel.com>

Thanks for the patch I pushed it to -dinq.

Nitpick: no need to quote whole commit messages, it's enough to include
 the part up to the subject line. I fixed this up now while merging.

Also would've been nice to get this right in the first version by
waiting for the clarification about the stepping detail. I applied that
early since it fixed problems for people with B stepping. I tried the
patch now on A stepping too and it seems to be the right thing to do
there too: the HDMI output blanks out if we clear the select bit and
recovers by setting it again. I should've done this earlier.

--Imre

> ---
>  drivers/gpu/drm/i915/intel_dpll_mgr.c | 12 ++----------
>  1 file changed, 2 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dpll_mgr.c
> b/drivers/gpu/drm/i915/intel_dpll_mgr.c
> index 0bde6a4..7fc39ab 100644
> --- a/drivers/gpu/drm/i915/intel_dpll_mgr.c
> +++ b/drivers/gpu/drm/i915/intel_dpll_mgr.c
> @@ -1295,17 +1295,9 @@ static void bxt_ddi_pll_enable(struct
> drm_i915_private *dev_priv,
>  	uint32_t temp;
>  	enum port port = (enum port)pll->id;	/* 1:1 port->PLL 
> mapping */
>  
> -	temp = I915_READ(BXT_PORT_PLL_ENABLE(port));
> -	/*
> -	 * Definition of each bit polarity has been changed
> -	 * after A1 stepping
> -	 */
> -	if (IS_BXT_REVID(dev_priv, 0, BXT_REVID_A1))
> -		temp &= ~PORT_PLL_REF_SEL;
> -	else
> -		temp |= PORT_PLL_REF_SEL;
> -
>  	/* Non-SSC reference */
> +	temp = I915_READ(BXT_PORT_PLL_ENABLE(port));
> +	temp |= PORT_PLL_REF_SEL;
>  	I915_WRITE(BXT_PORT_PLL_ENABLE(port), temp);
>  
>  	/* Disable 10 bit clock */


More information about the Intel-gfx mailing list