LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH] drm/panel-simple: Add Vivax TPC-9150 panel
@ 2021-08-17 8:32 Nikola Pavlica
2021-08-17 14:36 ` Thierry Reding
0 siblings, 1 reply; 2+ messages in thread
From: Nikola Pavlica @ 2021-08-17 8:32 UTC (permalink / raw)
To: dri-devel
Cc: thierry.reding, sam, airlied, daniel, linux-arm-kernel,
linux-sunxi, linux-sunxi, linux-kernel, Nikola Pavlica
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.
Signed-off-by: Nikola Pavlica <pavlica.nikola@gmail.com>
---
drivers/gpu/drm/panel/panel-simple.c | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 4e2dad314c79..97fc3c5740bb 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -4090,6 +4090,29 @@ static const struct panel_desc arm_rtsm = {
.bus_format = MEDIA_BUS_FMT_RGB888_1X24,
};
+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,
+ .size = {
+ .width = 223,
+ .height = 125,
+ },
+ .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
+ .bus_flags = DRM_BUS_FLAG_DE_HIGH,
+};
+
static const struct of_device_id platform_of_match[] = {
{
.compatible = "ampire,am-1280800n3tzqw-t00h",
@@ -4103,6 +4126,9 @@ static const struct of_device_id platform_of_match[] = {
}, {
.compatible = "arm,rtsm-display",
.data = &arm_rtsm,
+ }, {
+ .compatible = "vivax,tpc9150-panel",
+ .data = &vivax_tpc9150_panel,
}, {
.compatible = "armadeus,st0700-adapt",
.data = &armadeus_st0700_adapt,
--
2.32.0
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] drm/panel-simple: Add Vivax TPC-9150 panel
2021-08-17 8:32 [PATCH] drm/panel-simple: Add Vivax TPC-9150 panel Nikola Pavlica
@ 2021-08-17 14:36 ` Thierry Reding
0 siblings, 0 replies; 2+ messages in thread
From: Thierry Reding @ 2021-08-17 14:36 UTC (permalink / raw)
To: Nikola Pavlica
Cc: dri-devel, sam, airlied, daniel, linux-arm-kernel, linux-sunxi,
linux-sunxi, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 2288 bytes --]
On Tue, Aug 17, 2021 at 10:32:01AM +0200, Nikola Pavlica wrote:
> 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.
>
> Signed-off-by: Nikola Pavlica <pavlica.nikola@gmail.com>
> ---
> drivers/gpu/drm/panel/panel-simple.c | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
>
> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index 4e2dad314c79..97fc3c5740bb 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -4090,6 +4090,29 @@ static const struct panel_desc arm_rtsm = {
> .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
> };
>
> +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,
> + .size = {
> + .width = 223,
> + .height = 125,
> + },
> + .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
> + .bus_flags = DRM_BUS_FLAG_DE_HIGH,
> +};
> +
These were originally supposed to be alphabetically ordered by
compatible string, though it looks like at least the data structures for
ARM RTSM weren't properly ordered.
Perhaps you can prepend a patch correcting that order and then make sure
your patch keeps the alphabetical ordering, too?
> static const struct of_device_id platform_of_match[] = {
> {
> .compatible = "ampire,am-1280800n3tzqw-t00h",
> @@ -4103,6 +4126,9 @@ static const struct of_device_id platform_of_match[] = {
> }, {
> .compatible = "arm,rtsm-display",
> .data = &arm_rtsm,
> + }, {
> + .compatible = "vivax,tpc9150-panel",
> + .data = &vivax_tpc9150_panel,
Also make sure to keep the alphabetical order here.
Thierry
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-08-17 14:36 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-17 8:32 [PATCH] drm/panel-simple: Add Vivax TPC-9150 panel Nikola Pavlica
2021-08-17 14:36 ` Thierry Reding
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).