Message ID | 20220211233137.99624-2-danilokrummrich@dk-develop.de (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [1/2] dt-bindings: ps2-gpio: convert binding to json-schema | expand |
On 12/02/2022 00:31, Danilo Krummrich wrote: > Convert the ps2-gpio dt-binding documentation to DT schema format using > the json-schema. > > Signed-off-by: Danilo Krummrich <danilokrummrich@dk-develop.de> > --- > .../devicetree/bindings/serio/ps2-gpio.txt | 23 -------- > .../devicetree/bindings/serio/ps2-gpio.yaml | 52 +++++++++++++++++++ > 2 files changed, 52 insertions(+), 23 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/serio/ps2-gpio.txt > create mode 100644 Documentation/devicetree/bindings/serio/ps2-gpio.yaml > > diff --git a/Documentation/devicetree/bindings/serio/ps2-gpio.txt b/Documentation/devicetree/bindings/serio/ps2-gpio.txt > deleted file mode 100644 > index 7b7bc9cdf986..000000000000 > --- a/Documentation/devicetree/bindings/serio/ps2-gpio.txt > +++ /dev/null > @@ -1,23 +0,0 @@ > -Device-Tree binding for ps/2 gpio device > - > -Required properties: > - - compatible = "ps2-gpio" > - - data-gpios: the data pin > - - clk-gpios: the clock pin > - - interrupts: Should trigger on the falling edge of the clock line. > - > -Optional properties: > - - write-enable: Indicates whether write function is provided > - to serio device. Possibly providing the write fn will not work, because > - of the tough timing requirements. > - > -Example nodes: > - > -ps2@0 { > - compatible = "ps2-gpio"; > - interrupt-parent = <&gpio>; > - interrupts = <23 IRQ_TYPE_EDGE_FALLING>; > - data-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>; > - clk-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; > - write-enable; > -}; > diff --git a/Documentation/devicetree/bindings/serio/ps2-gpio.yaml b/Documentation/devicetree/bindings/serio/ps2-gpio.yaml > new file mode 100644 > index 000000000000..ec6fa7b40851 > --- /dev/null > +++ b/Documentation/devicetree/bindings/serio/ps2-gpio.yaml > @@ -0,0 +1,52 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/serio/ps2-gpio.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Bindings for GPIO based PS/2 > + > +maintainers: > + - Danilo Krummrich <danilokrummrich@dk-develop.de> > + > +properties: > + compatible: > + items: Hi, I think you do not expect more compatibles, so skip "items". > + - const: ps2-gpio > + > + data-gpios: > + description: > + the gpio used for the data signal > + maxItems: 1 > + > + clk-gpios: > + description: > + the gpio used for the clock signal > + maxItems: 1 > + > + interrupts: > + description: > + The given interrupt should trigger on the falling edge of the clock line. > + maxItems: 1 > + > + write-enable: This does not look like a standard property. You need "type: boolean". > + description: > + Indicates whether write function is provided to serio device. Possibly > + providing the write function will not work, because of the tough timing > + requirements. > + > +required: Also: compatible > + - data-gpios > + - clk-gpios > + - interrupts > + > +examples: > + - | > + ps2@0 { Does it compile cleanly? You used an unit-address but there is no reg. > + compatible = "ps2-gpio"; > + interrupt-parent = <&gpio>; > + interrupts = <23 IRQ_TYPE_EDGE_FALLING>; > + data-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>; > + clk-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; > + write-enable; > + }; Best regards, Krzysztof
On Mon, Feb 14, 2022 at 10:49:27PM +0100, Krzysztof Kozlowski wrote: > On 12/02/2022 00:31, Danilo Krummrich wrote: > > Convert the ps2-gpio dt-binding documentation to DT schema format using > > the json-schema. > > > > Signed-off-by: Danilo Krummrich <danilokrummrich@dk-develop.de> > > --- > > .../devicetree/bindings/serio/ps2-gpio.txt | 23 -------- > > .../devicetree/bindings/serio/ps2-gpio.yaml | 52 +++++++++++++++++++ > > 2 files changed, 52 insertions(+), 23 deletions(-) > > delete mode 100644 Documentation/devicetree/bindings/serio/ps2-gpio.txt > > create mode 100644 Documentation/devicetree/bindings/serio/ps2-gpio.yaml > > > > diff --git a/Documentation/devicetree/bindings/serio/ps2-gpio.txt b/Documentation/devicetree/bindings/serio/ps2-gpio.txt > > deleted file mode 100644 > > index 7b7bc9cdf986..000000000000 > > --- a/Documentation/devicetree/bindings/serio/ps2-gpio.txt > > +++ /dev/null > > @@ -1,23 +0,0 @@ > > -Device-Tree binding for ps/2 gpio device > > - > > -Required properties: > > - - compatible = "ps2-gpio" > > - - data-gpios: the data pin > > - - clk-gpios: the clock pin > > - - interrupts: Should trigger on the falling edge of the clock line. > > - > > -Optional properties: > > - - write-enable: Indicates whether write function is provided > > - to serio device. Possibly providing the write fn will not work, because > > - of the tough timing requirements. > > - > > -Example nodes: > > - > > -ps2@0 { > > - compatible = "ps2-gpio"; > > - interrupt-parent = <&gpio>; > > - interrupts = <23 IRQ_TYPE_EDGE_FALLING>; > > - data-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>; > > - clk-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; > > - write-enable; > > -}; > > diff --git a/Documentation/devicetree/bindings/serio/ps2-gpio.yaml b/Documentation/devicetree/bindings/serio/ps2-gpio.yaml > > new file mode 100644 > > index 000000000000..ec6fa7b40851 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/serio/ps2-gpio.yaml > > @@ -0,0 +1,52 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/serio/ps2-gpio.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Bindings for GPIO based PS/2 > > + > > +maintainers: > > + - Danilo Krummrich <danilokrummrich@dk-develop.de> > > + > > +properties: > > + compatible: > > + items: > > Hi, > > I think you do not expect more compatibles, so skip "items". > > > + - const: ps2-gpio > > + > > + data-gpios: > > + description: > > + the gpio used for the data signal > > + maxItems: 1 > > + > > + clk-gpios: > > + description: > > + the gpio used for the clock signal > > + maxItems: 1 > > + > > + interrupts: > > + description: > > + The given interrupt should trigger on the falling edge of the clock line. > > + maxItems: 1 > > + > > + write-enable: > > This does not look like a standard property. You need "type: boolean". > > > + description: > > + Indicates whether write function is provided to serio device. Possibly > > + providing the write function will not work, because of the tough timing > > + requirements. > > + > > +required: > > Also: compatible > > > + - data-gpios > > + - clk-gpios > > + - interrupts > > + > > +examples: > > + - | > > + ps2@0 { > > Does it compile cleanly? You used an unit-address but there is no reg. Yes, it does. I will fix those up and send a v2. > > > + compatible = "ps2-gpio"; > > + interrupt-parent = <&gpio>; > > + interrupts = <23 IRQ_TYPE_EDGE_FALLING>; > > + data-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>; > > + clk-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; > > + write-enable; > > + }; > > > Best regards, > Krzysztof - Danilo
On Sat, 12 Feb 2022 00:31:36 +0100, Danilo Krummrich wrote: > Convert the ps2-gpio dt-binding documentation to DT schema format using > the json-schema. > > Signed-off-by: Danilo Krummrich <danilokrummrich@dk-develop.de> > --- > .../devicetree/bindings/serio/ps2-gpio.txt | 23 -------- > .../devicetree/bindings/serio/ps2-gpio.yaml | 52 +++++++++++++++++++ > 2 files changed, 52 insertions(+), 23 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/serio/ps2-gpio.txt > create mode 100644 Documentation/devicetree/bindings/serio/ps2-gpio.yaml > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: dtschema/dtc warnings/errors: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/serio/ps2-gpio.yaml: 'additionalProperties' is a required property hint: A schema without a "$ref" to another schema must define all properties and use "additionalProperties" from schema $id: http://devicetree.org/meta-schemas/base.yaml# /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/serio/ps2-gpio.yaml: ignoring, error in schema: Error: Documentation/devicetree/bindings/serio/ps2-gpio.example.dts:22.30-31 syntax error FATAL ERROR: Unable to parse input tree make[1]: *** [scripts/Makefile.lib:378: Documentation/devicetree/bindings/serio/ps2-gpio.example.dt.yaml] Error 1 make[1]: *** Waiting for unfinished jobs.... make: *** [Makefile:1398: dt_binding_check] Error 2 doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/patch/1591901 This check can fail if there are any dependencies. The base for a patch series is generally the most recent rc1. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit.
diff --git a/Documentation/devicetree/bindings/serio/ps2-gpio.txt b/Documentation/devicetree/bindings/serio/ps2-gpio.txt deleted file mode 100644 index 7b7bc9cdf986..000000000000 --- a/Documentation/devicetree/bindings/serio/ps2-gpio.txt +++ /dev/null @@ -1,23 +0,0 @@ -Device-Tree binding for ps/2 gpio device - -Required properties: - - compatible = "ps2-gpio" - - data-gpios: the data pin - - clk-gpios: the clock pin - - interrupts: Should trigger on the falling edge of the clock line. - -Optional properties: - - write-enable: Indicates whether write function is provided - to serio device. Possibly providing the write fn will not work, because - of the tough timing requirements. - -Example nodes: - -ps2@0 { - compatible = "ps2-gpio"; - interrupt-parent = <&gpio>; - interrupts = <23 IRQ_TYPE_EDGE_FALLING>; - data-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>; - clk-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; - write-enable; -}; diff --git a/Documentation/devicetree/bindings/serio/ps2-gpio.yaml b/Documentation/devicetree/bindings/serio/ps2-gpio.yaml new file mode 100644 index 000000000000..ec6fa7b40851 --- /dev/null +++ b/Documentation/devicetree/bindings/serio/ps2-gpio.yaml @@ -0,0 +1,52 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/serio/ps2-gpio.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Bindings for GPIO based PS/2 + +maintainers: + - Danilo Krummrich <danilokrummrich@dk-develop.de> + +properties: + compatible: + items: + - const: ps2-gpio + + data-gpios: + description: + the gpio used for the data signal + maxItems: 1 + + clk-gpios: + description: + the gpio used for the clock signal + maxItems: 1 + + interrupts: + description: + The given interrupt should trigger on the falling edge of the clock line. + maxItems: 1 + + write-enable: + description: + Indicates whether write function is provided to serio device. Possibly + providing the write function will not work, because of the tough timing + requirements. + +required: + - data-gpios + - clk-gpios + - interrupts + +examples: + - | + ps2@0 { + compatible = "ps2-gpio"; + interrupt-parent = <&gpio>; + interrupts = <23 IRQ_TYPE_EDGE_FALLING>; + data-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>; + clk-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; + write-enable; + };
Convert the ps2-gpio dt-binding documentation to DT schema format using the json-schema. Signed-off-by: Danilo Krummrich <danilokrummrich@dk-develop.de> --- .../devicetree/bindings/serio/ps2-gpio.txt | 23 -------- .../devicetree/bindings/serio/ps2-gpio.yaml | 52 +++++++++++++++++++ 2 files changed, 52 insertions(+), 23 deletions(-) delete mode 100644 Documentation/devicetree/bindings/serio/ps2-gpio.txt create mode 100644 Documentation/devicetree/bindings/serio/ps2-gpio.yaml