From: zain wang <w...@rock-chips.com>

According to DP spec v1.3 chap 3.5.1.2 Link Training, Link Policy Maker
must first detect that the HPD signal is asserted high by the Downstream
Device before establishing a link with it.

Cc: Stéphane Marchesin <marc...@chromium.org>
Signed-off-by: zain wang <w...@rock-chips.com>
Signed-off-by: Sean Paul <seanp...@chromium.org>
---
 drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c 
b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
index f3eea7636a2e..048b6f7c9b6e 100644
--- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
+++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
@@ -1172,6 +1172,15 @@ static int analogix_dp_set_bridge(struct 
analogix_dp_device *dp)
        if (ret)
                goto out_dp_init;
 
+       /* According to DP spec v1.3 chap 3.5.1.2 Link Training,
+        * We should first make sure the HPD signal is asserted high by device
+        * when we want to establish a link with it. */
+       ret = analogix_dp_detect_hpd(dp);
+       if (ret) {
+               DRM_ERROR("failed to get hpd single ret = %d\n", ret);
+               goto out_dp_init;
+       }
+
        ret = analogix_dp_commit(dp);
        if (ret)
                goto out_dp_init;
-- 
2.12.0.246.ga2ecc84866-goog

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to