2022-04-30 11:30:47

by Christian Marangi

[permalink] [raw]
Subject: [PATCH 3/3] dt-bindings: arm: msm: Convert kpss-gcc driver Documentation to yaml

Convert kpss-gcc driver Documentation to yaml.

Signed-off-by: Ansuel Smith <[email protected]>
---
.../bindings/arm/msm/qcom,kpss-gcc.txt | 44 -------------
.../bindings/arm/msm/qcom,kpss-gcc.yaml | 63 +++++++++++++++++++
2 files changed, 63 insertions(+), 44 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.yaml

diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt b/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
deleted file mode 100644
index e628758950e1..000000000000
--- a/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-Krait Processor Sub-system (KPSS) Global Clock Controller (GCC)
-
-PROPERTIES
-
-- compatible:
- Usage: required
- Value type: <string>
- Definition: should be one of the following. The generic compatible
- "qcom,kpss-gcc" should also be included.
- "qcom,kpss-gcc-ipq8064", "qcom,kpss-gcc"
- "qcom,kpss-gcc-apq8064", "qcom,kpss-gcc"
- "qcom,kpss-gcc-msm8974", "qcom,kpss-gcc"
- "qcom,kpss-gcc-msm8960", "qcom,kpss-gcc"
-
-- reg:
- Usage: required
- Value type: <prop-encoded-array>
- Definition: base address and size of the register region
-
-- clocks:
- Usage: required
- Value type: <prop-encoded-array>
- Definition: reference to the pll parents.
-
-- clock-names:
- Usage: required
- Value type: <stringlist>
- Definition: must be "pll8_vote", "pxo".
-
-- clock-output-names:
- Usage: required
- Value type: <string>
- Definition: Name of the output clock. Typically acpu_l2_aux indicating
- an L2 cache auxiliary clock.
-
-Example:
-
- l2cc: clock-controller@2011000 {
- compatible = "qcom,kpss-gcc-ipq8064", "qcom,kpss-gcc";
- reg = <0x2011000 0x1000>;
- clocks = <&gcc PLL8_VOTE>, <&gcc PXO_SRC>;
- clock-names = "pll8_vote", "pxo";
- clock-output-names = "acpu_l2_aux";
- };
diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.yaml b/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.yaml
new file mode 100644
index 000000000000..17616ef7ba88
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.yaml
@@ -0,0 +1,63 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/arm/msm/qcom,kpss-gcc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Krait Processor Sub-system (KPSS) Global Clock Controller (GCC)
+
+maintainers:
+ - Ansuel Smith <[email protected]>
+
+description: |
+ Krait Processor Sub-system (KPSS) Global Clock Controller (GCC). Used
+ to control L2 mux (in the current implementation).
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - qcom,kpss-gcc-ipq8064
+ - qcom,kpss-gcc-apq8064
+ - qcom,kpss-gcc-msm8974
+ - qcom,kpss-gcc-msm8960
+ - const: qcom,kpss-gcc
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ items:
+ - description: phandle to pll8_vote
+ - description: phandle to pxo_board
+
+ clock-names:
+ items:
+ - const: pll8_vote
+ - const: pxo
+
+ clock-output-names:
+ const: acpu_l2_aux
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - clock-names
+ - clock-output-names
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/clock/qcom,gcc-ipq806x.h>
+
+ clock-controller@2011000 {
+ compatible = "qcom,kpss-gcc-ipq8064", "qcom,kpss-gcc";
+ reg = <0x2011000 0x1000>;
+ clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
+ clock-names = "pll8_vote", "pxo";
+ clock-output-names = "acpu_l2_aux";
+ };
+...
+
--
2.34.1


2022-04-30 23:56:02

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 3/3] dt-bindings: arm: msm: Convert kpss-gcc driver Documentation to yaml

On 29/04/2022 17:57, Ansuel Smith wrote:
> On Fri, Apr 29, 2022 at 10:53:16AM -0500, Rob Herring wrote:
>> On Fri, 29 Apr 2022 14:17:39 +0200, Ansuel Smith wrote:
>>> Convert kpss-gcc driver Documentation to yaml.
>>>
>>> Signed-off-by: Ansuel Smith <[email protected]>
>>> ---
>>> .../bindings/arm/msm/qcom,kpss-gcc.txt | 44 -------------
>>> .../bindings/arm/msm/qcom,kpss-gcc.yaml | 63 +++++++++++++++++++
>>> 2 files changed, 63 insertions(+), 44 deletions(-)
>>> delete mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
>>> create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.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/arm/msm/qcom,kpss-gcc.yaml: properties: '#clock-cells' is a dependency of 'clock-output-names'
>

The patches were previously sent (even as v6) and somehow the history,
changelog and references disappeared...

> Erm how to fix this? I can't do a 1:1 conversion if the source was
> wrong and also have no bot warning.
> Or I should just push an additional patch to fix this error after the
> conversion?

Didn't we agree that original bindings were not in good shape? Yet the
questions raised with your v6 remain actually not answered, till the bot
complains.

Please do not send the bindings which do not pass dt_binding_check.

Best regards,
Krzysztof

2022-05-01 08:44:22

by Christian Marangi

[permalink] [raw]
Subject: Re: [PATCH 3/3] dt-bindings: arm: msm: Convert kpss-gcc driver Documentation to yaml

On Fri, Apr 29, 2022 at 10:43:21PM +0200, Krzysztof Kozlowski wrote:
> On 29/04/2022 17:57, Ansuel Smith wrote:
> > On Fri, Apr 29, 2022 at 10:53:16AM -0500, Rob Herring wrote:
> >> On Fri, 29 Apr 2022 14:17:39 +0200, Ansuel Smith wrote:
> >>> Convert kpss-gcc driver Documentation to yaml.
> >>>
> >>> Signed-off-by: Ansuel Smith <[email protected]>
> >>> ---
> >>> .../bindings/arm/msm/qcom,kpss-gcc.txt | 44 -------------
> >>> .../bindings/arm/msm/qcom,kpss-gcc.yaml | 63 +++++++++++++++++++
> >>> 2 files changed, 63 insertions(+), 44 deletions(-)
> >>> delete mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
> >>> create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.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/arm/msm/qcom,kpss-gcc.yaml: properties: '#clock-cells' is a dependency of 'clock-output-names'
> >
>
> The patches were previously sent (even as v6) and somehow the history,
> changelog and references disappeared...
>

Mhh with split how this should be handled? Putting the relevant changes
in the cover letter?

> > Erm how to fix this? I can't do a 1:1 conversion if the source was
> > wrong and also have no bot warning.
> > Or I should just push an additional patch to fix this error after the
> > conversion?
>
> Didn't we agree that original bindings were not in good shape? Yet the
> questions raised with your v6 remain actually not answered, till the bot
> complains.
>
> Please do not send the bindings which do not pass dt_binding_check.
>
> Best regards,
> Krzysztof

In v6 the last mail were with the idea of sending separate series with
minimal changes and it was mention that it was a good idea to send only
conversion and then send the changes with the conversion series.

Finally got the message. I should NEVER send patch with warning from
dt_binding_check.

--
Ansuel

2022-05-02 13:42:27

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH 3/3] dt-bindings: arm: msm: Convert kpss-gcc driver Documentation to yaml

On Fri, 29 Apr 2022 14:17:39 +0200, Ansuel Smith wrote:
> Convert kpss-gcc driver Documentation to yaml.
>
> Signed-off-by: Ansuel Smith <[email protected]>
> ---
> .../bindings/arm/msm/qcom,kpss-gcc.txt | 44 -------------
> .../bindings/arm/msm/qcom,kpss-gcc.yaml | 63 +++++++++++++++++++
> 2 files changed, 63 insertions(+), 44 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
> create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.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/arm/msm/qcom,kpss-gcc.yaml: properties: '#clock-cells' is a dependency of 'clock-output-names'
from schema $id: http://devicetree.org/meta-schemas/clocks.yaml#
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.yaml: ignoring, error in schema: properties
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb: clock-controller@2011000: '#clock-cells' is a dependency of 'clock-output-names'
From schema: /usr/local/lib/python3.10/dist-packages/dtschema/schemas/clock/clock.yaml
Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb:0:0: /example-0/clock-controller@2011000: failed to match any schema with compatible: ['qcom,kpss-gcc-ipq8064', 'qcom,kpss-gcc']
Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb:0:0: /example-0/clock-controller@2011000: failed to match any schema with compatible: ['qcom,kpss-gcc-ipq8064', 'qcom,kpss-gcc']

doc reference errors (make refcheckdocs):

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

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.

2022-05-02 23:24:17

by Dmitry Baryshkov

[permalink] [raw]
Subject: Re: [PATCH 3/3] dt-bindings: arm: msm: Convert kpss-gcc driver Documentation to yaml

On Fri, 29 Apr 2022 at 18:59, Ansuel Smith <[email protected]> wrote:
>
> On Fri, Apr 29, 2022 at 10:53:16AM -0500, Rob Herring wrote:
> > On Fri, 29 Apr 2022 14:17:39 +0200, Ansuel Smith wrote:
> > > Convert kpss-gcc driver Documentation to yaml.
> > >
> > > Signed-off-by: Ansuel Smith <[email protected]>
> > > ---
> > > .../bindings/arm/msm/qcom,kpss-gcc.txt | 44 -------------
> > > .../bindings/arm/msm/qcom,kpss-gcc.yaml | 63 +++++++++++++++++++
> > > 2 files changed, 63 insertions(+), 44 deletions(-)
> > > delete mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
> > > create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.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/arm/msm/qcom,kpss-gcc.yaml: properties: '#clock-cells' is a dependency of 'clock-output-names'
>
> Erm how to fix this? I can't do a 1:1 conversion if the source was
> wrong and also have no bot warning.
> Or I should just push an additional patch to fix this error after the
> conversion?

You can fix obvious simple mistakes and describe your chains in the
commit message.

>
> > from schema $id: http://devicetree.org/meta-schemas/clocks.yaml#
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.yaml: ignoring, error in schema: properties
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb: clock-controller@2011000: '#clock-cells' is a dependency of 'clock-output-names'
> > From schema: /usr/local/lib/python3.10/dist-packages/dtschema/schemas/clock/clock.yaml
> > Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb:0:0: /example-0/clock-controller@2011000: failed to match any schema with compatible: ['qcom,kpss-gcc-ipq8064', 'qcom,kpss-gcc']
> > Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb:0:0: /example-0/clock-controller@2011000: failed to match any schema with compatible: ['qcom,kpss-gcc-ipq8064', 'qcom,kpss-gcc']
> >
> > doc reference errors (make refcheckdocs):
> >
> > See https://patchwork.ozlabs.org/patch/
> >
> > 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.
> >
>
> --
> Ansuel



--
With best wishes
Dmitry

2022-05-02 23:42:09

by Christian Marangi

[permalink] [raw]
Subject: Re: [PATCH 3/3] dt-bindings: arm: msm: Convert kpss-gcc driver Documentation to yaml

On Fri, Apr 29, 2022 at 10:53:16AM -0500, Rob Herring wrote:
> On Fri, 29 Apr 2022 14:17:39 +0200, Ansuel Smith wrote:
> > Convert kpss-gcc driver Documentation to yaml.
> >
> > Signed-off-by: Ansuel Smith <[email protected]>
> > ---
> > .../bindings/arm/msm/qcom,kpss-gcc.txt | 44 -------------
> > .../bindings/arm/msm/qcom,kpss-gcc.yaml | 63 +++++++++++++++++++
> > 2 files changed, 63 insertions(+), 44 deletions(-)
> > delete mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
> > create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.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/arm/msm/qcom,kpss-gcc.yaml: properties: '#clock-cells' is a dependency of 'clock-output-names'

Erm how to fix this? I can't do a 1:1 conversion if the source was
wrong and also have no bot warning.
Or I should just push an additional patch to fix this error after the
conversion?

> from schema $id: http://devicetree.org/meta-schemas/clocks.yaml#
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.yaml: ignoring, error in schema: properties
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb: clock-controller@2011000: '#clock-cells' is a dependency of 'clock-output-names'
> From schema: /usr/local/lib/python3.10/dist-packages/dtschema/schemas/clock/clock.yaml
> Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb:0:0: /example-0/clock-controller@2011000: failed to match any schema with compatible: ['qcom,kpss-gcc-ipq8064', 'qcom,kpss-gcc']
> Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.example.dtb:0:0: /example-0/clock-controller@2011000: failed to match any schema with compatible: ['qcom,kpss-gcc-ipq8064', 'qcom,kpss-gcc']
>
> doc reference errors (make refcheckdocs):
>
> See https://patchwork.ozlabs.org/patch/
>
> 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.
>

--
Ansuel

2022-05-03 00:46:13

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH 3/3] dt-bindings: arm: msm: Convert kpss-gcc driver Documentation to yaml

On Fri, Apr 29, 2022 at 10:45:09PM +0200, Ansuel Smith wrote:
> On Fri, Apr 29, 2022 at 10:43:21PM +0200, Krzysztof Kozlowski wrote:
> > On 29/04/2022 17:57, Ansuel Smith wrote:
> > > On Fri, Apr 29, 2022 at 10:53:16AM -0500, Rob Herring wrote:
> > >> On Fri, 29 Apr 2022 14:17:39 +0200, Ansuel Smith wrote:
> > >>> Convert kpss-gcc driver Documentation to yaml.
> > >>>
> > >>> Signed-off-by: Ansuel Smith <[email protected]>
> > >>> ---
> > >>> .../bindings/arm/msm/qcom,kpss-gcc.txt | 44 -------------
> > >>> .../bindings/arm/msm/qcom,kpss-gcc.yaml | 63 +++++++++++++++++++
> > >>> 2 files changed, 63 insertions(+), 44 deletions(-)
> > >>> delete mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
> > >>> create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.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/arm/msm/qcom,kpss-gcc.yaml: properties: '#clock-cells' is a dependency of 'clock-output-names'
> > >
> >
> > The patches were previously sent (even as v6) and somehow the history,
> > changelog and references disappeared...
> >
>
> Mhh with split how this should be handled? Putting the relevant changes
> in the cover letter?
>
> > > Erm how to fix this? I can't do a 1:1 conversion if the source was
> > > wrong and also have no bot warning.
> > > Or I should just push an additional patch to fix this error after the
> > > conversion?
> >
> > Didn't we agree that original bindings were not in good shape? Yet the
> > questions raised with your v6 remain actually not answered, till the bot
> > complains.
> >
> > Please do not send the bindings which do not pass dt_binding_check.
> >
> > Best regards,
> > Krzysztof
>
> In v6 the last mail were with the idea of sending separate series with
> minimal changes and it was mention that it was a good idea to send only
> conversion and then send the changes with the conversion series.
>
> Finally got the message. I should NEVER send patch with warning from
> dt_binding_check.

It's like sending code changes that don't compile...

But I wouldn't say NEVER. If you have a warning that you think is wrong
or don't know how to fix, then send it and say that in the patch.

Rob