From: Paul Cercueil <paul@crapouillou.net>
To: Rob Herring <robh@kernel.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
Miquel Raynal <miquel.raynal@bootlin.com>,
Richard Weinberger <richard@nod.at>,
Vignesh Raghavendra <vigneshr@ti.com>,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
linux-mtd@lists.infradead.org
Subject: Re: [PATCH] dt-bindings: memory-controllers: ingenic: Split out child node properties
Date: Thu, 26 May 2022 00:10:25 +0100 [thread overview]
Message-ID: <DDOGCR.THWZ3JUKPSSB@crapouillou.net> (raw)
In-Reply-To: <20220525210140.2489866-1-robh@kernel.org>
Hi Rob,
Le mer., mai 25 2022 at 16:01:40 -0500, Rob Herring <robh@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@kernel.org>
Acked-by: Paul Cercueil <paul@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@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
>
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
WARNING: multiple messages have this Message-ID (diff)
From: Paul Cercueil <paul@crapouillou.net>
To: Rob Herring <robh@kernel.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
Miquel Raynal <miquel.raynal@bootlin.com>,
Richard Weinberger <richard@nod.at>,
Vignesh Raghavendra <vigneshr@ti.com>,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
linux-mtd@lists.infradead.org
Subject: Re: [PATCH] dt-bindings: memory-controllers: ingenic: Split out child node properties
Date: Thu, 26 May 2022 00:10:25 +0100 [thread overview]
Message-ID: <DDOGCR.THWZ3JUKPSSB@crapouillou.net> (raw)
In-Reply-To: <20220525210140.2489866-1-robh@kernel.org>
Hi Rob,
Le mer., mai 25 2022 at 16:01:40 -0500, Rob Herring <robh@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@kernel.org>
Acked-by: Paul Cercueil <paul@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@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
>
next prev parent reply other threads:[~2022-05-25 23:11 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-25 21:01 [PATCH] dt-bindings: memory-controllers: ingenic: Split out child node properties Rob Herring
2022-05-25 21:01 ` Rob Herring
2022-05-25 23:10 ` Paul Cercueil [this message]
2022-05-25 23:10 ` Paul Cercueil
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DDOGCR.THWZ3JUKPSSB@crapouillou.net \
--to=paul@crapouillou.net \
--cc=devicetree@vger.kernel.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=miquel.raynal@bootlin.com \
--cc=richard@nod.at \
--cc=robh@kernel.org \
--cc=vigneshr@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.