drm/i915: fix link rates reported for SKL

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.

v2: optimize if else condition (Jani)

Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
[Jani: minor whitespace fix.]
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
Thulasimani,Sivakumar 2015-08-18 11:07:59 +05:30 committed by Jani Nikula
parent 6cc38acaaa
commit af7080f555

View File

@ -1223,21 +1223,24 @@ static bool intel_dp_source_supports_hbr2(struct drm_device *dev)
static int
intel_dp_source_rates(struct drm_device *dev, const int **source_rates)
{
int size;
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_source_supports_hbr2(dev))
return (DP_LINK_BW_5_4 >> 3) + 1;
else
return (DP_LINK_BW_2_7 >> 3) + 1;
if (!intel_dp_source_supports_hbr2(dev))
size--;
return size;
}
static void