Re: [PATCH] dt-bindings: rng: Convert BCM2835 to DT schema

From: Rob Herring
Date: Wed Feb 19 2020 - 17:06:50 EST


On Fri, Feb 07, 2020 at 11:14:12PM +0000, Nícolas F. R. A. Prado wrote:
> Convert BCM2835/6368 Random number generator bindings to DT schema.
>
> Signed-off-by: Nícolas F. R. A. Prado <nfraprado@xxxxxxxxxxxxxx>
> ---
>
> Hi,
> wasn't really clear to me who to add as maintainer for this dt-binding.
> The three names added here as maintainers were based on the get_maintainer
> script and on previous commits on this file.
> Please tell me whether these are the right maintainers for this file or not.

Whoever knows the h/w ideally, not who is going to apply patches.

>
> This patch was tested with:
> make ARCH=arm DT_SCHEMA_FILES=Documentation/devicetree/bindings/rng/brcm,bcm2835.yaml dt_binding_check

You also need to make sure without DT_SCHEMA_FILES set everything is
fine. That tests the example against all schemas.

> make ARCH=arm DT_SCHEMA_FILES=Documentation/devicetree/bindings/rng/brcm,bcm2835.yaml dtbs_check
>
> Thanks,
> Nícolas
>
> .../devicetree/bindings/rng/brcm,bcm2835.txt | 40 ------------
> .../devicetree/bindings/rng/brcm,bcm2835.yaml | 61 +++++++++++++++++++
> 2 files changed, 61 insertions(+), 40 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/rng/brcm,bcm2835.txt
> create mode 100644 Documentation/devicetree/bindings/rng/brcm,bcm2835.yaml
>
> diff --git a/Documentation/devicetree/bindings/rng/brcm,bcm2835.txt b/Documentation/devicetree/bindings/rng/brcm,bcm2835.txt
> deleted file mode 100644
> index aaac7975f61c..000000000000
> --- a/Documentation/devicetree/bindings/rng/brcm,bcm2835.txt
> +++ /dev/null
> @@ -1,40 +0,0 @@
> -BCM2835/6368 Random number generator
> -
> -Required properties:
> -
> -- compatible : should be one of
> - "brcm,bcm2835-rng"
> - "brcm,bcm-nsp-rng"
> - "brcm,bcm5301x-rng" or
> - "brcm,bcm6368-rng"
> -- reg : Specifies base physical address and size of the registers.
> -
> -Optional properties:
> -
> -- clocks : phandle to clock-controller plus clock-specifier pair
> -- clock-names : "ipsec" as a clock name
> -
> -Optional properties:
> -
> -- interrupts: specify the interrupt for the RNG block
> -
> -Example:
> -
> -rng {
> - compatible = "brcm,bcm2835-rng";
> - reg = <0x7e104000 0x10>;
> - interrupts = <2 29>;
> -};
> -
> -rng@18033000 {
> - compatible = "brcm,bcm-nsp-rng";
> - reg = <0x18033000 0x14>;
> -};
> -
> -random: rng@10004180 {
> - compatible = "brcm,bcm6368-rng";
> - reg = <0x10004180 0x14>;
> -
> - clocks = <&periph_clk 18>;
> - clock-names = "ipsec";
> -};
> diff --git a/Documentation/devicetree/bindings/rng/brcm,bcm2835.yaml b/Documentation/devicetree/bindings/rng/brcm,bcm2835.yaml
> new file mode 100644
> index 000000000000..b1621031721e
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/rng/brcm,bcm2835.yaml
> @@ -0,0 +1,61 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/rng/brcm,bcm2835.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: BCM2835/6368 Random number generator
> +
> +maintainers:
> + - Stefan Wahren <stefan.wahren@xxxxxxxx>
> + - Florian Fainelli <f.fainelli@xxxxxxxxx>
> + - Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
> +
> +properties:
> + compatible:
> + enum:
> + - brcm,bcm2835-rng
> + - brcm,bcm-nsp-rng
> + - brcm,bcm5301x-rng
> + - brcm,bcm6368-rng
> +
> + reg:
> + maxItems: 1
> +
> + clocks:
> + description: phandle to clock-controller plus clock-specifier pair

No need to redefine a common property.

> + maxItems: 1
> +
> + clock-names:
> + const: ipsec
> +
> + interrupts:
> + description: specify the interrupt for the RNG block

Same here.

> + maxItems: 1
> +
> +required:
> + - compatible
> + - reg
> +
> +examples:
> + - |
> + rng {
> + compatible = "brcm,bcm2835-rng";
> + reg = <0x7e104000 0x10>;
> + interrupts = <2 29>;
> + };
> +
> + - |
> + rng@18033000 {
> + compatible = "brcm,bcm-nsp-rng";
> + reg = <0x18033000 0x14>;
> + };
> +
> + - |
> + random: rng@10004180 {

Drop the label.

> + compatible = "brcm,bcm6368-rng";
> + reg = <0x10004180 0x14>;
> +
> + clocks = <&periph_clk 18>;
> + clock-names = "ipsec";
> + };
> --
> 2.25.0
>
>