[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160922103526.24925-4-peter.ujfalusi@ti.com>
Date: Thu, 22 Sep 2016 13:35:26 +0300
From: Peter Ujfalusi <peter.ujfalusi@...com>
To: <robh+dt@...nel.org>, <plagnioj@...osoft.com>,
<tomi.valkeinen@...com>, <airlied@...ux.ie>,
<thierry.reding@...il.com>
CC: <linux-fbdev@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<daniel.vetter@...ll.ch>, <dri-devel@...ts.freedesktop.org>,
<devicetree@...r.kernel.org>
Subject: [PATCH v2 3/3] video: of: display_timing: Add support for syncclk-active property
Configure the DISPLAY_FLAGS_SYNC_POSEDGE/NEGEDGE flags according to the
binding document.
If the syncclk-active is present in DT, configure the flags accordingly, if
it is omitted it means that the SYNC edge is following the pixdata
configuration.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@...com>
CC: Rob Herring <robh+dt@...nel.org>
CC: Mark Rutland <mark.rutland@....com>
CC: devicetree@...r.kernel.org
---
drivers/video/of_display_timing.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/video/of_display_timing.c b/drivers/video/of_display_timing.c
index 8a1076beecd3..db992c684f09 100644
--- a/drivers/video/of_display_timing.c
+++ b/drivers/video/of_display_timing.c
@@ -88,6 +88,15 @@ static int of_parse_display_timing(const struct device_node *np,
dt->flags |= val ? DISPLAY_FLAGS_PIXDATA_POSEDGE :
DISPLAY_FLAGS_PIXDATA_NEGEDGE;
+ if (!of_property_read_u32(np, "syncclk-active", &val))
+ dt->flags |= val ? DISPLAY_FLAGS_SYNC_POSEDGE :
+ DISPLAY_FLAGS_SYNC_NEGEDGE;
+ else if (dt->flags & (DISPLAY_FLAGS_PIXDATA_POSEDGE |
+ DISPLAY_FLAGS_PIXDATA_NEGEDGE))
+ dt->flags |= dt->flags & DISPLAY_FLAGS_PIXDATA_POSEDGE ?
+ DISPLAY_FLAGS_SYNC_POSEDGE :
+ DISPLAY_FLAGS_SYNC_NEGEDGE;
+
if (of_property_read_bool(np, "interlaced"))
dt->flags |= DISPLAY_FLAGS_INTERLACED;
if (of_property_read_bool(np, "doublescan"))
--
2.10.0
Powered by blists - more mailing lists