[PATCH] dt-bindings: memory-controllers: ingenic: Split out child node properties
Paul Cercueil
paul at crapouillou.net
Wed May 25 16:10:25 PDT 2022
Hi Rob,
Le mer., mai 25 2022 at 16:01:40 -0500, Rob Herring <robh at kernel.org> a
écrit :
> Binding schemas which define child node properties such as memory
> controllers with timing properties need a separate schema which can be
> referenced from child device schemas. This is necessary for
> unevaluatedProperties checks to work properly.
>
> Move the ingenic,nemc child properties to its own file and reference
> from ingenic,nand.yaml which describes a child NAND controller.
>
> Signed-off-by: Rob Herring <robh at kernel.org>
Acked-by: Paul Cercueil <paul at crapouillou.net>
Cheers,
-Paul
> ---
> .../ingenic,nemc-peripherals.yaml | 46
> +++++++++++++++++++
> .../memory-controllers/ingenic,nemc.yaml | 32 -------------
> .../devicetree/bindings/mtd/ingenic,nand.yaml | 1 +
> 3 files changed, 47 insertions(+), 32 deletions(-)
> create mode 100644
> Documentation/devicetree/bindings/memory-controllers/ingenic,nemc-peripherals.yaml
>
> diff --git
> a/Documentation/devicetree/bindings/memory-controllers/ingenic,nemc-peripherals.yaml
> b/Documentation/devicetree/bindings/memory-controllers/ingenic,nemc-peripherals.yaml
> new file mode 100644
> index 000000000000..b8ed52a44d57
> --- /dev/null
> +++
> b/Documentation/devicetree/bindings/memory-controllers/ingenic,nemc-peripherals.yaml
> @@ -0,0 +1,46 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id:
> http://devicetree.org/schemas/memory-controllers/ingenic,nemc-peripherals.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Ingenic SoCs NAND / External Memory Controller (NEMC)
> devicetree bindings
> +
> +maintainers:
> + - Paul Cercueil <paul at crapouillou.net>
> +
> +properties:
> + reg:
> + minItems: 1
> + maxItems: 255
> +
> + ingenic,nemc-bus-width:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum: [8, 16]
> + description: Specifies the bus width in bits.
> +
> + ingenic,nemc-tAS:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Address setup time in nanoseconds.
> +
> + ingenic,nemc-tAH:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Address hold time in nanoseconds.
> +
> + ingenic,nemc-tBP:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Burst pitch time in nanoseconds.
> +
> + ingenic,nemc-tAW:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Address wait time in nanoseconds.
> +
> + ingenic,nemc-tSTRV:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Static memory recovery time in nanoseconds.
> +
> +required:
> + - reg
> +
> +additionalProperties: true
> +...
> diff --git
> a/Documentation/devicetree/bindings/memory-controllers/ingenic,nemc.yaml
> b/Documentation/devicetree/bindings/memory-controllers/ingenic,nemc.yaml
> index 24f9e1982028..dd13a5106d6c 100644
> ---
> a/Documentation/devicetree/bindings/memory-controllers/ingenic,nemc.yaml
> +++
> b/Documentation/devicetree/bindings/memory-controllers/ingenic,nemc.yaml
> @@ -39,38 +39,6 @@ properties:
> patternProperties:
> ".*@[0-9]+$":
> type: object
> - properties:
> - reg:
> - minItems: 1
> - maxItems: 255
> -
> - ingenic,nemc-bus-width:
> - $ref: /schemas/types.yaml#/definitions/uint32
> - enum: [8, 16]
> - description: Specifies the bus width in bits.
> -
> - ingenic,nemc-tAS:
> - $ref: /schemas/types.yaml#/definitions/uint32
> - description: Address setup time in nanoseconds.
> -
> - ingenic,nemc-tAH:
> - $ref: /schemas/types.yaml#/definitions/uint32
> - description: Address hold time in nanoseconds.
> -
> - ingenic,nemc-tBP:
> - $ref: /schemas/types.yaml#/definitions/uint32
> - description: Burst pitch time in nanoseconds.
> -
> - ingenic,nemc-tAW:
> - $ref: /schemas/types.yaml#/definitions/uint32
> - description: Address wait time in nanoseconds.
> -
> - ingenic,nemc-tSTRV:
> - $ref: /schemas/types.yaml#/definitions/uint32
> - description: Static memory recovery time in nanoseconds.
> -
> - required:
> - - reg
>
> required:
> - compatible
> diff --git a/Documentation/devicetree/bindings/mtd/ingenic,nand.yaml
> b/Documentation/devicetree/bindings/mtd/ingenic,nand.yaml
> index 9de8ef6e59ca..8c272c842bfd 100644
> --- a/Documentation/devicetree/bindings/mtd/ingenic,nand.yaml
> +++ b/Documentation/devicetree/bindings/mtd/ingenic,nand.yaml
> @@ -11,6 +11,7 @@ maintainers:
>
> allOf:
> - $ref: nand-controller.yaml#
> + - $ref: /schemas/memory-controllers/ingenic,nemc-peripherals.yaml#
>
> properties:
> compatible:
> --
> 2.34.1
>
More information about the linux-mtd
mailing list