4.2.2.1 LinkLayer test states: "Verify that Source DUT does the following within 5 seconds after HPD being asserted: Reads the DPCD Receiver Capability field (DPCD: 00000h:0000Fh)" ...
Fail1: Source DUT failed to read the DPCD Receiver Capability field (DPCD: 00000h:0000Fh) through AUX_CH before link training." Fix this by reading DP_ADAPTER_CAP(0x000F & 0x220F) Cc: Uma Shankar <uma.shan...@intel.com> Cc: Jani Nikula <jani.nik...@intel.com> Signed-off-by: Khaled Almahallawy <khaled.almahall...@intel.com> --- drivers/gpu/drm/i915/display/intel_dp_link_training.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/gpu/drm/i915/display/intel_dp_link_training.c b/drivers/gpu/drm/i915/display/intel_dp_link_training.c index a479b63112ea..762dc073b824 100644 --- a/drivers/gpu/drm/i915/display/intel_dp_link_training.c +++ b/drivers/gpu/drm/i915/display/intel_dp_link_training.c @@ -252,6 +252,7 @@ int intel_dp_init_lttpr_and_dprx_caps(struct intel_dp *intel_dp) { struct intel_display *display = to_intel_display(intel_dp); int lttpr_count = 0; + u8 adapter_cap = 0; /* * Detecting LTTPRs must be avoided on platforms with an AUX timeout @@ -277,6 +278,12 @@ int intel_dp_init_lttpr_and_dprx_caps(struct intel_dp *intel_dp) return -EIO; } + /* Read DP_ADAPTET_CAP to pass LinkLayer CTS */ + drm_dp_dpcd_readb(&intel_dp->aux, DP_ADAPTER_CAP, + &adapter_cap); + drm_dp_dpcd_readb(&intel_dp->aux, 0x220f, + &adapter_cap); + return lttpr_count; } -- 2.43.0