[PATCH] drm/panel: simple: Add Innolux N133HSE panel support

Sam Ravnborg sam at ravnborg.org
Wed Jan 29 19:43:38 UTC 2020


Hi Marek.

Thanks for the patch.

On Mon, Jan 27, 2020 at 03:20:57AM +0100, Marek Vasut wrote:
> From: Sean Cross <xobs at 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 at kosagi.com>
> Cc: Shawn Guo <shawnguo at kernel.org>
> Cc: Fabio Estevam <fabio.estevam at freescale.com>
> Cc: Thierry Reding <thierry.reding at gmail.com>
> To: dri-devel at 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 at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel


More information about the dri-devel mailing list