public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel
@ 2023-11-23 10:24 Michael Walle
  2023-11-23 10:24 ` [PATCH 2/2] drm/panel-simple: add Evervision VGG644804 panel entry Michael Walle
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Michael Walle @ 2023-11-23 10:24 UTC (permalink / raw)
  To: Neil Armstrong, Jessica Zhang, Sam Ravnborg, David Airlie,
	Daniel Vetter, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Thierry Reding
  Cc: dri-devel, devicetree, linux-kernel, Michael Walle

Add Evervision VGG644804 5.7" 640x480 LVDS panel compatible string.

Signed-off-by: Michael Walle <mwalle@kernel.org>
---
 .../devicetree/bindings/display/panel/panel-simple.yaml         | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
index 3ec9ee95045f..2471c99a0c96 100644
--- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
+++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
@@ -144,6 +144,8 @@ properties:
       - edt,etmv570g2dhu
         # E Ink VB3300-KCA
       - eink,vb3300-kca
+        # Evervision Electronics Co. Ltd. VGG644804 5.7" VGA TFT LCD Panel
+      - evervision,vgg644804
         # Evervision Electronics Co. Ltd. VGG804821 5.0" WVGA TFT LCD Panel
       - evervision,vgg804821
         # Foxlink Group 5" WVGA TFT LCD panel
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/2] drm/panel-simple: add Evervision VGG644804 panel entry
  2023-11-23 10:24 [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel Michael Walle
@ 2023-11-23 10:24 ` Michael Walle
  2023-12-05  8:14   ` Neil Armstrong
  2023-11-23 17:33 ` [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel Conor Dooley
  2023-12-05  8:26 ` Neil Armstrong
  2 siblings, 1 reply; 5+ messages in thread
From: Michael Walle @ 2023-11-23 10:24 UTC (permalink / raw)
  To: Neil Armstrong, Jessica Zhang, Sam Ravnborg, David Airlie,
	Daniel Vetter, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Thierry Reding
  Cc: dri-devel, devicetree, linux-kernel, Michael Walle

Timings taken from the datasheet, although sometimes there are just
typical values and it's not clear if they are no min and max values or
if you must use the typical value exactly. To make things worse, there
is no back porch but only a combined sync and back porch length.

Unfortunately, there is not public datasheet. Therefore, here are the
relevant timings:
                 | min |  typ   | max |
-----------------+-----+--------+-----+
CLK frequency    |  -  | 25.175 |  -  |
HS period        |  -  |   800  |  -  |
HS pulse width   |  5  |    30  |  -  |
HS-DEN time      | 112 |   144  | 175 |
DEN pulse width  |  -  |   640  |  -  |
VS pulse width   |  1  |     3  |  5  |
VS-DEN time      |  -  |    35  |  -  |
VS period        |  -  |   525  |  -  |

Signed-off-by: Michael Walle <mwalle@kernel.org>
---
 drivers/gpu/drm/panel/panel-simple.c | 30 ++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 9367a4572dcf..26702a847b63 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1973,6 +1973,33 @@ static const struct panel_desc eink_vb3300_kca = {
 	.connector_type = DRM_MODE_CONNECTOR_DPI,
 };
 
+static const struct display_timing evervision_vgg644804_timing = {
+	.pixelclock = { 25175000, 25175000, 25175000 },
+	.hactive = { 640, 640, 640 },
+	.hfront_porch = { 16, 16, 16 },
+	.hback_porch = { 82, 114, 170 },
+	.hsync_len = { 5, 30, 30 },
+	.vactive = { 480, 480, 480 },
+	.vfront_porch = { 10, 10, 10 },
+	.vback_porch = { 30, 32, 34 },
+	.vsync_len = { 1, 3, 5 },
+	.flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
+		 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE |
+		 DISPLAY_FLAGS_SYNC_POSEDGE,
+};
+
+static const struct panel_desc evervision_vgg644804 = {
+	.timings = &evervision_vgg644804_timing,
+	.num_timings = 1,
+	.bpc = 8,
+	.size = {
+		.width = 115,
+		.height = 86,
+	},
+	.bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
+	.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_SAMPLE_NEGEDGE,
+};
+
 static const struct display_timing evervision_vgg804821_timing = {
 	.pixelclock = { 27600000, 33300000, 50000000 },
 	.hactive = { 800, 800, 800 },
@@ -4334,6 +4361,9 @@ static const struct of_device_id platform_of_match[] = {
 	}, {
 		.compatible = "eink,vb3300-kca",
 		.data = &eink_vb3300_kca,
+	}, {
+		.compatible = "evervision,vgg644804",
+		.data = &evervision_vgg644804,
 	}, {
 		.compatible = "evervision,vgg804821",
 		.data = &evervision_vgg804821,
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel
  2023-11-23 10:24 [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel Michael Walle
  2023-11-23 10:24 ` [PATCH 2/2] drm/panel-simple: add Evervision VGG644804 panel entry Michael Walle
@ 2023-11-23 17:33 ` Conor Dooley
  2023-12-05  8:26 ` Neil Armstrong
  2 siblings, 0 replies; 5+ messages in thread
From: Conor Dooley @ 2023-11-23 17:33 UTC (permalink / raw)
  To: Michael Walle
  Cc: Neil Armstrong, Jessica Zhang, Sam Ravnborg, David Airlie,
	Daniel Vetter, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Thierry Reding, dri-devel, devicetree, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1151 bytes --]

On Thu, Nov 23, 2023 at 11:24:03AM +0100, Michael Walle wrote:
> Add Evervision VGG644804 5.7" 640x480 LVDS panel compatible string.
> 
> Signed-off-by: Michael Walle <mwalle@kernel.org>

Acked-by: Conor Dooley <conor.dooley@microchip.com>

Cheers,
Conor.

> ---
>  .../devicetree/bindings/display/panel/panel-simple.yaml         | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> index 3ec9ee95045f..2471c99a0c96 100644
> --- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> @@ -144,6 +144,8 @@ properties:
>        - edt,etmv570g2dhu
>          # E Ink VB3300-KCA
>        - eink,vb3300-kca
> +        # Evervision Electronics Co. Ltd. VGG644804 5.7" VGA TFT LCD Panel
> +      - evervision,vgg644804
>          # Evervision Electronics Co. Ltd. VGG804821 5.0" WVGA TFT LCD Panel
>        - evervision,vgg804821
>          # Foxlink Group 5" WVGA TFT LCD panel
> -- 
> 2.39.2
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] drm/panel-simple: add Evervision VGG644804 panel entry
  2023-11-23 10:24 ` [PATCH 2/2] drm/panel-simple: add Evervision VGG644804 panel entry Michael Walle
@ 2023-12-05  8:14   ` Neil Armstrong
  0 siblings, 0 replies; 5+ messages in thread
From: Neil Armstrong @ 2023-12-05  8:14 UTC (permalink / raw)
  To: Michael Walle, Jessica Zhang, Sam Ravnborg, David Airlie,
	Daniel Vetter, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Thierry Reding
  Cc: dri-devel, devicetree, linux-kernel

On 23/11/2023 11:24, Michael Walle wrote:
> Timings taken from the datasheet, although sometimes there are just
> typical values and it's not clear if they are no min and max values or
> if you must use the typical value exactly. To make things worse, there
> is no back porch but only a combined sync and back porch length.
> 
> Unfortunately, there is not public datasheet. Therefore, here are the
> relevant timings:
>                   | min |  typ   | max |
> -----------------+-----+--------+-----+
> CLK frequency    |  -  | 25.175 |  -  |
> HS period        |  -  |   800  |  -  |
> HS pulse width   |  5  |    30  |  -  |
> HS-DEN time      | 112 |   144  | 175 |
> DEN pulse width  |  -  |   640  |  -  |
> VS pulse width   |  1  |     3  |  5  |
> VS-DEN time      |  -  |    35  |  -  |
> VS period        |  -  |   525  |  -  |
> 
> Signed-off-by: Michael Walle <mwalle@kernel.org>
> ---
>   drivers/gpu/drm/panel/panel-simple.c | 30 ++++++++++++++++++++++++++++
>   1 file changed, 30 insertions(+)
> 
> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index 9367a4572dcf..26702a847b63 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -1973,6 +1973,33 @@ static const struct panel_desc eink_vb3300_kca = {
>   	.connector_type = DRM_MODE_CONNECTOR_DPI,
>   };
>   
> +static const struct display_timing evervision_vgg644804_timing = {
> +	.pixelclock = { 25175000, 25175000, 25175000 },
> +	.hactive = { 640, 640, 640 },
> +	.hfront_porch = { 16, 16, 16 },
> +	.hback_porch = { 82, 114, 170 },
> +	.hsync_len = { 5, 30, 30 },
> +	.vactive = { 480, 480, 480 },
> +	.vfront_porch = { 10, 10, 10 },
> +	.vback_porch = { 30, 32, 34 },
> +	.vsync_len = { 1, 3, 5 },
> +	.flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
> +		 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE |
> +		 DISPLAY_FLAGS_SYNC_POSEDGE,
> +};
> +
> +static const struct panel_desc evervision_vgg644804 = {
> +	.timings = &evervision_vgg644804_timing,
> +	.num_timings = 1,
> +	.bpc = 8,
> +	.size = {
> +		.width = 115,
> +		.height = 86,
> +	},
> +	.bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
> +	.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_SAMPLE_NEGEDGE,
> +};
> +
>   static const struct display_timing evervision_vgg804821_timing = {
>   	.pixelclock = { 27600000, 33300000, 50000000 },
>   	.hactive = { 800, 800, 800 },
> @@ -4334,6 +4361,9 @@ static const struct of_device_id platform_of_match[] = {
>   	}, {
>   		.compatible = "eink,vb3300-kca",
>   		.data = &eink_vb3300_kca,
> +	}, {
> +		.compatible = "evervision,vgg644804",
> +		.data = &evervision_vgg644804,
>   	}, {
>   		.compatible = "evervision,vgg804821",
>   		.data = &evervision_vgg804821,

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel
  2023-11-23 10:24 [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel Michael Walle
  2023-11-23 10:24 ` [PATCH 2/2] drm/panel-simple: add Evervision VGG644804 panel entry Michael Walle
  2023-11-23 17:33 ` [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel Conor Dooley
@ 2023-12-05  8:26 ` Neil Armstrong
  2 siblings, 0 replies; 5+ messages in thread
From: Neil Armstrong @ 2023-12-05  8:26 UTC (permalink / raw)
  To: Jessica Zhang, Sam Ravnborg, David Airlie, Daniel Vetter,
	Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Thierry Reding, Michael Walle
  Cc: dri-devel, devicetree, linux-kernel

Hi,

On Thu, 23 Nov 2023 11:24:03 +0100, Michael Walle wrote:
> Add Evervision VGG644804 5.7" 640x480 LVDS panel compatible string.
> 
> 

Thanks, Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next)

[1/2] dt-bindings: display: simple: add Evervision VGG644804 panel
      https://cgit.freedesktop.org/drm/drm-misc/commit/?id=2a5244a04e751c8617d5e7707550d97a83b1102d
[2/2] drm/panel-simple: add Evervision VGG644804 panel entry
      https://cgit.freedesktop.org/drm/drm-misc/commit/?id=1319f2178bdf1898a76ea8c4f00d57b240bbc5fd

-- 
Neil


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-12-05  8:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-23 10:24 [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel Michael Walle
2023-11-23 10:24 ` [PATCH 2/2] drm/panel-simple: add Evervision VGG644804 panel entry Michael Walle
2023-12-05  8:14   ` Neil Armstrong
2023-11-23 17:33 ` [PATCH 1/2] dt-bindings: display: simple: add Evervision VGG644804 panel Conor Dooley
2023-12-05  8:26 ` Neil Armstrong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox