[Intel-gfx] [PATCH 4/4] drm/i915: fix link rates reported for SKL

Jani Nikula jani.nikula at linux.intel.com
Mon Aug 17 05:29:00 PDT 2015


On Mon, 17 Aug 2015, Sivakumar Thulasimani <sivakumar.thulasimani at intel.com> wrote:
> From: "Thulasimani,Sivakumar" <sivakumar.thulasimani at intel.com>
>
> This patch fixes the bug that SKL SKUs before B0 might return
> HBR2 as supported even though it is not supposed to be enabled
> on such platforms.
>
> Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani at intel.com>
> ---
>  drivers/gpu/drm/i915/intel_dp.c |   14 ++++++++------
>  1 file changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 03523b3..963fdae 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -1224,21 +1224,23 @@ static bool intel_dp_is_hbr2_supported(struct drm_device *dev)
>  static int
>  intel_dp_source_rates(struct drm_device *dev, const int **source_rates)
>  {
> +	int size = 0;

No need to initialize.

>  	if (IS_BROXTON(dev)) {
>  		*source_rates = bxt_rates;
> -		return ARRAY_SIZE(bxt_rates);
> +		size = ARRAY_SIZE(bxt_rates);
>  	} else if (IS_SKYLAKE(dev)) {
>  		*source_rates = skl_rates;
> -		return ARRAY_SIZE(skl_rates);
> +		size = ARRAY_SIZE(skl_rates);
> +	} else {
> +		*source_rates = default_rates;
> +		size = ARRAY_SIZE(default_rates);
>  	}
>  
> -	*source_rates = default_rates;
> -
>  	/* This depends on the fact that 5.4 is last value in the array */
>  	if (intel_dp_is_hbr2_supported(dev))
> -		return (DP_LINK_BW_5_4 >> 3) + 1;
> +		return size;
>  	else
> -		return (DP_LINK_BW_2_7 >> 3) + 1;
> +		return size - 1;

  	/* This depends on the fact that 5.4 is last value in the array */
  	if (!intel_dp_source_supports_hbr2(dev))
        	size--;

	return size;
>  }
>  
>  static void
> -- 
> 1.7.9.5
>

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the Intel-gfx mailing list