All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/panel: add support for Innolux N156BGE-L21 panel
@ 2014-06-12 15:09 Alban Bedel
  2014-06-20 20:14   ` Thierry Reding
  0 siblings, 1 reply; 6+ messages in thread
From: Alban Bedel @ 2014-06-12 15:09 UTC (permalink / raw)
  To: Thierry Reding; +Cc: David Airlie, dri-devel, linux-kernel, Alban Bedel

This panel is used by the Medcom Wide and supported by the
simple-panel driver.

Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de>
---
 drivers/gpu/drm/panel/panel-simple.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 309f29e..6a361bb 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -372,6 +372,28 @@ static const struct panel_desc samsung_ltn101nt05 = {
 	},
 };
 
+static const struct drm_display_mode innolux_n156bge_l21_mode = {
+	.clock = 69300,
+	.hdisplay = 1366,
+	.hsync_start = 1366,
+	.hsync_end = 1366,
+	.htotal = 1366 + 100,
+	.vdisplay = 768,
+	.vsync_start = 768,
+	.vsync_end = 768,
+	.vtotal = 768 + 20,
+	.vrefresh = 60,
+};
+
+static const struct panel_desc innolux_n156bge_l21 = {
+	.modes = &innolux_n156bge_l21_mode,
+	.num_modes = 1,
+	.size = {
+		.width = 1366,
+		.height = 768,
+	},
+};
+
 static const struct of_device_id platform_of_match[] = {
 	{
 		.compatible = "auo,b101aw03",
@@ -389,6 +411,9 @@ static const struct of_device_id platform_of_match[] = {
 		.compatible = "samsung,ltn101nt05",
 		.data = &samsung_ltn101nt05,
 	}, {
+		.compatible = "innolux,n156bge-l21",
+		.data = &innolux_n156bge_l21,
+	}, {
 		.compatible = "simple-panel",
 	}, {
 		/* sentinel */
-- 
2.0.0


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

* Re: [PATCH] drm/panel: add support for Innolux N156BGE-L21 panel
  2014-06-12 15:09 [PATCH] drm/panel: add support for Innolux N156BGE-L21 panel Alban Bedel
@ 2014-06-20 20:14   ` Thierry Reding
  0 siblings, 0 replies; 6+ messages in thread
From: Thierry Reding @ 2014-06-20 20:14 UTC (permalink / raw)
  To: Alban Bedel; +Cc: David Airlie, dri-devel, linux-kernel

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

On Thu, Jun 12, 2014 at 05:09:05PM +0200, Alban Bedel wrote:
> This panel is used by the Medcom Wide and supported by the
> simple-panel driver.
> 
> Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de>
> ---
>  drivers/gpu/drm/panel/panel-simple.c | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
> 
> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index 309f29e..6a361bb 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -372,6 +372,28 @@ static const struct panel_desc samsung_ltn101nt05 = {
>  	},
>  };
>  
> +static const struct drm_display_mode innolux_n156bge_l21_mode = {
> +	.clock = 69300,
> +	.hdisplay = 1366,
> +	.hsync_start = 1366,
> +	.hsync_end = 1366,
> +	.htotal = 1366 + 100,
> +	.vdisplay = 768,
> +	.vsync_start = 768,
> +	.vsync_end = 768,
> +	.vtotal = 768 + 20,

The timings here look slightly strange. Typically

	.{h,v}display < .{h,v}sync_start < .{h,v}hsync_end < .{h,v}total

Given your timings above essentially means that the vsync pulse starts
immediately after the last active pixel or line and is of length zero.

> +	.vrefresh = 60,
> +};
> +
> +static const struct panel_desc innolux_n156bge_l21 = {
> +	.modes = &innolux_n156bge_l21_mode,
> +	.num_modes = 1,
> +	.size = {
> +		.width = 1366,
> +		.height = 768,

This size is the physical size (in mm) of the active area of the panel.

> +	},
> +};
> +
>  static const struct of_device_id platform_of_match[] = {
>  	{
>  		.compatible = "auo,b101aw03",
> @@ -389,6 +411,9 @@ static const struct of_device_id platform_of_match[] = {
>  		.compatible = "samsung,ltn101nt05",
>  		.data = &samsung_ltn101nt05,
>  	}, {
> +		.compatible = "innolux,n156bge-l21",
> +		.data = &innolux_n156bge_l21,
> +	}, {

This patch should also be adding a device tree binding document for this
panel.

Thierry

[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]

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

* Re: [PATCH] drm/panel: add support for Innolux N156BGE-L21 panel
@ 2014-06-20 20:14   ` Thierry Reding
  0 siblings, 0 replies; 6+ messages in thread
From: Thierry Reding @ 2014-06-20 20:14 UTC (permalink / raw)
  To: Alban Bedel; +Cc: linux-kernel, dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 1968 bytes --]

On Thu, Jun 12, 2014 at 05:09:05PM +0200, Alban Bedel wrote:
> This panel is used by the Medcom Wide and supported by the
> simple-panel driver.
> 
> Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de>
> ---
>  drivers/gpu/drm/panel/panel-simple.c | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
> 
> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index 309f29e..6a361bb 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -372,6 +372,28 @@ static const struct panel_desc samsung_ltn101nt05 = {
>  	},
>  };
>  
> +static const struct drm_display_mode innolux_n156bge_l21_mode = {
> +	.clock = 69300,
> +	.hdisplay = 1366,
> +	.hsync_start = 1366,
> +	.hsync_end = 1366,
> +	.htotal = 1366 + 100,
> +	.vdisplay = 768,
> +	.vsync_start = 768,
> +	.vsync_end = 768,
> +	.vtotal = 768 + 20,

The timings here look slightly strange. Typically

	.{h,v}display < .{h,v}sync_start < .{h,v}hsync_end < .{h,v}total

Given your timings above essentially means that the vsync pulse starts
immediately after the last active pixel or line and is of length zero.

> +	.vrefresh = 60,
> +};
> +
> +static const struct panel_desc innolux_n156bge_l21 = {
> +	.modes = &innolux_n156bge_l21_mode,
> +	.num_modes = 1,
> +	.size = {
> +		.width = 1366,
> +		.height = 768,

This size is the physical size (in mm) of the active area of the panel.

> +	},
> +};
> +
>  static const struct of_device_id platform_of_match[] = {
>  	{
>  		.compatible = "auo,b101aw03",
> @@ -389,6 +411,9 @@ static const struct of_device_id platform_of_match[] = {
>  		.compatible = "samsung,ltn101nt05",
>  		.data = &samsung_ltn101nt05,
>  	}, {
> +		.compatible = "innolux,n156bge-l21",
> +		.data = &innolux_n156bge_l21,
> +	}, {

This patch should also be adding a device tree binding document for this
panel.

Thierry

[-- Attachment #1.2: Type: application/pgp-signature, Size: 836 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

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

* [PATCH v2] drm/panel: add support for InnoLux N156BGE-L21 panel
  2014-06-20 20:14   ` Thierry Reding
  (?)
@ 2014-07-22  6:38   ` Alban Bedel
  2014-07-22  8:15       ` Thierry Reding
  -1 siblings, 1 reply; 6+ messages in thread
From: Alban Bedel @ 2014-07-22  6:38 UTC (permalink / raw)
  To: Thierry Reding; +Cc: David Airlie, dri-devel, linux-kernel, Alban Bedel

This panel is used by the Medcom Wide and supported by the
simple-panel driver.

Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de>
---
v2: * Added the v/hsync pulses for correctness (the panel doesn't
      really needs them)
    * Fixed the size to report the physical size in mm
---
 .../bindings/panel/innolux,n156bge-l21.txt         |  7 ++++++
 drivers/gpu/drm/panel/panel-simple.c               | 25 ++++++++++++++++++++++
 2 files changed, 32 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/panel/innolux,n156bge-l21.txt

diff --git a/Documentation/devicetree/bindings/panel/innolux,n156bge-l21.txt b/Documentation/devicetree/bindings/panel/innolux,n156bge-l21.txt
new file mode 100644
index 0000000..7825844
--- /dev/null
+++ b/Documentation/devicetree/bindings/panel/innolux,n156bge-l21.txt
@@ -0,0 +1,7 @@
+InnoLux 15.6" WXGA TFT LCD panel
+
+Required properties:
+- compatible: should be "innolux,n156bge-l21"
+
+This binding is compatible with the simple-panel binding, which is specified
+in simple-panel.txt in this directory.
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index a251361..ce9fffc 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -447,6 +447,28 @@ static const struct panel_desc samsung_ltn101nt05 = {
 	},
 };
 
+static const struct drm_display_mode innolux_n156bge_l21_mode = {
+	.clock = 69300,
+	.hdisplay = 1366,
+	.hsync_start = 1366 + 16,
+	.hsync_end = 1366 + 16 + 34,
+	.htotal = 1366 + 16 + 34 + 50,
+	.vdisplay = 768,
+	.vsync_start = 768 + 2,
+	.vsync_end = 768 + 2 + 6,
+	.vtotal = 768 + 2 + 6 + 12,
+	.vrefresh = 60,
+};
+
+static const struct panel_desc innolux_n156bge_l21 = {
+	.modes = &innolux_n156bge_l21_mode,
+	.num_modes = 1,
+	.size = {
+		.width = 344,
+		.height = 193,
+	},
+};
+
 static const struct of_device_id platform_of_match[] = {
 	{
 		.compatible = "auo,b101aw03",
@@ -476,6 +498,9 @@ static const struct of_device_id platform_of_match[] = {
 		.compatible = "samsung,ltn101nt05",
 		.data = &samsung_ltn101nt05,
 	}, {
+		.compatible = "innolux,n156bge-l21",
+		.data = &innolux_n156bge_l21,
+	}, {
 		.compatible = "simple-panel",
 	}, {
 		/* sentinel */
-- 
2.0.2


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

* Re: [PATCH v2] drm/panel: add support for InnoLux N156BGE-L21 panel
  2014-07-22  6:38   ` [PATCH v2] drm/panel: add support for InnoLux " Alban Bedel
@ 2014-07-22  8:15       ` Thierry Reding
  0 siblings, 0 replies; 6+ messages in thread
From: Thierry Reding @ 2014-07-22  8:15 UTC (permalink / raw)
  To: Alban Bedel; +Cc: David Airlie, dri-devel, linux-kernel

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

On Tue, Jul 22, 2014 at 08:38:55AM +0200, Alban Bedel wrote:
> This panel is used by the Medcom Wide and supported by the
> simple-panel driver.
> 
> Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de>
> ---
> v2: * Added the v/hsync pulses for correctness (the panel doesn't
>       really needs them)
>     * Fixed the size to report the physical size in mm
> ---
>  .../bindings/panel/innolux,n156bge-l21.txt         |  7 ++++++
>  drivers/gpu/drm/panel/panel-simple.c               | 25 ++++++++++++++++++++++
>  2 files changed, 32 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/panel/innolux,n156bge-l21.txt

Applied, thanks.

I slightly reordered where the new panel was added, since they're sorted
alphabetically by vendor, then device.

Thierry

[-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --]

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

* Re: [PATCH v2] drm/panel: add support for InnoLux N156BGE-L21 panel
@ 2014-07-22  8:15       ` Thierry Reding
  0 siblings, 0 replies; 6+ messages in thread
From: Thierry Reding @ 2014-07-22  8:15 UTC (permalink / raw)
  To: Alban Bedel; +Cc: linux-kernel, dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 805 bytes --]

On Tue, Jul 22, 2014 at 08:38:55AM +0200, Alban Bedel wrote:
> This panel is used by the Medcom Wide and supported by the
> simple-panel driver.
> 
> Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de>
> ---
> v2: * Added the v/hsync pulses for correctness (the panel doesn't
>       really needs them)
>     * Fixed the size to report the physical size in mm
> ---
>  .../bindings/panel/innolux,n156bge-l21.txt         |  7 ++++++
>  drivers/gpu/drm/panel/panel-simple.c               | 25 ++++++++++++++++++++++
>  2 files changed, 32 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/panel/innolux,n156bge-l21.txt

Applied, thanks.

I slightly reordered where the new panel was added, since they're sorted
alphabetically by vendor, then device.

Thierry

[-- Attachment #1.2: Type: application/pgp-signature, Size: 819 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

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

end of thread, other threads:[~2014-07-22  8:15 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-12 15:09 [PATCH] drm/panel: add support for Innolux N156BGE-L21 panel Alban Bedel
2014-06-20 20:14 ` Thierry Reding
2014-06-20 20:14   ` Thierry Reding
2014-07-22  6:38   ` [PATCH v2] drm/panel: add support for InnoLux " Alban Bedel
2014-07-22  8:15     ` Thierry Reding
2014-07-22  8:15       ` Thierry Reding

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.