Re: [PATCH v8 7/8] dt-bindings: Add common bindings for ARM and RISC-V idle states

From: Rob Herring
Date: Mon Oct 11 2021 - 09:36:37 EST


On Mon, 11 Oct 2021 13:48:19 +0530, Anup Patel wrote:
> The RISC-V CPU idle states will be described in under the
> /cpus/idle-states DT node in the same way as ARM CPU idle
> states.
>
> This patch adds common bindings documentation for both ARM
> and RISC-V idle states.
>
> Signed-off-by: Anup Patel <anup.patel@xxxxxxx>
> Reviewed-by: Rob Herring <robh@xxxxxxxxxx>
> ---
> .../bindings/arm/msm/qcom,idle-state.txt | 2 +-
> .../devicetree/bindings/arm/psci.yaml | 2 +-
> .../bindings/{arm => cpu}/idle-states.yaml | 228 ++++++++++++++++--
> .../devicetree/bindings/riscv/cpus.yaml | 6 +
> 4 files changed, 219 insertions(+), 19 deletions(-)
> rename Documentation/devicetree/bindings/{arm => cpu}/idle-states.yaml (74%)
>

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/cpu/idle-states.yaml: patternProperties:^(cpu|cluster)-:properties:compatible:oneOf: [{'const': 'arm,idle-state'}, {'const': 'riscv,idle-state'}] should not be valid under {'items': {'propertyNames': {'const': 'const'}, 'required': ['const']}}
hint: Use 'enum' rather than 'oneOf' + 'const' entries
from schema $id: http://devicetree.org/meta-schemas/keywords.yaml#
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpu/idle-states.yaml: ignoring, error in schema: patternProperties: ^(cpu|cluster)-: properties: compatible: oneOf
warning: no schema found in file: ./Documentation/devicetree/bindings/cpu/idle-states.yaml
Documentation/devicetree/bindings/arm/psci.example.dt.yaml:0:0: /example-3/cpus/idle-states/cpu-power-down: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-0/cpus/idle-states/cpu-retention-0-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-0/cpus/idle-states/cluster-retention-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-0/cpus/idle-states/cpu-sleep-0-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-0/cpus/idle-states/cluster-sleep-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-0/cpus/idle-states/cpu-retention-1-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-0/cpus/idle-states/cluster-retention-1: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-0/cpus/idle-states/cpu-sleep-1-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-0/cpus/idle-states/cluster-sleep-1: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-1/cpus/idle-states/cpu-sleep-0-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-1/cpus/idle-states/cluster-sleep-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-1/cpus/idle-states/cpu-sleep-1-0: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-1/cpus/idle-states/cluster-sleep-1: failed to match any schema with compatible: ['arm,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-2/cpus/idle-states/cpu-retentive-0-0: failed to match any schema with compatible: ['riscv,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-2/cpus/idle-states/cpu-nonretentive-0-0: failed to match any schema with compatible: ['riscv,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-2/cpus/idle-states/cluster-retentive-0: failed to match any schema with compatible: ['riscv,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-2/cpus/idle-states/cluster-nonretentive-0: failed to match any schema with compatible: ['riscv,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-2/cpus/idle-states/cpu-retentive-1-0: failed to match any schema with compatible: ['riscv,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-2/cpus/idle-states/cpu-nonretentive-1-0: failed to match any schema with compatible: ['riscv,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-2/cpus/idle-states/cluster-retentive-1: failed to match any schema with compatible: ['riscv,idle-state']
Documentation/devicetree/bindings/cpu/idle-states.example.dt.yaml:0:0: /example-2/cpus/idle-states/cluster-nonretentive-1: failed to match any schema with compatible: ['riscv,idle-state']

doc reference errors (make refcheckdocs):

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

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.