Re: [PATCH] dt-bindings: mfd: Add missing (unevaluated|additional)Properties on child nodes

Jernej Škrabec
2022-08-25T20:50:03Z

Dne torek, 23. avgust 2022 ob 16:56:35 CEST je Rob Herring napisal(a):
> In order to ensure only documented properties are present, node schemas
> must have unevaluatedProperties or additionalProperties set to false
> (typically).
>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
> .../mfd/allwinner,sun6i-a31-prcm.yaml | 40 +++++++++++++++++++
> .../mfd/allwinner,sun8i-a23-prcm.yaml | 10 +++++
> .../bindings/mfd/cirrus,lochnagar.yaml | 5 +++
> .../devicetree/bindings/mfd/dlg,da9063.yaml | 7 ++--
> .../bindings/mfd/gateworks-gsc.yaml | 5 ++-
> .../bindings/mfd/maxim,max14577.yaml | 1 +
> .../bindings/mfd/maxim,max77843.yaml | 1 +
> .../bindings/mfd/rockchip,rk817.yaml | 2 +
> .../bindings/mfd/silergy,sy7636a.yaml | 1 +
> .../bindings/mfd/st,stm32-lptimer.yaml | 4 ++
> .../bindings/mfd/st,stm32-timers.yaml | 3 ++
> .../devicetree/bindings/mfd/st,stmfx.yaml | 1 +
> .../bindings/mfd/stericsson,ab8500.yaml | 22 ++++++++++
> .../devicetree/bindings/mfd/ti,tps65086.yaml | 1 +
> .../bindings/mfd/x-powers,axp152.yaml | 1 +
> 15 files changed, 100 insertions(+), 4 deletions(-)
>
> diff --git
> a/Documentation/devicetree/bindings/mfd/allwinner,sun6i-a31-prcm.yaml
> b/Documentation/devicetree/bindings/mfd/allwinner,sun6i-a31-prcm.yaml index
> d131759ccaf3..021d33cb3dd6 100644
> --- a/Documentation/devicetree/bindings/mfd/allwinner,sun6i-a31-prcm.yaml
> +++ b/Documentation/devicetree/bindings/mfd/allwinner,sun6i-a31-prcm.yaml
> @@ -22,6 +22,7 @@ properties:
> patternProperties:
> "^.*_(clk|rst)$":
> type: object
> + unevaluatedProperties: false
>
> properties:
> compatible:
> @@ -34,6 +35,45 @@ patternProperties:
> - fixed-factor-clock
>
> allOf:
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: fixed-factor-clock
> +
> + then:
> + $ref: /schemas/clock/fixed-factor-clock.yaml#
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: allwinner,sun4i-a10-mod0-clk
> +
> + then:
> + properties:
> + "#clock-cells":
> + const: 0
> +
> + # Already checked in the main schema
> + compatible: true
> +
> + clocks:
> + maxItems: 2

Last time node with allwinner,sun4i-a10-mod0-clk compatible was used, it had 3
clocks. See:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/
arm/boot/dts/sun4i-a10.dtsi?id=f18698e1c66338b902de386e4ad97b8b1b9d999d#n406

Once that fixed, allwinner,sun6i-a31-prcm.yaml and allwinner,sun8i-a23-
prcm.yaml are:
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>

Best regards,
Jernej

> +
> + clock-output-names:
> + maxItems: 1
> +
> + phandle: true
> +
> + required:
> + - "#clock-cells"
> + - compatible
> + - clocks
> + - clock-output-names
> +
> + additionalProperties: false
> +