Re: [PATCH] drm/panel: add support for Innolux N156BGE-L21 panel
From: Thierry Reding
Date: Fri Jun 20 2014 - 16:15:11 EST
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@xxxxxxxxxxxxxxxxx>
> ---
> 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:
pgps3az0wa597.pgp
Description: PGP signature