From mboxrd@z Thu Jan 1 00:00:00 1970 From: p.zabel@pengutronix.de (Philipp Zabel) Date: Fri, 20 Feb 2015 09:53:40 +0100 Subject: [PATCH 1/2] ARM: dts: imx6qdl-sabrelite: add supported LVDS displays In-Reply-To: <1424390002-8726-1-git-send-email-eric.nelson@boundarydevices.com> References: <1424390002-8726-1-git-send-email-eric.nelson@boundarydevices.com> Message-ID: <1424422420.3137.7.camel@pengutronix.de> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Eric, Am Donnerstag, den 19.02.2015, 16:53 -0700 schrieb Eric Nelson: > The BD-SL-i.MX6 (SABRE Lite board) supports three companion displays: > Okaya 1024x600 > Hannstar 1024x768 > LG 1280x800 > > This patch adds timing entries into the LDB device tree and aliases > for them and HDMI to make it easy for the boot loader to configure them. > > Signed-off-by: Eric Nelson Could you please have a look at the simple-panel driver and add these panels there instead? This allows to handle enable/disable timings, backlights and regulators or enable GPIOs properly. I have a patch to add drm_panel support to the imx-ldb driver (see below). It depends on this of-graph series: https://lkml.org/lkml/2015/1/22/104 regards Philipp -----8<----- From: Philipp Zabel Date: Thu, 6 Mar 2014 14:54:39 +0100 Subject: [PATCH] drm/imx: imx-ldb: add drm_panel support This patch allows to optionally attach the lvds-channel to a panel supported by a drm_panel driver using of-graph bindings, instead of supplying the modes via display-timings in the device tree. This depends on of_graph_get_port_by_id and uses the OF graph to link the optional DRM panel to the LDB lvds-channel. The output port number is 2 on devices without the external 4-port input multiplexer (i.MX5) and 4 on devices with the mux (i.MX6). Before: ldb { ... lvds-channel at 0 { ... display-timings { native-timing = <&timing1>; timing1: etm0700g0dh6 { hactive = <800>; vactive = <480>; clock-frequency = <33260000>; hsync-len = <128>; hback-porch = <88>; hfront-porch = <40>; vsync-len = <2>; vback-porch = <33>; vfront-porch = <10>; hsync-active = <0>; vsync-active = <0>; ... }; }; ... }; }; After: ldb { ... lvds-channel at 0 { ... port at 4 { reg = <4>; lvds_out: endpoint { remote_endpoint = <&panel_in>; }; }; }; }; panel { compatible = "edt,etm0700g0dh6", "simple-panel"; ... port { panel_in: endpoint { remote-endpoint = <&lvds_out>; }; }; }; Signed-off-by: Philipp Zabel [Fixed build error due to missing select on DRM_PANEL --rmk] Signed-off-by: Russell King Signed-off-by: Philipp Zabel --- drivers/gpu/drm/imx/Kconfig | 1 + drivers/gpu/drm/imx/imx-ldb.c | 45 +++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/imx/Kconfig b/drivers/gpu/drm/imx/Kconfig index ab31848..1a5dbdb 100644 --- a/drivers/gpu/drm/imx/Kconfig +++ b/drivers/gpu/drm/imx/Kconfig @@ -36,6 +36,7 @@ config DRM_IMX_TVE config DRM_IMX_LDB tristate "Support for LVDS displays" depends on DRM_IMX && MFD_SYSCON + select DRM_PANEL help Choose this to enable the internal LVDS Display Bridge (LDB) found on i.MX53 and i.MX6 processors. diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c index c604600..e3cd148 100644 --- a/drivers/gpu/drm/imx/imx-ldb.c +++ b/drivers/gpu/drm/imx/imx-ldb.c @@ -19,10 +19,11 @@ #include #include #include +#include #include #include -#include #include +#include #include