[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210818144648.72665-1-pavlica.nikola@gmail.com>
Date: Wed, 18 Aug 2021 16:46:46 +0200
From: Nikola Pavlica <pavlica.nikola@...il.com>
To: dri-devel@...ts.freedesktop.org
Cc: thierry.reding@...il.com, sam@...nborg.org, airlied@...ux.ie,
daniel@...ll.ch, linux-arm-kernel@...ts.infradead.org,
linux-sunxi@...glegroups.com, linux-sunxi@...ts.linux.dev,
linux-kernel@...r.kernel.org,
Nikola Pavlica <pavlica.nikola@...il.com>
Subject: [PATCH 1/3] drm/panel-simple: Add Vivax TPC-9150 panel v4
The model and make of the LCD panel of the Vivax TPC-9150 is unknown,
hence the panel settings that were retrieved with a FEX dump are named
after the device NOT the actual panel.
The LCD in question is a 50 pin MISO TFT LCD panel of the resolution
1024x600 used by the aforementioned device.
Version 2, as Thierry kindly suggested that I fix the order in which the
panel was ordered compared to others.
Version 3, filling in the required info suggested by Sam. Plus some
factual issues that I've corrected myself (tested working)
Version 4, rearranged the display parameters and fix invalid bit format
issue. (Thanks Sam)
Thanks,
Nikola
Signed-off-by: Nikola Pavlica <pavlica.nikola@...il.com>
---
drivers/gpu/drm/panel/panel-simple.c | 29 ++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 4e2dad314c79..9e06c375f8a0 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -3989,6 +3989,32 @@ static const struct panel_desc urt_umsh_8596md_parallel = {
.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
};
+static const struct drm_display_mode vivax_tpc9150_panel_mode = {
+ .clock = 60000,
+ .hdisplay = 1024,
+ .hsync_start = 1024 + 160,
+ .hsync_end = 1024 + 160 + 100,
+ .htotal = 1024 + 160 + 100 + 60,
+ .vdisplay = 600,
+ .vsync_start = 600 + 12,
+ .vsync_end = 600 + 12 + 10,
+ .vtotal = 600 + 12 + 10 + 13,
+};
+
+static const struct panel_desc vivax_tpc9150_panel = {
+ .modes = &vivax_tpc9150_panel_mode,
+ .num_modes = 1,
+ .bpc = 6,
+ .size = {
+ .width = 200,
+ .height = 115,
+ },
+ .bus_format = MEDIA_BUS_FMT_RGB666_1X18,
+ .bus_flags = DRM_BUS_FLAG_DE_HIGH,
+ .connector_type = DRM_MODE_CONNECTOR_LVDS,
+};
+
+
static const struct drm_display_mode vl050_8048nt_c01_mode = {
.clock = 33333,
.hdisplay = 800,
@@ -4490,6 +4516,9 @@ static const struct of_device_id platform_of_match[] = {
}, {
.compatible = "urt,umsh-8596md-20t",
.data = &urt_umsh_8596md_parallel,
+ }, {
+ .compatible = "vivax,tpc9150-panel",
+ .data = &vivax_tpc9150_panel,
}, {
.compatible = "vxt,vl050-8048nt-c01",
.data = &vl050_8048nt_c01,
--
2.32.0
Powered by blists - more mailing lists