>From 1d6e6e327162c6965c6007f9a46ce51086a7a458 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20Andersen?= <san@xxxxxxx> Date: Thu, 30 Aug 2018 20:48:57 +0200 Subject: [PATCH 1/1] panel-simple: add LOGIC Technologies panels MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add support for the following panels from LOGIC Technologies, Inc: - LTTD800480070-L2RT - LTTD800480070-L6WH-RT Include a new vendor prefix for LOGIC Technologies Inc. Include bindings for the panels too. The LTTD800480 L2RT is discontinued, but it may be in use by existing products. Signed-off-by: Søren Andersen <san@xxxxxxx> Signed-off-by: Sam Ravnborg <sam@xxxxxxxxxxxx> --- v2: Checked several simple panels, all had a bindings file. So my assumption about simple panels not requiring a binding was wrong. Thus added the bindings, no other changes. /Sam .../panel/logictechnologies,lttd800480070-l2rt.txt | 7 +++ .../logictechnologies,lttd800480070-l6wh-rt.txt | 7 +++ .../devicetree/bindings/vendor-prefixes.txt | 1 + drivers/gpu/drm/panel/panel-simple.c | 70 ++++++++++++++++++++++ 4 files changed, 85 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/panel/logictechnologies,lttd800480070-l2rt.txt create mode 100644 Documentation/devicetree/bindings/display/panel/logictechnologies,lttd800480070-l6wh-rt.txt diff --git a/Documentation/devicetree/bindings/display/panel/logictechnologies,lttd800480070-l2rt.txt b/Documentation/devicetree/bindings/display/panel/logictechnologies,lttd800480070-l2rt.txt new file mode 100644 index 000000000000..4e9a888e8045 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/logictechnologies,lttd800480070-l2rt.txt @@ -0,0 +1,7 @@ +LOGIC Technologies Inc. LTTD800x480 L2RT 7" (800x480 pixels) TFT LCD panel + +Required properties: +- compatible: should be "logictechnologies,lttd800480070-l2rt" + +This binding is compatible with the simple-panel binding, which is specified +in simple-panel.txt in this directory. diff --git a/Documentation/devicetree/bindings/display/panel/logictechnologies,lttd800480070-l6wh-rt.txt b/Documentation/devicetree/bindings/display/panel/logictechnologies,lttd800480070-l6wh-rt.txt new file mode 100644 index 000000000000..211f0dffcf16 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/logictechnologies,lttd800480070-l6wh-rt.txt @@ -0,0 +1,7 @@ +LOGIC Technologies Inc. LTTD800x480 Lw6H-RT 7" (800x480 pixels) TFT LCD panel + +Required properties: +- compatible: should be "logictechnologies,lttd800480070-l6wh-rt" + +This binding is compatible with the simple-panel binding, which is specified +in simple-panel.txt in this directory. diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt index 2c3fc512e746..de11bf5b7dba 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.txt +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt @@ -215,6 +215,7 @@ linux Linux-specific binding linx Linx Technologies lltc Linear Technology Corporation logicpd Logic PD, Inc. +logictechnologies LOGIC Technologies, Inc. lsi LSI Corp. (LSI Logic) lwn Liebherr-Werk Nenzing GmbH macnica Macnica Americas diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index 97964f7f2ace..8f396afea918 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -1576,6 +1576,70 @@ static const struct panel_desc lg_lp129qe = { }, }; +static const struct drm_display_mode logic_techno_lttd800480070_l2rt_mode = { + .clock = 33000, + .hdisplay = 800, + .hsync_start = 800 + 112, + .hsync_end = 800 + 112 + 3, + .htotal = 800 + 112 + 3 + 85, + .vdisplay = 480, + .vsync_start = 480 + 38, + .vsync_end = 480 + 38 + 3, + .vtotal = 480 + 38 + 3 + 29, + .vrefresh = 60, + .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, +}; + +static const struct panel_desc logic_techno_lttd800480070_l2rt = { + .modes = &logic_techno_lttd800480070_l2rt_mode, + .num_modes = 1, + .bpc = 8, + .size = { + .width = 154, + .height = 86, + }, + .delay = { + .prepare = 45, + .enable = 100, + .disable = 100, + .unprepare = 45 + }, + .bus_format = MEDIA_BUS_FMT_RGB888_1X24, + .bus_flags = DRM_BUS_FLAG_PIXDATA_POSEDGE, +}; + +static const struct drm_display_mode logic_techno_lttd800480070_l6wh_rt_mode = { + .clock = 33000, + .hdisplay = 800, + .hsync_start = 800 + 154, + .hsync_end = 800 + 154 + 3, + .htotal = 800 + 154 + 3 + 43, + .vdisplay = 480, + .vsync_start = 480 + 47, + .vsync_end = 480 + 47 + 3, + .vtotal = 480 + 47 + 3 + 20, + .vrefresh = 60, + .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, +}; + +static const struct panel_desc logic_techno_lttd800480070_l6wh_rt = { + .modes = &logic_techno_lttd800480070_l6wh_rt_mode, + .num_modes = 1, + .bpc = 8, + .size = { + .width = 154, + .height = 86, + }, + .delay = { + .prepare = 45, + .enable = 100, + .disable = 100, + .unprepare = 45 + }, + .bus_format = MEDIA_BUS_FMT_RGB888_1X24, + .bus_flags = DRM_BUS_FLAG_PIXDATA_POSEDGE, +}; + static const struct drm_display_mode mitsubishi_aa070mc01_mode = { .clock = 30400, .hdisplay = 800, @@ -2472,6 +2536,12 @@ static const struct of_device_id platform_of_match[] = { .compatible = "lg,lp129qe", .data = &lg_lp129qe, }, { + .compatible = "logictechnologies,lttd800480070-l2rt", + .data = &logic_techno_lttd800480070_l2rt, + }, { + .compatible = "logictechnologies,lttd800480070-l6wh-rt", + .data = &logic_techno_lttd800480070_l6wh_rt, + }, { .compatible = "mitsubishi,aa070mc01-ca1", .data = &mitsubishi_aa070mc01, }, { -- 2.12.0 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel