diff mbox series

[RFC,8/8] dt-bindings: display: panel: add Fascontek FS035VG158 panel

Message ID 20230911090206.3121440-9-contact@jookia.org
State Changes Requested
Headers show
Series Add FS035VG158 panel | expand

Checks

Context Check Description
robh/checkpatch success
robh/patch-applied success
robh/dtbs-check warning build log
robh/dt-meta-schema success

Commit Message

John Watts Sept. 11, 2023, 9:02 a.m. UTC
This is a small 3.5" 640x480 IPS LCD panel.

Signed-off-by: John Watts <contact@jookia.org>
---
 .../display/panel/fascontek,fs035vg158.yaml   | 60 +++++++++++++++++++
 1 file changed, 60 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/fascontek,fs035vg158.yaml

Comments

John Watts Sept. 11, 2023, 9:49 a.m. UTC | #1
Hello again,

On Mon, Sep 11, 2023 at 11:41:12AM +0200, Krzysztof Kozlowski wrote:
> > +maintainers:
> > +  - John Watts <contact@jookia.org>
> > +
> > +allOf:
> > +  - $ref: panel-common.yaml#
> > +  - $ref: /schemas/spi/spi-peripheral-props.yaml#
> > +
> > +properties:
> > +  compatible:
> > +    const: fascontek,fs035vg158
> > +
> > +  backlight: true
> > +  port: true
> > +  power-supply: true
> > +  reg: true
> > +  reset-gpios: true
> 
> Why do you need all these 5? They are allowed by panel-common.
> 
> > +
> > +  spi-3wire: true
> > +
> > +required:
> > +  - compatible
> 
> Missing reg. Probably also port.
> 
> 
> > +  - power-supply
> > +  - reset-gpios
> > +

I have just copy pasted the other panel's yaml, so these issues apply
there too. Should I fix that panel's yaml up first then re-copy?

> 
> 
> Best regards,
> Krzysztof
> 

John.
Krzysztof Kozlowski Sept. 11, 2023, 11:49 a.m. UTC | #2
On 11/09/2023 11:49, John Watts wrote:
> Hello again,
> 
> On Mon, Sep 11, 2023 at 11:41:12AM +0200, Krzysztof Kozlowski wrote:
>>> +maintainers:
>>> +  - John Watts <contact@jookia.org>
>>> +
>>> +allOf:
>>> +  - $ref: panel-common.yaml#
>>> +  - $ref: /schemas/spi/spi-peripheral-props.yaml#
>>> +
>>> +properties:
>>> +  compatible:
>>> +    const: fascontek,fs035vg158
>>> +
>>> +  backlight: true
>>> +  port: true
>>> +  power-supply: true
>>> +  reg: true
>>> +  reset-gpios: true
>>
>> Why do you need all these 5? They are allowed by panel-common.
>>
>>> +
>>> +  spi-3wire: true
>>> +
>>> +required:
>>> +  - compatible
>>
>> Missing reg. Probably also port.
>>
>>
>>> +  - power-supply
>>> +  - reset-gpios
>>> +
> 
> I have just copy pasted the other panel's yaml, so these issues apply
> there too. Should I fix that panel's yaml up first then re-copy?

If the other panel has exactly the same case, then yes, you can do like
this. But it depends on the bindings - to which ones do you refer as
your tmeplate?

Best regards,
Krzysztof
Krzysztof Kozlowski Sept. 12, 2023, 6:55 a.m. UTC | #3
On 11/09/2023 18:47, John Watts wrote:
> On Mon, Sep 11, 2023 at 01:49:39PM +0200, Krzysztof Kozlowski wrote:
>> If the other panel has exactly the same case, then yes, you can do like
>> this. But it depends on the bindings - to which ones do you refer as
>> your tmeplate?
> 
> Documentation/devicetree/bindings/display/panel/leadtek,ltk035c5444t.yaml

The file is indeed serving as poor example.

Best regards,
Krzysztof
John Watts Sept. 12, 2023, 8:56 a.m. UTC | #4
On Tue, Sep 12, 2023 at 08:55:31AM +0200, Krzysztof Kozlowski wrote:
> On 11/09/2023 18:47, John Watts wrote:
> > On Mon, Sep 11, 2023 at 01:49:39PM +0200, Krzysztof Kozlowski wrote:
> >> If the other panel has exactly the same case, then yes, you can do like
> >> this. But it depends on the bindings - to which ones do you refer as
> >> your tmeplate?
> > 
> > Documentation/devicetree/bindings/display/panel/leadtek,ltk035c5444t.yaml
> 
> The file is indeed serving as poor example.

I'm happy to fix it up according to your response and include it in v2 of the RFC.
Should this be split in to two RFCs- one for cleanup, one for the new panel?

> 
> Best regards,
> Krzysztof
> 

John.
John Watts Sept. 17, 2023, 8:24 p.m. UTC | #5
On Mon, Sep 11, 2023 at 11:41:12AM +0200, Krzysztof Kozlowski wrote:
> Missing reg. Probably also port.

Hello again,

I've been working on v2 of this series and done some initial cleanup.

Right now it looks a bit like this:

> allOf:
>   - $ref: panel-common.yaml#
>   - $ref: /schemas/spi/spi-peripheral-props.yaml#
> 
> properties:
>   compatible:
>     const: fascontek,fs035vg158
> 
>   spi-3wire: true
> 
> required:
>   - compatible
>   - reg
>   - port
>   - power-supply
>   - reset-gpios

Does this seem correct?
- reg is required by spi-controller
- port is listed in panel-common
- power-supply is listed in panel-common

I'm guessing that the required section just lists the minimal
properties needed for this specific device tree yaml?
There's nothing implied by allOf?

> Best regards,
> Krzysztof
> 

John Watts.
Krzysztof Kozlowski Sept. 18, 2023, 12:06 p.m. UTC | #6
On 17/09/2023 22:24, John Watts wrote:
> On Mon, Sep 11, 2023 at 11:41:12AM +0200, Krzysztof Kozlowski wrote:
>> Missing reg. Probably also port.
> 
> Hello again,
> 
> I've been working on v2 of this series and done some initial cleanup.
> 
> Right now it looks a bit like this:
> 
>> allOf:
>>   - $ref: panel-common.yaml#
>>   - $ref: /schemas/spi/spi-peripheral-props.yaml#
>>
>> properties:
>>   compatible:
>>     const: fascontek,fs035vg158
>>
>>   spi-3wire: true
>>
>> required:
>>   - compatible
>>   - reg
>>   - port
>>   - power-supply
>>   - reset-gpios
> 
> Does this seem correct?
> - reg is required by spi-controller
> - port is listed in panel-common
> - power-supply is listed in panel-common
> 
> I'm guessing that the required section just lists the minimal
> properties needed for this specific device tree yaml?
> There's nothing implied by allOf?

Ah, then it is fine.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/display/panel/fascontek,fs035vg158.yaml b/Documentation/devicetree/bindings/display/panel/fascontek,fs035vg158.yaml
new file mode 100644
index 000000000000..00d43ef8a33d
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/fascontek,fs035vg158.yaml
@@ -0,0 +1,60 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/fascontek,fs035vg158.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Fascontek FS035VG158 3.5" (640x480 pixels) 24-bit IPS LCD panel
+
+maintainers:
+  - John Watts <contact@jookia.org>
+
+allOf:
+  - $ref: panel-common.yaml#
+  - $ref: /schemas/spi/spi-peripheral-props.yaml#
+
+properties:
+  compatible:
+    const: fascontek,fs035vg158
+
+  backlight: true
+  port: true
+  power-supply: true
+  reg: true
+  reset-gpios: true
+
+  spi-3wire: true
+
+required:
+  - compatible
+  - power-supply
+  - reset-gpios
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    spi {
+        #address-cells = <1>;
+        #size-cells = <0>;
+        panel@0 {
+            compatible = "fascontek,fs035vg158";
+            reg = <0>;
+
+            spi-3wire;
+            spi-max-frequency = <3125000>;
+
+            reset-gpios = <&gpe 2 GPIO_ACTIVE_LOW>;
+
+            backlight = <&backlight>;
+            power-supply = <&vcc>;
+
+            port {
+                panel_input: endpoint {
+                    remote-endpoint = <&panel_output>;
+                };
+            };
+        };
+    };