From 0569cd725068864165e343b1a0fe24424e2ed0e2 Mon Sep 17 00:00:00 2001 From: Chen Shunqing Date: Thu, 17 Oct 2024 15:04:39 +0800 Subject: [PATCH] media: i2c: rk628: force EQ if hdmi2.0 Signed-off-by: Chen Shunqing Change-Id: I64ecf4804763b31108f08fc58dcb7dc5ffcc53a4 --- drivers/media/i2c/rk628/rk628_hdmirx.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/media/i2c/rk628/rk628_hdmirx.c b/drivers/media/i2c/rk628/rk628_hdmirx.c index b04d882d48c6..9946403c7da3 100644 --- a/drivers/media/i2c/rk628/rk628_hdmirx.c +++ b/drivers/media/i2c/rk628/rk628_hdmirx.c @@ -1079,6 +1079,10 @@ static __maybe_unused u32 hdmirxphy_read(struct rk628 *rk628, u32 offset) static void rk628_hdmirxphy_enable(struct rk628 *rk628, bool is_hdmi2, bool scramble_en) { + hdmirxphy_write(rk628, 0x3e, 0x0); + hdmirxphy_write(rk628, 0x5e, 0x0); + hdmirxphy_write(rk628, 0x7e, 0x0); + hdmirxphy_write(rk628, 0x02, 0x1860); hdmirxphy_write(rk628, 0x03, 0x0060); if (!is_hdmi2 && scramble_en) @@ -1093,10 +1097,14 @@ static void rk628_hdmirxphy_enable(struct rk628 *rk628, bool is_hdmi2, bool scra hdmirxphy_write(rk628, 0x2d, 0x008c); hdmirxphy_write(rk628, 0x2e, 0x0001); - if (is_hdmi2) + if (is_hdmi2) { hdmirxphy_write(rk628, 0x0e, 0x0108); - else + hdmirxphy_write(rk628, 0x3e, 0x610); + hdmirxphy_write(rk628, 0x5e, 0x610); + hdmirxphy_write(rk628, 0x7e, 0x610); + } else { hdmirxphy_write(rk628, 0x0e, 0x0008); + } }