diff mbox series

drm/panel: simple: Add Innolux N133HSE panel support

Message ID 20200127022057.379140-1-marex@denx.de (mailing list archive)
State New, archived
Headers show
Series drm/panel: simple: Add Innolux N133HSE panel support | expand

Commit Message

Marek Vasut Jan. 27, 2020, 2:20 a.m. UTC
From: Sean Cross <xobs@kosagi.com>

The Innolux N133HSE panel is a 13.3" 1920x1080 panel that contains an
integrated backlight, and connects via eDP.

It is used in the Kosagi Novena.

Signed-off-by: Sean Cross <xobs@kosagi.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
To: dri-devel@lists.freedesktop.org
---
 .../display/panel/innolux,n133hse-ea1.txt     |  7 +++++
 drivers/gpu/drm/panel/panel-simple.c          | 26 +++++++++++++++++++
 2 files changed, 33 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/innolux,n133hse-ea1.txt

Comments

Fabio Estevam Jan. 27, 2020, noon UTC | #1
Hi Marek,

On Mon, Jan 27, 2020 at 5:16 AM Marek Vasut <marex@denx.de> wrote:
>
> From: Sean Cross <xobs@kosagi.com>
>
> The Innolux N133HSE panel is a 13.3" 1920x1080 panel that contains an
> integrated backlight, and connects via eDP.
>
> It is used in the Kosagi Novena.
>
> Signed-off-by: Sean Cross <xobs@kosagi.com>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>

The freescale.com domain is gone for quite some time.

Please use nxp.com instead or festevam@gmail.com.

Otherwise the patch looks good.

Thanks
Sam Ravnborg Jan. 29, 2020, 7:43 p.m. UTC | #2
Hi Marek.

Thanks for the patch.

On Mon, Jan 27, 2020 at 03:20:57AM +0100, Marek Vasut wrote:
> From: Sean Cross <xobs@kosagi.com>
> 
> The Innolux N133HSE panel is a 13.3" 1920x1080 panel that contains an
> integrated backlight, and connects via eDP.
> 
> It is used in the Kosagi Novena.
> 
> Signed-off-by: Sean Cross <xobs@kosagi.com>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>
> Cc: Thierry Reding <thierry.reding@gmail.com>
> To: dri-devel@lists.freedesktop.org
> ---
>  .../display/panel/innolux,n133hse-ea1.txt     |  7 +++++
>  drivers/gpu/drm/panel/panel-simple.c          | 26 +++++++++++++++++++
>  2 files changed, 33 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/display/panel/innolux,n133hse-ea1.txt
> 
> diff --git a/Documentation/devicetree/bindings/display/panel/innolux,n133hse-ea1.txt b/Documentation/devicetree/bindings/display/panel/innolux,n133hse-ea1.txt
> new file mode 100644
> index 000000000000..1a886aeedabf
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/innolux,n133hse-ea1.txt
> @@ -0,0 +1,7 @@
> +Innolux Corporation 13.3" FHD (1920x1080) TFT LCD panel
> +
> +Required properties:
> +- compatible: should be "innolux,n133hse-ea1"
> +
> +This binding is compatible with the simple-panel binding, which is specified
> +in simple-panel.txt in this directory.

For simple panels like this add the compatible to the new file pnale-simple.yaml.
We no longer use individual files for each panel.
You may need to use drm-misc-next to provide a proper patch.


> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index e14c14ac62b5..3dffd2e5af6d 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -1793,6 +1793,29 @@ static const struct panel_desc innolux_n116bge = {
>  	},
>  };
>  
> +static const struct drm_display_mode innolux_n133hse_ea1_mode = {
> +	.clock = 138500,
> +	.hdisplay = 1920,
> +	.hsync_start = 1920 + 46,
> +	.hsync_end = 1920 + 46 + 30,
> +	.htotal = 1920 + 46 + 30 + 84,
> +	.vdisplay = 1080,
> +	.vsync_start = 1080 + 2,
> +	.vsync_end = 1080 + 2 + 4,
> +	.vtotal = 1080 + 2 + 4 + 26,
> +	.vrefresh = 60,
> +};
> +
> +static const struct panel_desc innolux_n133hse_ea1 = {
> +	.modes = &innolux_n133hse_ea1_mode,
> +	.num_modes = 1,
> +	.bpc = 8,
> +	.size = {
> +		.width = 293,
> +		.height = 165,
> +	},
> +};
> +
As a minimum specify connector_type.
With eDP I assume you do not have min,typ,max figures for timings.
But if you have min.typ,max then please use a display_timings structure
and not a display_mode.

And please consider the .bus_format, .bus_flags and .flags.
We want the data in this file as precise as we can.

	Sam

>  static const struct drm_display_mode innolux_n156bge_l21_mode = {
>  	.clock = 69300,
>  	.hdisplay = 1366,
> @@ -3348,6 +3371,9 @@ static const struct of_device_id platform_of_match[] = {
>  	}, {
>  		.compatible = "innolux,n116bge",
>  		.data = &innolux_n116bge,
> +	}, {
> +		.compatible = "innolux,n133hse-ea1",
> +		.data = &innolux_n133hse_ea1,
>  	}, {
>  		.compatible = "innolux,n156bge-l21",
>  		.data = &innolux_n156bge_l21,
> -- 
> 2.24.1
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/display/panel/innolux,n133hse-ea1.txt b/Documentation/devicetree/bindings/display/panel/innolux,n133hse-ea1.txt
new file mode 100644
index 000000000000..1a886aeedabf
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/innolux,n133hse-ea1.txt
@@ -0,0 +1,7 @@ 
+Innolux Corporation 13.3" FHD (1920x1080) TFT LCD panel
+
+Required properties:
+- compatible: should be "innolux,n133hse-ea1"
+
+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 e14c14ac62b5..3dffd2e5af6d 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1793,6 +1793,29 @@  static const struct panel_desc innolux_n116bge = {
 	},
 };
 
+static const struct drm_display_mode innolux_n133hse_ea1_mode = {
+	.clock = 138500,
+	.hdisplay = 1920,
+	.hsync_start = 1920 + 46,
+	.hsync_end = 1920 + 46 + 30,
+	.htotal = 1920 + 46 + 30 + 84,
+	.vdisplay = 1080,
+	.vsync_start = 1080 + 2,
+	.vsync_end = 1080 + 2 + 4,
+	.vtotal = 1080 + 2 + 4 + 26,
+	.vrefresh = 60,
+};
+
+static const struct panel_desc innolux_n133hse_ea1 = {
+	.modes = &innolux_n133hse_ea1_mode,
+	.num_modes = 1,
+	.bpc = 8,
+	.size = {
+		.width = 293,
+		.height = 165,
+	},
+};
+
 static const struct drm_display_mode innolux_n156bge_l21_mode = {
 	.clock = 69300,
 	.hdisplay = 1366,
@@ -3348,6 +3371,9 @@  static const struct of_device_id platform_of_match[] = {
 	}, {
 		.compatible = "innolux,n116bge",
 		.data = &innolux_n116bge,
+	}, {
+		.compatible = "innolux,n133hse-ea1",
+		.data = &innolux_n133hse_ea1,
 	}, {
 		.compatible = "innolux,n156bge-l21",
 		.data = &innolux_n156bge_l21,