diff mbox

[v2,2/6] drm/panel: simple: Add support for LG LP097QX1-SPA1 2048x1536 panel

Message ID 1465386753-27730-1-git-send-email-ykk@rock-chips.com (mailing list archive)
State New, archived
Headers show

Commit Message

Yakir Yang June 8, 2016, 11:52 a.m. UTC
The LG LP097QX1-SPA1 is an 9.7", 2048x1536 (QXGA) TFT-LCD panel
connected using eDP interfaces.

Signed-off-by: Yakir Yang <ykk@rock-chips.com>
---
Changes in v2: None

 drivers/gpu/drm/panel/panel-simple.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

Comments

Emil Velikov June 8, 2016, 12:20 p.m. UTC | #1
Hi Yakir,

On 8 June 2016 at 12:52, Yakir Yang <ykk@rock-chips.com> wrote:
> The LG LP097QX1-SPA1 is an 9.7", 2048x1536 (QXGA) TFT-LCD panel
> connected using eDP interfaces.
>
> Signed-off-by: Yakir Yang <ykk@rock-chips.com>
> ---
> Changes in v2: None
>
>  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 3a7bdf1..41020e1 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -1040,6 +1040,28 @@ static const struct panel_desc lg_lp120up1 = {
>         },
>  };
>
> +static const struct drm_display_mode lg_lp097qx1_spa1_mode = {
I believe that lg_lp097qx1_spa1 should be moved/sorted before lg_lp120up1.

> +static const struct panel_desc lg_lp097qx1_spa1 = {
> +       .modes = &lg_lp097qx1_spa1_mode,
> +       .num_modes = 1,
> +       .size = {
> +               .width = 2048,
> +               .height = 1536,
These are the physical dimensions of the panel. From the documentation
(at the top of the file)

@width: width (in millimeters) of the panel's active display area
...

Thierry, perhaps it's worth renaming 'size' it to
"physical_{size,dimensions}" and/or alike to make it clearer ?
Looks like we have a few cases were people got confused -
innolux_zj070na_01p and samsung_ltn101nt05.

Regards,
Emil
Thierry Reding June 10, 2016, 1:26 p.m. UTC | #2
On Wed, Jun 08, 2016 at 01:20:22PM +0100, Emil Velikov wrote:
> Hi Yakir,
> 
> On 8 June 2016 at 12:52, Yakir Yang <ykk@rock-chips.com> wrote:
> > The LG LP097QX1-SPA1 is an 9.7", 2048x1536 (QXGA) TFT-LCD panel
> > connected using eDP interfaces.
> >
> > Signed-off-by: Yakir Yang <ykk@rock-chips.com>
> > ---
> > Changes in v2: None
> >
> >  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 3a7bdf1..41020e1 100644
> > --- a/drivers/gpu/drm/panel/panel-simple.c
> > +++ b/drivers/gpu/drm/panel/panel-simple.c
> > @@ -1040,6 +1040,28 @@ static const struct panel_desc lg_lp120up1 = {
> >         },
> >  };
> >
> > +static const struct drm_display_mode lg_lp097qx1_spa1_mode = {
> I believe that lg_lp097qx1_spa1 should be moved/sorted before lg_lp120up1.
> 
> > +static const struct panel_desc lg_lp097qx1_spa1 = {
> > +       .modes = &lg_lp097qx1_spa1_mode,
> > +       .num_modes = 1,
> > +       .size = {
> > +               .width = 2048,
> > +               .height = 1536,
> These are the physical dimensions of the panel. From the documentation
> (at the top of the file)
> 
> @width: width (in millimeters) of the panel's active display area
> ...
> 
> Thierry, perhaps it's worth renaming 'size' it to
> "physical_{size,dimensions}" and/or alike to make it clearer ?

I like size because it's nice and short, and it's accurate. 2048x1536 is
a resolution, not a size. Like you said, it's already documented, and if
people looked at other descriptors they should realize that it's not the
same as the horizontal and vertical resolutions.

> Looks like we have a few cases were people got confused -
> innolux_zj070na_01p and samsung_ltn101nt05.

Yeah, well, I'm to blame for that, I should've reviewed more carefully.
Thanks for bringing that to my attention, I'll go fix those up.

Thierry
Yakir Yang June 12, 2016, 2:09 a.m. UTC | #3
Emil,

On 06/08/2016 08:20 PM, Emil Velikov wrote:
> Hi Yakir,
>
> On 8 June 2016 at 12:52, Yakir Yang <ykk@rock-chips.com> wrote:
>> The LG LP097QX1-SPA1 is an 9.7", 2048x1536 (QXGA) TFT-LCD panel
>> connected using eDP interfaces.
>>
>> Signed-off-by: Yakir Yang <ykk@rock-chips.com>
>> ---
>> Changes in v2: None
>>
>>   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 3a7bdf1..41020e1 100644
>> --- a/drivers/gpu/drm/panel/panel-simple.c
>> +++ b/drivers/gpu/drm/panel/panel-simple.c
>> @@ -1040,6 +1040,28 @@ static const struct panel_desc lg_lp120up1 = {
>>          },
>>   };
>>
>> +static const struct drm_display_mode lg_lp097qx1_spa1_mode = {
> I believe that lg_lp097qx1_spa1 should be moved/sorted before lg_lp120up1.

Ah, yes, done  :)

>> +static const struct panel_desc lg_lp097qx1_spa1 = {
>> +       .modes = &lg_lp097qx1_spa1_mode,
>> +       .num_modes = 1,
>> +       .size = {
>> +               .width = 2048,
>> +               .height = 1536,
> These are the physical dimensions of the panel. From the documentation
> (at the top of the file)
>
> @width: width (in millimeters) of the panel's active display area
> ...

Got it, this should be the "display area"
Display area     262.656(H) X 164.16(V)         (12.2”diagonal)

Thanks,
- Yakir

>
> Thierry, perhaps it's worth renaming 'size' it to
> "physical_{size,dimensions}" and/or alike to make it clearer ?
> Looks like we have a few cases were people got confused -
> innolux_zj070na_01p and samsung_ltn101nt05.
>
> Regards,
> Emil
>
>
>
diff mbox

Patch

diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 3a7bdf1..41020e1 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1040,6 +1040,28 @@  static const struct panel_desc lg_lp120up1 = {
 	},
 };
 
+static const struct drm_display_mode lg_lp097qx1_spa1_mode = {
+	.clock = 205210,
+	.hdisplay = 2048,
+	.hsync_start = 2048 + 150,
+	.hsync_end = 2048 + 150 + 5,
+	.htotal = 2048 + 150 + 5 + 5,
+	.vdisplay = 1536,
+	.vsync_start = 1536 + 3,
+	.vsync_end = 1536 + 3 + 1,
+	.vtotal = 1536 + 3 + 1 + 9,
+	.vrefresh = 60,
+};
+
+static const struct panel_desc lg_lp097qx1_spa1 = {
+	.modes = &lg_lp097qx1_spa1_mode,
+	.num_modes = 1,
+	.size = {
+		.width = 2048,
+		.height = 1536,
+	},
+};
+
 static const struct drm_display_mode lg_lp129qe_mode = {
 	.clock = 285250,
 	.hdisplay = 2560,
@@ -1460,6 +1482,9 @@  static const struct of_device_id platform_of_match[] = {
 		.compatible = "lg,lp120up1",
 		.data = &lg_lp120up1,
 	}, {
+		.compatible = "lg,lp097qx1-spa1",
+		.data = &lg_lp097qx1_spa1,
+	}, {
 		.compatible = "lg,lp129qe",
 		.data = &lg_lp129qe,
 	}, {