[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230719060143.63649-1-alex@shruggie.ro>
Date: Wed, 19 Jul 2023 09:01:43 +0300
From: Alexandru Ardelean <alex@...uggie.ro>
To: linux-kernel@...r.kernel.org, dri-devel@...ts.freedesktop.org
Cc: bogdan.togorean@...log.com, nuno.sa@...log.com, daniel@...ll.ch,
airlied@...il.com, jonas@...boo.se,
Laurent.pinchart@...asonboard.com, rfoss@...nel.org,
neil.armstrong@...aro.org, andrzej.hajda@...el.com,
festevam@...il.com, Alexandru Ardelean <alex@...uggie.ro>
Subject: [PATCH v4] drm: adv7511: Fix low refresh rate register for ADV7533/5
From: Bogdan Togorean <bogdan.togorean@...log.com>
For ADV7533 and ADV7535 low refresh rate is selected using
bits [3:2] of 0x4a main register.
So depending on ADV model write 0xfb or 0x4a register.
Fixes: 2437e7cd88e8 ("drm/bridge: adv7533: Initial support for ADV7533")
Reviewed-by: Robert Foss <rfoss@...nel.org>
Reviewed-by: Nuno Sa <nuno.sa@...log.com>
Signed-off-by: Bogdan Togorean <bogdan.togorean@...log.com>
Signed-off-by: Alexandru Ardelean <alex@...uggie.ro>
---
drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
index ddceafa7b637..8d6c93296503 100644
--- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
+++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
@@ -786,8 +786,13 @@ static void adv7511_mode_set(struct adv7511 *adv7511,
else
low_refresh_rate = ADV7511_LOW_REFRESH_RATE_NONE;
- regmap_update_bits(adv7511->regmap, 0xfb,
- 0x6, low_refresh_rate << 1);
+ if (adv7511->type == ADV7511)
+ regmap_update_bits(adv7511->regmap, 0xfb,
+ 0x6, low_refresh_rate << 1);
+ else
+ regmap_update_bits(adv7511->regmap, 0x4a,
+ 0xc, low_refresh_rate << 2);
+
regmap_update_bits(adv7511->regmap, 0x17,
0x60, (vsync_polarity << 6) | (hsync_polarity << 5));
--
2.41.0
Powered by blists - more mailing lists