]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commitdiff
drm/bridge: tc358767: move video stream setup to tc_main_link_stream
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Tue, 28 May 2019 08:27:30 +0000 (11:27 +0300)
committerAndrzej Hajda <a.hajda@samsung.com>
Fri, 31 May 2019 13:41:20 +0000 (15:41 +0200)
The driver currently sets the video stream registers in
tc_main_link_setup. One should be able to establish the DP link without
any video stream, so a more logical place is to configure the stream in
the tc_main_link_stream. So move them there.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190528082747.3631-8-tomi.valkeinen@ti.com
drivers/gpu/drm/bridge/tc358767.c

index 39a9de880e5a7ca955644c07d15a52ed72b04577..4de21c3883d87510d72511450b3dd38e13968d86 100644 (file)
@@ -1004,15 +1004,6 @@ static int tc_main_link_setup(struct tc_data *tc)
                return -EAGAIN;
        }
 
-       ret = tc_set_video_mode(tc, tc->mode);
-       if (ret)
-               goto err;
-
-       /* Set M/N */
-       ret = tc_stream_clock_calc(tc);
-       if (ret)
-               goto err;
-
        return 0;
 err_dpcd_read:
        dev_err(tc->dev, "Failed to read DPCD: %d\n", ret);
@@ -1031,6 +1022,15 @@ static int tc_main_link_stream(struct tc_data *tc, int state)
        dev_dbg(tc->dev, "stream: %d\n", state);
 
        if (state) {
+               ret = tc_set_video_mode(tc, tc->mode);
+               if (ret)
+                       goto err;
+
+               /* Set M/N */
+               ret = tc_stream_clock_calc(tc);
+               if (ret)
+                       goto err;
+
                value = VID_MN_GEN | DP_EN;
                if (tc->link.base.capabilities & DP_LINK_CAP_ENHANCED_FRAMING)
                        value |= EF_EN;