2020-09-07 11:30:13

by Neil Armstrong

[permalink] [raw]
Subject: [PATCH 0/3] drm: panel: add support for TDO tl070wsh30 panel

This adds support bindings and support for the TDO TL070WSH30 TFT-LCD panel
module shipped with the Amlogic S400 Development Kit.
The panel has a 1024×600 resolution and uses 24 bit RGB per pixel.
It provides a MIPI DSI interface to the host, a built-in LED backlight
and touch controller.

Changes since v1 at [1]:
- added missing vendor-prefixes patch
- removed vrefresh
- fixed warning on add_panel return
- removed DRM logging

[1] https://patchwork.freedesktop.org/series/81376/#rev1

Neil Armstrong (3):
dt-bindings: vendor-prefixes: Add Shanghai Top Display
Optolelectronics vendor prefix
dt-bindings: display: panel: add TDO tl070wsh30 DSI panel bindings
drm: panel: add TDO tl070wsh30 panel driver

.../display/panel/tdo,tl070wsh30.yaml | 58 ++++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
drivers/gpu/drm/panel/Kconfig | 11 +
drivers/gpu/drm/panel/Makefile | 1 +
drivers/gpu/drm/panel/panel-tdo-tl070wsh30.c | 256 ++++++++++++++++++
5 files changed, 328 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
create mode 100644 drivers/gpu/drm/panel/panel-tdo-tl070wsh30.c

--
2.22.0


2020-09-07 11:31:37

by Neil Armstrong

[permalink] [raw]
Subject: [PATCH v2 2/3] dt-bindings: display: panel: add TDO tl070wsh30 DSI panel bindings

This add the bindings for the 1024*600 tl070wsh30 DSI panel.

Signed-off-by: Neil Armstrong <[email protected]>
---
.../display/panel/tdo,tl070wsh30.yaml | 58 +++++++++++++++++++
1 file changed, 58 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml

diff --git a/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml b/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
new file mode 100644
index 000000000000..20f4fdedfcb0
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
@@ -0,0 +1,58 @@
+# SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause)
+# Copyright 2020 BayLibre, SAS
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/tdo,tl070wsh30.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TDO TL070WSH30 DSI panel
+
+maintainers:
+ - Neil Armstrong <[email protected]>
+
+allOf:
+ - $ref: panel-common.yaml#
+
+properties:
+
+ compatible:
+ enum:
+ - tdo,tl070wsh30
+
+ reg:
+ maxItems: 1
+ description: DSI virtual channel
+
+ backlight: true
+ reset-gpios: true
+ port: true
+ power-supply: true
+
+additionalProperties: false
+
+required:
+ - compatible
+ - power-supply
+ - reset-gpios
+ - port
+ - reg
+
+examples:
+ - |
+ dsi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ panel@0 {
+ compatible = "tdo,tl070wsh30";
+ reg = <0>;
+ power-supply = <&vcc_lcd_reg>;
+ backlight = <&panel_backlight>;
+ reset-gpios = <&gpio_reset>;
+
+ port {
+ panel: endpoint {
+ remote-endpoint = <&mipi_dsi_out>;
+ };
+ };
+ };
+ };
--
2.22.0

2020-09-07 11:49:19

by Sam Ravnborg

[permalink] [raw]
Subject: Re: [PATCH v2 2/3] dt-bindings: display: panel: add TDO tl070wsh30 DSI panel bindings

Hi Neil.

On Mon, Sep 07, 2020 at 01:10:26PM +0200, Neil Armstrong wrote:
> This add the bindings for the 1024*600 tl070wsh30 DSI panel.

The binding looks like a panel-simple-dsi.yaml candidate.
Only differen is enable-gpios versus reset-gpios

Could you check if we can use panel-simple-dsi-yaml.

Sam

>
> Signed-off-by: Neil Armstrong <[email protected]>
> ---
> .../display/panel/tdo,tl070wsh30.yaml | 58 +++++++++++++++++++
> 1 file changed, 58 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml b/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
> new file mode 100644
> index 000000000000..20f4fdedfcb0
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
> @@ -0,0 +1,58 @@
> +# SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause)
> +# Copyright 2020 BayLibre, SAS
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/panel/tdo,tl070wsh30.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: TDO TL070WSH30 DSI panel
> +
> +maintainers:
> + - Neil Armstrong <[email protected]>
> +
> +allOf:
> + - $ref: panel-common.yaml#
> +
> +properties:
> +
> + compatible:
> + enum:
> + - tdo,tl070wsh30
> +
> + reg:
> + maxItems: 1
> + description: DSI virtual channel
> +
> + backlight: true
> + reset-gpios: true
> + port: true
> + power-supply: true
> +
> +additionalProperties: false
> +
> +required:
> + - compatible
> + - power-supply
> + - reset-gpios
> + - port
> + - reg
> +
> +examples:
> + - |
> + dsi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + panel@0 {
> + compatible = "tdo,tl070wsh30";
> + reg = <0>;
> + power-supply = <&vcc_lcd_reg>;
> + backlight = <&panel_backlight>;
> + reset-gpios = <&gpio_reset>;
> +
> + port {
> + panel: endpoint {
> + remote-endpoint = <&mipi_dsi_out>;
> + };
> + };
> + };
> + };
> --
> 2.22.0

2020-09-07 13:47:38

by Neil Armstrong

[permalink] [raw]
Subject: Re: [PATCH v2 2/3] dt-bindings: display: panel: add TDO tl070wsh30 DSI panel bindings

Hi,

On 07/09/2020 13:45, Sam Ravnborg wrote:
> Hi Neil.
>
> On Mon, Sep 07, 2020 at 01:10:26PM +0200, Neil Armstrong wrote:
>> This add the bindings for the 1024*600 tl070wsh30 DSI panel.
>
> The binding looks like a panel-simple-dsi.yaml candidate.
> Only differen is enable-gpios versus reset-gpios

This is the only difference, the panel only has a reset signal and no
enable signal.

But I can add a reset-gpios to panel-simple-dsi.yaml, would it be ok ?

Neil

>
> Could you check if we can use panel-simple-dsi-yaml.
>
> Sam
>
>>
>> Signed-off-by: Neil Armstrong <[email protected]>
>> ---
>> .../display/panel/tdo,tl070wsh30.yaml | 58 +++++++++++++++++++
>> 1 file changed, 58 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml b/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
>> new file mode 100644
>> index 000000000000..20f4fdedfcb0
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
>> @@ -0,0 +1,58 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause)
>> +# Copyright 2020 BayLibre, SAS
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/display/panel/tdo,tl070wsh30.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: TDO TL070WSH30 DSI panel
>> +
>> +maintainers:
>> + - Neil Armstrong <[email protected]>
>> +
>> +allOf:
>> + - $ref: panel-common.yaml#
>> +
>> +properties:
>> +
>> + compatible:
>> + enum:
>> + - tdo,tl070wsh30
>> +
>> + reg:
>> + maxItems: 1
>> + description: DSI virtual channel
>> +
>> + backlight: true
>> + reset-gpios: true
>> + port: true
>> + power-supply: true
>> +
>> +additionalProperties: false
>> +
>> +required:
>> + - compatible
>> + - power-supply
>> + - reset-gpios
>> + - port
>> + - reg
>> +
>> +examples:
>> + - |
>> + dsi {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> + panel@0 {
>> + compatible = "tdo,tl070wsh30";
>> + reg = <0>;
>> + power-supply = <&vcc_lcd_reg>;
>> + backlight = <&panel_backlight>;
>> + reset-gpios = <&gpio_reset>;
>> +
>> + port {
>> + panel: endpoint {
>> + remote-endpoint = <&mipi_dsi_out>;
>> + };
>> + };
>> + };
>> + };
>> --
>> 2.22.0

2020-09-07 19:26:26

by Sam Ravnborg

[permalink] [raw]
Subject: Re: [PATCH v2 2/3] dt-bindings: display: panel: add TDO tl070wsh30 DSI panel bindings

Hi Neil.

On Mon, Sep 07, 2020 at 03:24:47PM +0200, Neil Armstrong wrote:
> Hi,
>
> On 07/09/2020 13:45, Sam Ravnborg wrote:
> > Hi Neil.
> >
> > On Mon, Sep 07, 2020 at 01:10:26PM +0200, Neil Armstrong wrote:
> >> This add the bindings for the 1024*600 tl070wsh30 DSI panel.
> >
> > The binding looks like a panel-simple-dsi.yaml candidate.
> > Only differen is enable-gpios versus reset-gpios
>
> This is the only difference, the panel only has a reset signal and no
> enable signal.
>
> But I can add a reset-gpios to panel-simple-dsi.yaml, would it be ok ?

Yes, that would be fine as long as it is not a required property.
It was a mistake we did not add it from the beginning.

There has been patches floating to add reset-gpios to panle.simple.c
that I rejected - this was also wrong.
Really simple and dumb panels has no reset but dsi panels that
panel-simple supports too has a reset.

Sam


>
> Neil
>
> >
> > Could you check if we can use panel-simple-dsi-yaml.
> >
> > Sam
> >
> >>
> >> Signed-off-by: Neil Armstrong <[email protected]>
> >> ---
> >> .../display/panel/tdo,tl070wsh30.yaml | 58 +++++++++++++++++++
> >> 1 file changed, 58 insertions(+)
> >> create mode 100644 Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
> >>
> >> diff --git a/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml b/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
> >> new file mode 100644
> >> index 000000000000..20f4fdedfcb0
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/display/panel/tdo,tl070wsh30.yaml
> >> @@ -0,0 +1,58 @@
> >> +# SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause)
> >> +# Copyright 2020 BayLibre, SAS
> >> +%YAML 1.2
> >> +---
> >> +$id: http://devicetree.org/schemas/display/panel/tdo,tl070wsh30.yaml#
> >> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >> +
> >> +title: TDO TL070WSH30 DSI panel
> >> +
> >> +maintainers:
> >> + - Neil Armstrong <[email protected]>
> >> +
> >> +allOf:
> >> + - $ref: panel-common.yaml#
> >> +
> >> +properties:
> >> +
> >> + compatible:
> >> + enum:
> >> + - tdo,tl070wsh30
> >> +
> >> + reg:
> >> + maxItems: 1
> >> + description: DSI virtual channel
> >> +
> >> + backlight: true
> >> + reset-gpios: true
> >> + port: true
> >> + power-supply: true
> >> +
> >> +additionalProperties: false
> >> +
> >> +required:
> >> + - compatible
> >> + - power-supply
> >> + - reset-gpios
> >> + - port
> >> + - reg
> >> +
> >> +examples:
> >> + - |
> >> + dsi {
> >> + #address-cells = <1>;
> >> + #size-cells = <0>;
> >> + panel@0 {
> >> + compatible = "tdo,tl070wsh30";
> >> + reg = <0>;
> >> + power-supply = <&vcc_lcd_reg>;
> >> + backlight = <&panel_backlight>;
> >> + reset-gpios = <&gpio_reset>;
> >> +
> >> + port {
> >> + panel: endpoint {
> >> + remote-endpoint = <&mipi_dsi_out>;
> >> + };
> >> + };
> >> + };
> >> + };
> >> --
> >> 2.22.0
>
> _______________________________________________
> dri-devel mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/dri-devel