diff mbox series

[v9,2/3] dt-bindings: pwm: add IPQ6018 binding

Message ID 62ec6016400e80ee379c07ef2c80abbf7f60bbe2.1638293850.git.baruch@tkos.co.il (mailing list archive)
State New, archived
Headers show
Series [v9,1/3] pwm: driver for qualcomm ipq6018 pwm block | expand

Commit Message

Baruch Siach Nov. 30, 2021, 5:37 p.m. UTC
DT binding for the PWM block in Qualcomm IPQ6018 SoC.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---

v9:

  Add 'ranges' property to example (Rob)

  Drop label in example (Rob)

v8:

  Add size cell to 'reg' (Rob)

v7:

  Use 'reg' instead of 'offset' (Rob)

  Drop 'clock-names' and 'assigned-clock*' (Bjorn)

  Use single cell address/size in example node (Bjorn)

  Move '#pwm-cells' lower in example node (Bjorn)

  List 'reg' as required

v6:

  Device node is child of TCSR; remove phandle (Rob Herring)

  Add assigned-clocks/assigned-clock-rates (Uwe Kleine-König)

v5: Use qcom,pwm-regs for phandle instead of direct regs (Bjorn
    Andersson, Kathiravan T)

v4: Update the binding example node as well (Rob Herring's bot)

v3: s/qcom,pwm-ipq6018/qcom,ipq6018-pwm/ (Rob Herring)

v2: Make #pwm-cells const (Rob Herring)
---
 .../devicetree/bindings/pwm/ipq-pwm.yaml      | 53 +++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/pwm/ipq-pwm.yaml

Comments

Rob Herring Nov. 30, 2021, 8:36 p.m. UTC | #1
On Tue, 30 Nov 2021 19:37:29 +0200, Baruch Siach wrote:
> DT binding for the PWM block in Qualcomm IPQ6018 SoC.
> 
> Signed-off-by: Baruch Siach <baruch@tkos.co.il>
> ---
> 
> v9:
> 
>   Add 'ranges' property to example (Rob)
> 
>   Drop label in example (Rob)
> 
> v8:
> 
>   Add size cell to 'reg' (Rob)
> 
> v7:
> 
>   Use 'reg' instead of 'offset' (Rob)
> 
>   Drop 'clock-names' and 'assigned-clock*' (Bjorn)
> 
>   Use single cell address/size in example node (Bjorn)
> 
>   Move '#pwm-cells' lower in example node (Bjorn)
> 
>   List 'reg' as required
> 
> v6:
> 
>   Device node is child of TCSR; remove phandle (Rob Herring)
> 
>   Add assigned-clocks/assigned-clock-rates (Uwe Kleine-König)
> 
> v5: Use qcom,pwm-regs for phandle instead of direct regs (Bjorn
>     Andersson, Kathiravan T)
> 
> v4: Update the binding example node as well (Rob Herring's bot)
> 
> v3: s/qcom,pwm-ipq6018/qcom,ipq6018-pwm/ (Rob Herring)
> 
> v2: Make #pwm-cells const (Rob Herring)
> ---
>  .../devicetree/bindings/pwm/ipq-pwm.yaml      | 53 +++++++++++++++++++
>  1 file changed, 53 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/pwm/ipq-pwm.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:
Documentation/devicetree/bindings/pwm/ipq-pwm.example.dt.yaml:0:0: /example-0/syscon@1937000: failed to match any schema with compatible: ['qcom,tcsr-ipq6018', 'syscon', 'simple-mfd']

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/patch/1561766

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.
Baruch Siach Dec. 1, 2021, 4:49 a.m. UTC | #2
Hi Rob,

On Tue, Nov 30 2021, Rob Herring wrote:
> On Tue, 30 Nov 2021 19:37:29 +0200, Baruch Siach wrote:
>> DT binding for the PWM block in Qualcomm IPQ6018 SoC.
>> 
>> Signed-off-by: Baruch Siach <baruch@tkos.co.il>
>> ---
>> 
>> v9:
>> 
>>   Add 'ranges' property to example (Rob)
>> 
>>   Drop label in example (Rob)
>> 
>> v8:
>> 
>>   Add size cell to 'reg' (Rob)
>> 
>> v7:
>> 
>>   Use 'reg' instead of 'offset' (Rob)
>> 
>>   Drop 'clock-names' and 'assigned-clock*' (Bjorn)
>> 
>>   Use single cell address/size in example node (Bjorn)
>> 
>>   Move '#pwm-cells' lower in example node (Bjorn)
>> 
>>   List 'reg' as required
>> 
>> v6:
>> 
>>   Device node is child of TCSR; remove phandle (Rob Herring)
>> 
>>   Add assigned-clocks/assigned-clock-rates (Uwe Kleine-König)
>> 
>> v5: Use qcom,pwm-regs for phandle instead of direct regs (Bjorn
>>     Andersson, Kathiravan T)
>> 
>> v4: Update the binding example node as well (Rob Herring's bot)
>> 
>> v3: s/qcom,pwm-ipq6018/qcom,ipq6018-pwm/ (Rob Herring)
>> 
>> v2: Make #pwm-cells const (Rob Herring)
>> ---
>>  .../devicetree/bindings/pwm/ipq-pwm.yaml      | 53 +++++++++++++++++++
>>  1 file changed, 53 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/pwm/ipq-pwm.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:
> Documentation/devicetree/bindings/pwm/ipq-pwm.example.dt.yaml:0:0:
> /example-0/syscon@1937000: failed to match any schema with compatible:
> ['qcom,tcsr-ipq6018', 'syscon', 'simple-mfd']

My previous submission[1] had this text above the patch changelog:

---
This series does not convert the TCSR binding documentation to YAML. As
a result, this commit adds new a dt_binding_check warning:

/example-0/syscon@1937000: failed to match any schema with compatible: ['qcom,tcsr-ipq 6018', 'syscon', 'simple-mfd']

If that is a blocker to IPQ6018 PWM support, so be it. Patches will wait
for someone else to push them further.
---

This time I missed the 'DT_CHECKER_FLAGS=-m' part so I didn't see the
error.

Thanks for the reminder,
baruch

[1] https://lore.kernel.org/all/8238dfb5d5e4a40a995f047db36d9a7240431de5.1630323987.git.baruch@tkos.co.il/

> doc reference errors (make refcheckdocs):
>
> See https://patchwork.ozlabs.org/patch/1561766
>
> 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.
Rob Herring Dec. 1, 2021, 4:07 p.m. UTC | #3
On Tue, Nov 30, 2021 at 10:55 PM Baruch Siach <baruch@tkos.co.il> wrote:
>
> Hi Rob,
>
> On Tue, Nov 30 2021, Rob Herring wrote:
> > On Tue, 30 Nov 2021 19:37:29 +0200, Baruch Siach wrote:
> >> DT binding for the PWM block in Qualcomm IPQ6018 SoC.
> >>
> >> Signed-off-by: Baruch Siach <baruch@tkos.co.il>
> >> ---
> >>
> >> v9:
> >>
> >>   Add 'ranges' property to example (Rob)
> >>
> >>   Drop label in example (Rob)
> >>
> >> v8:
> >>
> >>   Add size cell to 'reg' (Rob)
> >>
> >> v7:
> >>
> >>   Use 'reg' instead of 'offset' (Rob)
> >>
> >>   Drop 'clock-names' and 'assigned-clock*' (Bjorn)
> >>
> >>   Use single cell address/size in example node (Bjorn)
> >>
> >>   Move '#pwm-cells' lower in example node (Bjorn)
> >>
> >>   List 'reg' as required
> >>
> >> v6:
> >>
> >>   Device node is child of TCSR; remove phandle (Rob Herring)
> >>
> >>   Add assigned-clocks/assigned-clock-rates (Uwe Kleine-König)
> >>
> >> v5: Use qcom,pwm-regs for phandle instead of direct regs (Bjorn
> >>     Andersson, Kathiravan T)
> >>
> >> v4: Update the binding example node as well (Rob Herring's bot)
> >>
> >> v3: s/qcom,pwm-ipq6018/qcom,ipq6018-pwm/ (Rob Herring)
> >>
> >> v2: Make #pwm-cells const (Rob Herring)
> >> ---
> >>  .../devicetree/bindings/pwm/ipq-pwm.yaml      | 53 +++++++++++++++++++
> >>  1 file changed, 53 insertions(+)
> >>  create mode 100644 Documentation/devicetree/bindings/pwm/ipq-pwm.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:
> > Documentation/devicetree/bindings/pwm/ipq-pwm.example.dt.yaml:0:0:
> > /example-0/syscon@1937000: failed to match any schema with compatible:
> > ['qcom,tcsr-ipq6018', 'syscon', 'simple-mfd']
>
> My previous submission[1] had this text above the patch changelog:
>
> ---
> This series does not convert the TCSR binding documentation to YAML. As
> a result, this commit adds new a dt_binding_check warning:
>
> /example-0/syscon@1937000: failed to match any schema with compatible: ['qcom,tcsr-ipq 6018', 'syscon', 'simple-mfd']
>
> If that is a blocker to IPQ6018 PWM support, so be it. Patches will wait
> for someone else to push them further.

That one looks pretty trivial to convert and there are lots of people
working on QCom stuff, so I'm going to say yes it is required.

Rob
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/pwm/ipq-pwm.yaml b/Documentation/devicetree/bindings/pwm/ipq-pwm.yaml
new file mode 100644
index 000000000000..857086ad539e
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/ipq-pwm.yaml
@@ -0,0 +1,53 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pwm/ipq-pwm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm IPQ6018 PWM controller
+
+maintainers:
+  - Baruch Siach <baruch@tkos.co.il>
+
+properties:
+  "#pwm-cells":
+    const: 2
+
+  compatible:
+    const: qcom,ipq6018-pwm
+
+  reg:
+    description: Offset of PWM register in the TCSR block.
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - "#pwm-cells"
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/qcom,gcc-ipq6018.h>
+
+    syscon@1937000 {
+        compatible = "qcom,tcsr-ipq6018", "syscon", "simple-mfd";
+        reg = <0x01937000 0x21000>;
+        #address-cells = <1>;
+        #size-cells = <1>;
+        ranges = <0 0x1937000 0x21000>;
+
+        pwm: pwm@a010 {
+            compatible = "qcom,ipq6018-pwm";
+            reg = <0xa010 0x20>;
+            clocks = <&gcc GCC_ADSS_PWM_CLK>;
+            assigned-clocks = <&gcc GCC_ADSS_PWM_CLK>;
+            assigned-clock-rates = <100000000>;
+            #pwm-cells = <2>;
+        };
+    };