drm/rockchip: Check for fast link training before enabling psr
authorSean Paul <seanpaul@chromium.org>
Tue, 11 Jun 2019 16:08:21 +0000 (12:08 -0400)
committerSean Paul <seanpaul@chromium.org>
Fri, 26 Jul 2019 18:48:03 +0000 (14:48 -0400)
Once we start shutting off the link during PSR, we're going to want fast
training to work. If the display doesn't support fast training, don't
enable psr.

Changes in v2:
- None
Changes in v3:
- None
Changes in v4:
- None
Changes in v5:
- None

Link to v1: https://patchwork.freedesktop.org/patch/msgid/20190228210939.83386-3-sean@poorly.run
Link to v2: https://patchwork.freedesktop.org/patch/msgid/20190326204509.96515-2-sean@poorly.run
Link to v3: https://patchwork.freedesktop.org/patch/msgid/20190502194956.218441-9-sean@poorly.run
Link to v4: https://patchwork.freedesktop.org/patch/msgid/20190508160920.144739-8-sean@poorly.run

Cc: Zain Wang <wzz@rock-chips.com>
Cc: Tomasz Figa <tfiga@chromium.org>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20190611160844.257498-8-sean@poorly.run
drivers/gpu/drm/bridge/analogix/analogix_dp_core.c

index 3f7f488..37bd541 100644 (file)
@@ -1035,16 +1035,17 @@ static int analogix_dp_commit(struct analogix_dp_device *dp)
        if (ret)
                return ret;
 
+       /* Check whether panel supports fast training */
+       ret = analogix_dp_fast_link_train_detection(dp);
+       if (ret)
+               dp->psr_enable = false;
+
        if (dp->psr_enable) {
                ret = analogix_dp_enable_sink_psr(dp);
                if (ret)
                        return ret;
        }
 
-       /* Check whether panel supports fast training */
-       ret =  analogix_dp_fast_link_train_detection(dp);
-       if (ret)
-               dp->psr_enable = false;
 
        return ret;
 }