drm/rockchip: cdn-dp: correct rate in the struct drm_dp_link assignment
authorSandor Yu <Sandor.yu@nxp.com>
Wed, 5 Jun 2019 08:04:24 +0000 (16:04 +0800)
committerHeiko Stuebner <heiko@sntech.de>
Fri, 14 Jun 2019 11:53:07 +0000 (13:53 +0200)
The value stored in the rate field of struct drm_dp_link should
be the actual link-rate and not the bw_code.

Right now the driver stores the code and converts it to the rate.
So fixup the driver to store the rate itself.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20190605080424.28731-1-sandor.yu@nxp.com
drivers/gpu/drm/rockchip/cdn-dp-reg.c

index 6c8b14fb1d2f3c11ddefff385bff3a070f99ba3b..0a2aebecc151ea8ce7c99ae9abeb4966b7217328 100644 (file)
@@ -543,7 +543,7 @@ static int cdn_dp_get_training_status(struct cdn_dp_device *dp)
        if (ret)
                goto err_get_training_status;
 
-       dp->link.rate = status[0];
+       dp->link.rate = drm_dp_bw_code_to_link_rate(status[0]);
        dp->link.num_lanes = status[1];
 
 err_get_training_status:
@@ -647,7 +647,7 @@ int cdn_dp_config_video(struct cdn_dp_device *dp)
        bit_per_pix = (video->color_fmt == YCBCR_4_2_2) ?
                      (video->color_depth * 2) : (video->color_depth * 3);
 
-       link_rate = drm_dp_bw_code_to_link_rate(dp->link.rate) / 1000;
+       link_rate = dp->link.rate / 1000;
 
        ret = cdn_dp_reg_write(dp, BND_HSYNC2VSYNC, VIF_BYPASS_INTERLACE);
        if (ret)