Commit 1da7d713 authored by Jani Nikula's avatar Jani Nikula Committed by Daniel Vetter

drm/i915: ignore link rate in TPS3 selection

TPS3 is mandatory for downstream devices that support HBR2, and Intel
platforms that support HBR2 also support TPS3. Whenever TPS3 is
supported by both the source and sink, it should be used. In other
words, whenever the source and sink are capable of 5.4 Gbps link, we
should anyway go for TPS3, regardless of the link rate being selected.

Log an error if the sink has advertized HBR2 capability without TPS3
capability.
Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent bc5133d5
...@@ -3828,10 +3828,11 @@ intel_dp_complete_link_train(struct intel_dp *intel_dp) ...@@ -3828,10 +3828,11 @@ intel_dp_complete_link_train(struct intel_dp *intel_dp)
* Due to WaDisableHBR2 SKL < B0 is the only exception where TPS3 is * Due to WaDisableHBR2 SKL < B0 is the only exception where TPS3 is
* supported but still not enabled. * supported but still not enabled.
*/ */
if (intel_dp->link_rate == 540000 || if (intel_dp_source_supports_hbr2(dev) &&
(intel_dp_source_supports_hbr2(dev) && drm_dp_tps3_supported(intel_dp->dpcd))
drm_dp_tps3_supported(intel_dp->dpcd)))
training_pattern = DP_TRAINING_PATTERN_3; training_pattern = DP_TRAINING_PATTERN_3;
else if (intel_dp->link_rate == 540000)
DRM_ERROR("5.4 Gbps link rate without HBR2/TPS3 support\n");
/* channel equalization */ /* channel equalization */
if (!intel_dp_set_link_train(intel_dp, &DP, if (!intel_dp_set_link_train(intel_dp, &DP,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment