summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/bridge
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2019-05-28 11:27:25 +0300
committerAndrzej Hajda <a.hajda@samsung.com>2019-05-31 15:41:16 +0200
commitc28d14849d374c89ae17134a5bc4a3818fe72467 (patch)
tree0417e9133a3aa6f30acebbcb42d7dbd47aed4fa7 /drivers/gpu/drm/bridge
parentbfb6e014c45f84b3bab1842a04907c10c3d63f95 (diff)
downloadlinux-c28d14849d374c89ae17134a5bc4a3818fe72467.tar.bz2
drm/bridge: tc358767: reset voltage-swing & pre-emphasis
We need to reset DPCD voltage-swing & pre-emphasis before starting the link training, as otherwise tc358767 will use the previous values as minimums. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Reviewed-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190528082747.3631-3-tomi.valkeinen@ti.com
Diffstat (limited to 'drivers/gpu/drm/bridge')
-rw-r--r--drivers/gpu/drm/bridge/tc358767.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc358767.c
index b6c4d1063ccb..c8b04f711db3 100644
--- a/drivers/gpu/drm/bridge/tc358767.c
+++ b/drivers/gpu/drm/bridge/tc358767.c
@@ -956,6 +956,13 @@ static int tc_main_link_setup(struct tc_data *tc)
if (ret < 0)
goto err_dpcd_write;
+ /* Reset voltage-swing & pre-emphasis */
+ tmp[0] = tmp[1] = DP_TRAIN_VOLTAGE_SWING_LEVEL_0 |
+ DP_TRAIN_PRE_EMPH_LEVEL_0;
+ ret = drm_dp_dpcd_write(aux, DP_TRAINING_LANE0_SET, tmp, 2);
+ if (ret < 0)
+ goto err_dpcd_write;
+
ret = tc_link_training(tc, DP_TRAINING_PATTERN_1);
if (ret)
goto err;