Skip to contentSkip to conversation

sunxi: video: HDMI: split VSYNC and HSYNC polarity settings

PATCH New Vasily Khoruzhick 4 participants 4 messages Nov 29, 2017 – Dec 2, 2017

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 sunxi: video: HDMI: split VSYNC and HSYNC polarity settings

These are actually different bits, and since some monitors (Benq BL2420PT) have modes with different HSYNC and VSYNC polarity, we should set them independently

Tested on Pine64-LTS with Benq BL2420PT monitor.

---
 drivers/video/sunxi/sunxi_dw_hdmi.c | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)
drivers/video/sunxi/sunxi_dw_hdmi.c +5 -9
index 33920a2b67..4f01d1bded 100644
@@ -304,15 +304,11 @@ static int sunxi_dw_hdmi_enable(struct udevice *dev, int panel_bpp,
 
 	sunxi_dw_hdmi_lcdc_init(priv->mux, edid, panel_bpp);
 
-	/*
-	 * Condition in original code is a bit weird. This is attempt
-	 * to make it more reasonable and it works. It could be that
-	 * bits and conditions are related and should be separated.
-	 */
-	if (!((edid->flags & DISPLAY_FLAGS_HSYNC_HIGH) &&
-	      (edid->flags & DISPLAY_FLAGS_VSYNC_HIGH))) {
-		setbits_le32(&phy->pol, 0x300);
-	}
+	if (edid->flags & DISPLAY_FLAGS_HSYNC_LOW)
+		setbits_le32(&phy->pol, 0x200);
+
+	if (edid->flags & DISPLAY_FLAGS_VSYNC_LOW)
+		setbits_le32(&phy->pol, 0x100);
 
 	setbits_le32(&phy->ctrl, 0xf << 12);
 
Signature · 1 line
2.15.0
#1 lore raw

PATCH 1/1 sunxi: video: HDMI: split VSYNC and HSYNC polarity settings

Hi Vasily,

Quoted 10 lines · On Tue, 28 Nov 2017 22:33:27 -0800 Vasily Khoruzhick anarsoul at gmail.com…

These are actually different bits, and since some monitors (Benq BL2420PT) have modes with different HSYNC and VSYNC polarity, we should set them independently

Tested on Pine64-LTS with Benq BL2420PT monitor.

---
 drivers/video/sunxi/sunxi_dw_hdmi.c | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)
#2 lore raw

PATCH 1/1 sunxi: video: HDMI: split VSYNC and HSYNC polarity settings

In reply to Vasily Khoruzhick
Quoted 7 lines · Vasily Khoruzhick

These are actually different bits, and since some monitors (Benq BL2420PT) have modes with different HSYNC and VSYNC polarity, we should set them independently

Tested on Pine64-LTS with Benq BL2420PT monitor.

Thanks!
Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20171129/81f8145f/attachment.sig>
#3 lore raw

PATCH 1/1 sunxi: video: HDMI: split VSYNC and HSYNC polarity settings

Quoted 10 lines · Maxime Ripard
Quoted 7 lines · Vasily Khoruzhick

These are actually different bits, and since some monitors (Benq BL2420PT) have modes with different HSYNC and VSYNC polarity, we should set them independently

Tested on Pine64-LTS with Benq BL2420PT monitor.

Applied to u-boot-sunxi/master