[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1461011895-23608-2-git-send-email-stefan@agner.ch>
Date: Mon, 18 Apr 2016 13:38:14 -0700
From: Stefan Agner <stefan@...er.ch>
To: dri-devel@...ts.freedesktop.org, thierry.reding@...il.com
Cc: stefan@...er.ch, airlied@...ux.ie, daniel.vetter@...ll.ch,
jianwei.wang.chn@...il.com, alison.wang@...escale.com,
meng.yi@....com, linux@....linux.org.uk, p.zabel@...gutronix.de,
denis@...rea.com, eric@...rea.com, ville.syrjala@...ux.intel.com,
linux-kernel@...r.kernel.org
Subject: [PATCH v3 1/2] drm: introduce bus_flags in drm_display_info
Introduce bus_flags to specify display bus properties like signal
polarities. This is useful for parallel display buses, e.g. to
specify the pixel clock or data enable polarity.
Suggested-by: Thierry Reding <thierry.reding@...il.com>
Acked-by: Philipp Zabel <p.zabel@...gutronix.de>
Acked-by: Manfred Schlaegl <manfred.schlaegl@....at>
Signed-off-by: Stefan Agner <stefan@...er.ch>
---
drivers/gpu/drm/panel/panel-simple.c | 2 ++
include/drm/drm_crtc.h | 9 +++++++++
2 files changed, 11 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index ceb2048..77ae07f 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -72,6 +72,7 @@ struct panel_desc {
} delay;
u32 bus_format;
+ u32 bus_flags;
};
struct panel_simple {
@@ -144,6 +145,7 @@ static int panel_simple_get_fixed_modes(struct panel_simple *panel)
if (panel->desc->bus_format)
drm_display_info_set_bus_formats(&connector->display_info,
&panel->desc->bus_format, 1);
+ connector->display_info.bus_flags = panel->desc->bus_flags;
return num;
}
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
index e0170bf..f8b37be 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
@@ -126,6 +126,14 @@ enum subpixel_order {
#define DRM_COLOR_FORMAT_RGB444 (1<<0)
#define DRM_COLOR_FORMAT_YCRCB444 (1<<1)
#define DRM_COLOR_FORMAT_YCRCB422 (1<<2)
+
+#define DRM_BUS_FLAG_DE_LOW (1<<0)
+#define DRM_BUS_FLAG_DE_HIGH (1<<1)
+/* drive data on pos. edge */
+#define DRM_BUS_FLAG_PIXDATA_POSEDGE (1<<2)
+/* drive data on neg. edge */
+#define DRM_BUS_FLAG_PIXDATA_NEGEDGE (1<<3)
+
/*
* Describes a given display (e.g. CRT or flat panel) and its limitations.
*/
@@ -147,6 +155,7 @@ struct drm_display_info {
const u32 *bus_formats;
unsigned int num_bus_formats;
+ u32 bus_flags;
/* Mask of supported hdmi deep color modes */
u8 edid_hdmi_dc_modes;
--
2.7.4
Powered by blists - more mailing lists