diff mbox series

[v2,1/1] panel-simple: add LOGIC Technologies panels

Message ID 20180830204713.GA22660@ravnborg.org (mailing list archive)
State New, archived
Headers show
Series [v2,1/1] panel-simple: add LOGIC Technologies panels | expand

Commit Message

Sam Ravnborg Aug. 30, 2018, 8:47 p.m. UTC
From 1d6e6e327162c6965c6007f9a46ce51086a7a458 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B8ren=20Andersen?= <san@skov.dk>
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@skov.dk>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
---
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 mbox series

Patch

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,
 	}, {