[U-Boot] [PATCH 1/2] Revert "sunxi: video: HDMI: split VSYNC and HSYNC polarity settings"
Vasily Khoruzhick
anarsoul at gmail.com
Sat Apr 28 21:57:28 UTC 2018
This reverts commit 64089178219371a512ddca8016d78bfdbe84565d.
Signed-off-by: Vasily Khoruzhick <anarsoul at gmail.com>
---
drivers/video/sunxi/sunxi_dw_hdmi.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/drivers/video/sunxi/sunxi_dw_hdmi.c b/drivers/video/sunxi/sunxi_dw_hdmi.c
index 4f01d1bded..33920a2b67 100644
--- a/drivers/video/sunxi/sunxi_dw_hdmi.c
+++ b/drivers/video/sunxi/sunxi_dw_hdmi.c
@@ -304,11 +304,15 @@ static int sunxi_dw_hdmi_enable(struct udevice *dev, int panel_bpp,
sunxi_dw_hdmi_lcdc_init(priv->mux, edid, panel_bpp);
- if (edid->flags & DISPLAY_FLAGS_HSYNC_LOW)
- setbits_le32(&phy->pol, 0x200);
-
- if (edid->flags & DISPLAY_FLAGS_VSYNC_LOW)
- setbits_le32(&phy->pol, 0x100);
+ /*
+ * 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);
+ }
setbits_le32(&phy->ctrl, 0xf << 12);
--
2.17.0
More information about the U-Boot
mailing list