Re: [PATCH v2] drm/panel: simple: add support for Sharp LQ150X1LG11 panels

2016-09-23 Thread Rob Herring
On Fri, Sep 23, 2016 at 4:39 PM, Peter Rosin  wrote:
> On 2016-09-23 19:39, Rob Herring wrote:
>> On Sat, Sep 17, 2016 at 11:34:22AM +0200, Peter Rosin wrote:
>>> From: Gustaf Lindström 
>>>
>>> The Sharp 15" LQ150X1LG11 panel is an XGA TFT LCD panel.
>>>
>>> Signed-off-by: Gustaf Lindström 
>>> Signed-off-by: Peter Rosin 
>>> ---
>>>  .../bindings/display/panel/sharp,lq150x1lg11.txt   |  7 ++
>>>  drivers/gpu/drm/panel/panel-simple.c   | 27 
>>> ++
>>>  2 files changed, 34 insertions(+)
>>>  create mode 100644 
>>> Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
>>>
>>> v1->v2: correct author
>>>
>>> diff --git 
>>> a/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt 
>>> b/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
>>> new file mode 100644
>>> index ..014428c984c8
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
>>> @@ -0,0 +1,7 @@
>>> +Sharp 15" LQ150X1LG11 XGA TFT LCD panel
>>> +
>>> +Required properties:
>>> +- compatible: should be "sharp,lq150x1lg11"
>>
>> Looking at the spec, what about 12V VDD, 3.3V VCC, XSTABY (backlight
>> ctrl), VBR (PWM), RL/UD, SELLVDS signals?
>
> I guess you're saying that simple-panel isn't the best match?

No, I'm only saying the h/w description should be complete.

> Is it
> ok to make the DT bindings more complete but still leave it to the
> simple-panel driver to support part of it?

Sure, all the properties can be optional though you should define the
default if not present. You're the first one, so you get to pick
defaults.

> Or should we just give
> up for the time being, and carry a local patch pending a custom
> driver?

Not at all.

Rob


Re: [PATCH v2] drm/panel: simple: add support for Sharp LQ150X1LG11 panels

2016-09-23 Thread Peter Rosin
On 2016-09-23 19:39, Rob Herring wrote:
> On Sat, Sep 17, 2016 at 11:34:22AM +0200, Peter Rosin wrote:
>> From: Gustaf Lindström 
>>
>> The Sharp 15" LQ150X1LG11 panel is an XGA TFT LCD panel.
>>
>> Signed-off-by: Gustaf Lindström 
>> Signed-off-by: Peter Rosin 
>> ---
>>  .../bindings/display/panel/sharp,lq150x1lg11.txt   |  7 ++
>>  drivers/gpu/drm/panel/panel-simple.c   | 27 
>> ++
>>  2 files changed, 34 insertions(+)
>>  create mode 100644 
>> Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
>>
>> v1->v2: correct author
>>
>> diff --git 
>> a/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt 
>> b/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
>> new file mode 100644
>> index ..014428c984c8
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
>> @@ -0,0 +1,7 @@
>> +Sharp 15" LQ150X1LG11 XGA TFT LCD panel
>> +
>> +Required properties:
>> +- compatible: should be "sharp,lq150x1lg11"
> 
> Looking at the spec, what about 12V VDD, 3.3V VCC, XSTABY (backlight 
> ctrl), VBR (PWM), RL/UD, SELLVDS signals?

I guess you're saying that simple-panel isn't the best match? Is it
ok to make the DT bindings more complete but still leave it to the
simple-panel driver to support part of it? Or should we just give
up for the time being, and carry a local patch pending a custom
driver?

Cheers,
Peter



Re: [PATCH v2] drm/panel: simple: add support for Sharp LQ150X1LG11 panels

2016-09-23 Thread Rob Herring
On Sat, Sep 17, 2016 at 11:34:22AM +0200, Peter Rosin wrote:
> From: Gustaf Lindström 
> 
> The Sharp 15" LQ150X1LG11 panel is an XGA TFT LCD panel.
> 
> Signed-off-by: Gustaf Lindström 
> Signed-off-by: Peter Rosin 
> ---
>  .../bindings/display/panel/sharp,lq150x1lg11.txt   |  7 ++
>  drivers/gpu/drm/panel/panel-simple.c   | 27 
> ++
>  2 files changed, 34 insertions(+)
>  create mode 100644 
> Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
> 
> v1->v2: correct author
> 
> diff --git 
> a/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt 
> b/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
> new file mode 100644
> index ..014428c984c8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
> @@ -0,0 +1,7 @@
> +Sharp 15" LQ150X1LG11 XGA TFT LCD panel
> +
> +Required properties:
> +- compatible: should be "sharp,lq150x1lg11"

Looking at the spec, what about 12V VDD, 3.3V VCC, XSTABY (backlight 
ctrl), VBR (PWM), RL/UD, SELLVDS signals?

Rob


[PATCH v2] drm/panel: simple: add support for Sharp LQ150X1LG11 panels

2016-09-17 Thread Peter Rosin
From: Gustaf Lindström 

The Sharp 15" LQ150X1LG11 panel is an XGA TFT LCD panel.

Signed-off-by: Gustaf Lindström 
Signed-off-by: Peter Rosin 
---
 .../bindings/display/panel/sharp,lq150x1lg11.txt   |  7 ++
 drivers/gpu/drm/panel/panel-simple.c   | 27 ++
 2 files changed, 34 insertions(+)
 create mode 100644 
Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt

v1->v2: correct author

diff --git 
a/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt 
b/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
new file mode 100644
index ..014428c984c8
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/sharp,lq150x1lg11.txt
@@ -0,0 +1,7 @@
+Sharp 15" LQ150X1LG11 XGA TFT LCD panel
+
+Required properties:
+- compatible: should be "sharp,lq150x1lg11"
+
+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 85143d1b9b31..58cfe0a7a9d6 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1386,6 +1386,30 @@ static const struct panel_desc sharp_lq123p1jx31 = {
},
 };
 
+static const struct drm_display_mode sharp_lq150x1lg11_mode = {
+   .clock = 71100,
+   .hdisplay = 1024,
+   .hsync_start = 1024 + 168,
+   .hsync_end = 1024 + 168 + 64,
+   .htotal = 1024 + 168 + 64 + 88,
+   .vdisplay = 768,
+   .vsync_start = 768 + 37,
+   .vsync_end = 768 + 37 + 2,
+   .vtotal = 768 + 37 + 2 + 8,
+   .vrefresh = 60,
+};
+
+static const struct panel_desc sharp_lq150x1lg11 = {
+   .modes = &sharp_lq150x1lg11_mode,
+   .num_modes = 1,
+   .bpc = 8,
+   .size = {
+   .width = 304,
+   .height = 228,
+   },
+   .bus_format = MEDIA_BUS_FMT_RGB565_1X16,
+};
+
 static const struct drm_display_mode shelly_sca07010_bfn_lnn_mode = {
.clock = 33300,
.hdisplay = 800,
@@ -1641,6 +1665,9 @@ static const struct of_device_id platform_of_match[] = {
.compatible = "sharp,lq123p1jx31",
.data = &sharp_lq123p1jx31,
}, {
+   .compatible = "sharp,lq150x1lg11",
+   .data = &sharp_lq150x1lg11,
+   }, {
.compatible = "shelly,sca07010-bfn-lnn",
.data = &shelly_sca07010_bfn_lnn,
}, {
-- 
2.1.4