Subject: Re: [PATCH 3/4] dt-bindings: Clean-up schema errors due to missing 'addtionalProperties: false'

From: Jonathan Cameron <[email-masked]>
Date: Thu, 26 Mar 2020 12:45:08 +0000

On Wed, 25 Mar 2020 16:05:40 -0600
Rob Herring <[email-masked]> wrote:

> Numerous schemas are missing 'additionalProperties: false' statements which
> ensures a binding doesn't have any extra undocumented properties or child
> nodes. Fixing this reveals various missing properties, so let's fix all
> those occurrences.
> 
> Cc: Stephen Boyd <[email-masked]>
> Cc: Linus Walleij <[email-masked]>
> Cc: Bartosz Golaszewski <[email-masked]>
> Cc: Masahiro Yamada <[email-masked]>
> Cc: Jonathan Cameron <[email-masked]>
> Cc: Hartmut Knaack <[email-masked]>
> Cc: Lars-Peter Clausen <[email-masked]>
> Cc: Peter Meerwald-Stadler <[email-masked]>
> Cc: Neil Armstrong <[email-masked]>
> Cc: Mauro Carvalho Chehab <[email-masked]>
> Cc: Kevin Hilman <[email-masked]>
> Cc: Lee Jones <[email-masked]>
> Cc: "David S. Miller" <[email-masked]>
> Cc: Liam Girdwood <[email-masked]>
> Cc: Mark Brown <[email-masked]>
> Cc: Guillaume La Roque <[email-masked]>
> Cc: Zhang Rui <[email-masked]>
> Cc: Daniel Lezcano <[email-masked]>
> Cc: Thomas Gleixner <[email-masked]>
> Cc: [email-masked]
> Cc: [email-masked]
> Cc: [email-masked]
> Cc: [email-masked]
> Cc: [email-masked]
> Cc: [email-masked]
> Cc: [email-masked]
> Cc: [email-masked]
> Cc: [email-masked]
> Signed-off-by: Rob Herring <[email-masked]>
Acked-by: Jonathan Cameron <[email-masked]> #for-iio

> ---
>  .../devicetree/bindings/clock/fsl,plldig.yaml |  3 +++
>  .../gpio/socionext,uniphier-gpio.yaml         |  2 ++
>  .../bindings/gpu/arm,mali-bifrost.yaml        |  6 ++---
>  .../bindings/gpu/arm,mali-midgard.yaml        |  3 +++
>  .../bindings/iio/adc/adi,ad7192.yaml          |  1 -
>  .../bindings/iio/pressure/bmp085.yaml         |  3 +++
>  .../media/amlogic,meson-gx-ao-cec.yaml        |  9 +++++---
>  .../bindings/mfd/rohm,bd71828-pmic.yaml       |  3 +++
>  .../bindings/net/ti,cpsw-switch.yaml          | 23 ++++++++++++-------
>  .../regulator/max77650-regulator.yaml         |  2 +-
>  .../bindings/thermal/amlogic,thermal.yaml     |  2 ++
>  .../bindings/timer/arm,arch_timer_mmio.yaml   |  2 ++
>  12 files changed, 43 insertions(+), 16 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/clock/fsl,plldig.yaml b/Documentation/devicetree/bindings/clock/fsl,plldig.yaml
> index c8350030b374..d1c040228cf7 100644
> --- a/Documentation/devicetree/bindings/clock/fsl,plldig.yaml
> +++ b/Documentation/devicetree/bindings/clock/fsl,plldig.yaml
> @@ -21,6 +21,9 @@ properties:
>    reg:
>      maxItems: 1
>  
> +  clocks:
> +    maxItems: 1
> +
>    '#clock-cells':
>      const: 0
>  
> diff --git a/Documentation/devicetree/bindings/gpio/socionext,uniphier-gpio.yaml b/Documentation/devicetree/bindings/gpio/socionext,uniphier-gpio.yaml
> index 580a39e09d39..c58ff9a94f45 100644
> --- a/Documentation/devicetree/bindings/gpio/socionext,uniphier-gpio.yaml
> +++ b/Documentation/devicetree/bindings/gpio/socionext,uniphier-gpio.yaml
> @@ -41,6 +41,8 @@ properties:
>      minimum: 0
>      maximum: 512
>  
> +  gpio-ranges: true
> +
>    gpio-ranges-group-names:
>      $ref: /schemas/types.yaml#/definitions/string-array
>  
> diff --git a/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml b/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml
> index e8b99adcb1bd..05fd9a404ff7 100644
> --- a/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml
> +++ b/Documentation/devicetree/bindings/gpu/arm,mali-bifrost.yaml
> @@ -43,6 +43,9 @@ properties:
>  
>    operating-points-v2: true
>  
> +  resets:
> +    maxItems: 2
> +
>  required:
>    - compatible
>    - reg
> @@ -57,9 +60,6 @@ allOf:
>            contains:
>              const: amlogic,meson-g12a-mali
>      then:
> -      properties:
> -        resets:
> -          minItems: 2
>        required:
>          - resets
>  
> diff --git a/Documentation/devicetree/bindings/gpu/arm,mali-midgard.yaml b/Documentation/devicetree/bindings/gpu/arm,mali-midgard.yaml
> index 8d966f3ff3db..6819cde050df 100644
> --- a/Documentation/devicetree/bindings/gpu/arm,mali-midgard.yaml
> +++ b/Documentation/devicetree/bindings/gpu/arm,mali-midgard.yaml
> @@ -75,6 +75,9 @@ properties:
>  
>    mali-supply: true
>  
> +  power-domains:
> +    maxItems: 1
> +
>    resets:
>      minItems: 1
>      maxItems: 2
> diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7192.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad7192.yaml
> index 84d25bd39488..d0913034b1d8 100644
> --- a/Documentation/devicetree/bindings/iio/adc/adi,ad7192.yaml
> +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7192.yaml
> @@ -106,7 +106,6 @@ examples:
>          spi-cpha;
>          clocks = <&ad7192_mclk>;
>          clock-names = "mclk";
> -        #interrupt-cells = <2>;
>          interrupts = <25 0x2>;
>          interrupt-parent = <&gpio>;
>          dvdd-supply = <&dvdd>;
> diff --git a/Documentation/devicetree/bindings/iio/pressure/bmp085.yaml b/Documentation/devicetree/bindings/iio/pressure/bmp085.yaml
> index 519137e5c170..5d4aec0e0d24 100644
> --- a/Documentation/devicetree/bindings/iio/pressure/bmp085.yaml
> +++ b/Documentation/devicetree/bindings/iio/pressure/bmp085.yaml
> @@ -25,6 +25,9 @@ properties:
>        - bosch,bmp280
>        - bosch,bme280
>  
> +  reg:
> +    maxItems: 1
> +
>    vddd-supply:
>      description:
>        digital voltage regulator (see regulator/regulator.txt)
> diff --git a/Documentation/devicetree/bindings/media/amlogic,meson-gx-ao-cec.yaml b/Documentation/devicetree/bindings/media/amlogic,meson-gx-ao-cec.yaml
> index 41197578f19a..e8ce37fcbfec 100644
> --- a/Documentation/devicetree/bindings/media/amlogic,meson-gx-ao-cec.yaml
> +++ b/Documentation/devicetree/bindings/media/amlogic,meson-gx-ao-cec.yaml
> @@ -24,6 +24,12 @@ properties:
>    reg:
>      maxItems: 1
>  
> +  clocks:
> +    maxItems: 1
> +
> +  clock-names:
> +    maxItems: 1
> +
>    interrupts:
>      maxItems: 1
>  
> @@ -47,7 +53,6 @@ allOf:
>              - description: AO-CEC clock
>  
>          clock-names:
> -          maxItems: 1
>            items:
>              - const: core
>  
> @@ -66,7 +71,6 @@ allOf:
>              - description: AO-CEC clock generator source
>  
>          clock-names:
> -          maxItems: 1
>            items:
>              - const: oscin
>  
> @@ -88,4 +92,3 @@ examples:
>          clock-names = "core";
>          hdmi-phandle = <&hdmi_tx>;
>      };
> -
> diff --git a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> index 4fbb9e734284..38dc4f8b0ceb 100644
> --- a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> +++ b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> @@ -41,6 +41,9 @@ properties:
>    "#clock-cells":
>      const: 0
>  
> +  clock-output-names:
> +    const: bd71828-32k-out
> +
>    rohm,charger-sense-resistor-ohms:
>      minimum: 10000000
>      maximum: 50000000
> diff --git a/Documentation/devicetree/bindings/net/ti,cpsw-switch.yaml b/Documentation/devicetree/bindings/net/ti,cpsw-switch.yaml
> index ac8c76369a86..b9e9696da5be 100644
> --- a/Documentation/devicetree/bindings/net/ti,cpsw-switch.yaml
> +++ b/Documentation/devicetree/bindings/net/ti,cpsw-switch.yaml
> @@ -37,6 +37,12 @@ properties:
>      description:
>         The physical base address and size of full the CPSW module IO range
>  
> +  '#address-cells':
> +    const: 1
> +
> +  '#size-cells':
> +    const: 1
> +
>    ranges: true
>  
>    clocks:
> @@ -111,13 +117,6 @@ properties:
>              - reg
>              - phys
>  
> -  mdio:
> -    type: object
> -    allOf:
> -      - $ref: "ti,davinci-mdio.yaml#"
> -    description:
> -      CPSW MDIO bus.
> -
>    cpts:
>      type: object
>      description:
> @@ -148,6 +147,15 @@ properties:
>        - clocks
>        - clock-names
>  
> +patternProperties:
> +  "^mdio@":
> +    type: object
> +    allOf:
> +      - $ref: "ti,davinci-mdio.yaml#"
> +    description:
> +      CPSW MDIO bus.
> +
> +
>  required:
>    - compatible
>    - reg
> @@ -174,7 +182,6 @@ examples:
>          #address-cells = <1>;
>          #size-cells = <1>;
>          syscon = <&scm_conf>;
> -        inctrl-names = "default", "sleep";
>  
>          interrupts = <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
>                       <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
> diff --git a/Documentation/devicetree/bindings/regulator/max77650-regulator.yaml b/Documentation/devicetree/bindings/regulator/max77650-regulator.yaml
> index 7d724159f890..50690487edc8 100644
> --- a/Documentation/devicetree/bindings/regulator/max77650-regulator.yaml
> +++ b/Documentation/devicetree/bindings/regulator/max77650-regulator.yaml
> @@ -24,7 +24,7 @@ properties:
>      const: maxim,max77650-regulator
>  
>  patternProperties:
> -  "^regulator@[0-3]$":
> +  "^regulator-(ldo|sbb[0-2])$":
>      $ref: "regulator.yaml#"
>  
>  required:
> diff --git a/Documentation/devicetree/bindings/thermal/amlogic,thermal.yaml b/Documentation/devicetree/bindings/thermal/amlogic,thermal.yaml
> index f761681e4c0d..93fe7b10a82e 100644
> --- a/Documentation/devicetree/bindings/thermal/amlogic,thermal.yaml
> +++ b/Documentation/devicetree/bindings/thermal/amlogic,thermal.yaml
> @@ -32,6 +32,8 @@ properties:
>      description: phandle to the ao-secure syscon
>      $ref: '/schemas/types.yaml#/definitions/phandle'
>  
> +  '#thermal-sensor-cells':
> +    const: 0
>  
>  required:
>    - compatible
> diff --git a/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml b/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml
> index 102f319833d9..f7ef6646bade 100644
> --- a/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml
> +++ b/Documentation/devicetree/bindings/timer/arm,arch_timer_mmio.yaml
> @@ -32,6 +32,8 @@ properties:
>    '#size-cells':
>      const: 1
>  
> +  ranges: true
> +
>    clock-frequency:
>      description: The frequency of the main counter, in Hz. Should be present
>        only where necessary to work around broken firmware which does not configure