Re: [PATCH] dt-bindings: timer: convert MSM timer to yaml

From: Rob Herring
Date: Sat Dec 25 2021 - 09:49:07 EST


On Sat, 25 Dec 2021 00:46:06 +0100, David Heidelberg wrote:
> Convert Qualcomm MSM Timer to yaml format.
>
> Signed-off-by: David Heidelberg <david@xxxxxxx>
>
> ---
> It has currently issue, that it fights with watchdog/qcom-wdt.yaml
> Both bindings and drivers use similar sets of compatibles and qcom-wdt
> isn't very strictly defined.
>
> .../bindings/timer/qcom,msm-timer.txt | 47 -----------
> .../bindings/timer/qcom,msm-timer.yaml | 78 +++++++++++++++++++
> 2 files changed, 78 insertions(+), 47 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/timer/qcom,msm-timer.txt
> create mode 100644 Documentation/devicetree/bindings/timer/qcom,msm-timer.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/watchdog/qcom-wdt.example.dt.yaml: watchdog@208a038: $nodename:0: 'watchdog@208a038' does not match '^timer@[a-f0-9]+$'
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/watchdog/qcom-wdt.example.dt.yaml: watchdog@208a038: compatible: 'oneOf' conditional failed, one must be fixed:
['qcom,kpss-wdt-ipq8064'] is too short
'qcom,kpss-timer' was expected
'qcom,kpss-wdt-ipq8064' is not one of ['qcom,kpss-timer', 'qcom,scss-timer']
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/watchdog/qcom-wdt.example.dt.yaml: watchdog@208a038: 'clock-frequency' is a required property
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/watchdog/qcom-wdt.example.dt.yaml: watchdog@208a038: 'timeout-sec' does not match any of the regexes: 'pinctrl-[0-9]+'
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/watchdog/qcom-wdt.example.dt.yaml: watchdog@208a038: 'oneOf' conditional failed, one must be fixed:
'interrupts' is a required property
'interrupts-extended' is a required property
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.example.dt.yaml: timer@200a000: $nodename:0: 'timer@200a000' does not match '^watchdog(@.*|-[0-9a-f])?$'
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.example.dt.yaml: timer@200a000: compatible: ['qcom,scss-timer', 'qcom,msm-timer'] is too long
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.example.dt.yaml: timer@200a000: compatible: Additional items are not allowed ('qcom,msm-timer' was unexpected)
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.example.dt.yaml: timer@200a000: Unevaluated properties are not allowed ('compatible', 'interrupts', 'clock-frequency', 'clock-names', 'cpu-offset' were unexpected)
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.example.dt.yaml: timer@200a000: clock-frequency: 'oneOf' conditional failed, one must be fixed:
[[19200000], [32768]] is too long
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/qcom,msm-timer.example.dt.yaml: timer@200a000: clock-frequency: 'oneOf' conditional failed, one must be fixed:
[[19200000], [32768]] is too long
missing size tag in [[19200000], [32768]]
[19200000] is too short
[32768] is too short
From schema: /usr/local/lib/python3.8/dist-packages/dtschema/schemas/clock/clock.yaml

doc reference errors (make refcheckdocs):

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

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.