From: Rob Herring <robh@kernel.org>
To: Frank Li <Frank.Li@nxp.com>
Cc: miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com,
krzk+dt@kernel.org, conor+dt@kernel.org, masahiroy@kernel.org,
nathan@kernel.org, nicolas.schier@linux.dev,
linux-mtd@lists.infradead.org, devicetree@vger.kernel.org,
imx@lists.linux.dev
Subject: Re: [PATCH 1/1] dt-bindings: mtd: convert vf610-nfc to yaml format
Date: Fri, 11 Apr 2025 14:30:22 -0500 [thread overview]
Message-ID: <20250411193022.GA3762102-robh@kernel.org> (raw)
In-Reply-To: <20250410210409.3234260-1-Frank.Li@nxp.com>
On Thu, Apr 10, 2025 at 05:04:09PM -0400, Frank Li wrote:
> Convert binding doc vf610-nfc to yaml format.
>
> Additional changes:
> - ref to nand-controller.yaml.
> - include gic.h and clk.h in examples.
> - add clocks and clock-names description.
> - remove #address-cells, #size-cells assigned-clocks and
> assigned-clock-rates.
>
> Signed-off-by: Frank Li <Frank.Li@nxp.com>
> ---
> .../bindings/mtd/fsl,vf610-nfc.yaml | 84 +++++++++++++++++++
> .../devicetree/bindings/mtd/vf610-nfc.txt | 59 -------------
> Makefile | 2 +-
> 3 files changed, 85 insertions(+), 60 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml
> delete mode 100644 Documentation/devicetree/bindings/mtd/vf610-nfc.txt
>
> diff --git a/Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml b/Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml
> new file mode 100644
> index 0000000000000..cffa621dbb022
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml
> @@ -0,0 +1,84 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mtd/fsl,vf610-nfc.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Freescale's NAND flash controller (NFC)
> +
> +description:
> + This variant of the Freescale NAND flash controller (NFC) can be found on
> + Vybrid (vf610), MPC5125, MCF54418 and Kinetis K70.
> +
> +maintainers:
> + - Frank Li <Frank.Li@nxp.com>
> +
> +properties:
> + compatible:
> + enum:
> + - fsl,vf610-nfc
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> +
> + clock-names:
> + items:
> + - const: nfc
> +
> +patternProperties:
> + "^nand@[a-f0-9]$":
> + type: object
> + $ref: raw-nand-chip.yaml
blank line
> + properties:
> + compatible:
> + const: fsl,vf610-nfc-nandcs
blank line
> + reg:
> + const: 0
blank line
> + nand-ecc-strength:
> + enum: [24, 32]
blank line
> + nand-ecc-step-size:
> + const: 2048
blank line
> + unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> +
> +allOf:
> + - $ref: nand-controller.yaml
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/clock/vf610-clock.h>
> +
> + nand-controller@400e0000 {
> + compatible = "fsl,vf610-nfc";
> + reg = <0x400e0000 0x4000>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&clks VF610_CLK_NFC>;
> + clock-names = "nfc";
> + assigned-clocks = <&clks VF610_CLK_NFC>;
> + assigned-clock-rates = <33000000>;
> +
> + nand@0 {
> + compatible = "fsl,vf610-nfc-nandcs";
> + reg = <0>;
> + nand-bus-width = <8>;
> + nand-ecc-mode = "hw";
> + nand-ecc-strength = <32>;
> + nand-ecc-step-size = <2048>;
> + nand-on-flash-bbt;
> + };
> + };
> diff --git a/Documentation/devicetree/bindings/mtd/vf610-nfc.txt b/Documentation/devicetree/bindings/mtd/vf610-nfc.txt
> deleted file mode 100644
> index 7db5e6e609df6..0000000000000
> --- a/Documentation/devicetree/bindings/mtd/vf610-nfc.txt
> +++ /dev/null
> @@ -1,59 +0,0 @@
> -Freescale's NAND flash controller (NFC)
> -
> -This variant of the Freescale NAND flash controller (NFC) can be found on
> -Vybrid (vf610), MPC5125, MCF54418 and Kinetis K70.
> -
> -Required properties:
> -- compatible: Should be set to "fsl,vf610-nfc".
> -- reg: address range of the NFC.
> -- interrupts: interrupt of the NFC.
> -- #address-cells: shall be set to 1. Encode the nand CS.
> -- #size-cells : shall be set to 0.
> -- assigned-clocks: main clock from the SoC, for Vybrid <&clks VF610_CLK_NFC>;
> -- assigned-clock-rates: The NAND bus timing is derived from this clock
> - rate and should not exceed maximum timing for any NAND memory chip
> - in a board stuffing. Typical NAND memory timings derived from this
> - clock are found in the SoC hardware reference manual. Furthermore,
> - there might be restrictions on maximum rates when using hardware ECC.
> -
> -- #address-cells, #size-cells : Must be present if the device has sub-nodes
> - representing partitions.
> -
> -Required children nodes:
> -Children nodes represent the available nand chips. Currently the driver can
> -only handle one NAND chip.
> -
> -Required properties:
> -- compatible: Should be set to "fsl,vf610-nfc-cs".
> -- nand-bus-width: see nand-controller.yaml
> -- nand-ecc-mode: see nand-controller.yaml
> -
> -Required properties for hardware ECC:
> -- nand-ecc-strength: supported strengths are 24 and 32 bit (see nand-controller.yaml)
> -- nand-ecc-step-size: step size equals page size, currently only 2k pages are
> - supported
> -- nand-on-flash-bbt: see nand-controller.yaml
> -
> -Example:
> -
> - nfc: nand@400e0000 {
> - compatible = "fsl,vf610-nfc";
> - #address-cells = <1>;
> - #size-cells = <0>;
> - reg = <0x400e0000 0x4000>;
> - interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
> - clocks = <&clks VF610_CLK_NFC>;
> - clock-names = "nfc";
> - assigned-clocks = <&clks VF610_CLK_NFC>;
> - assigned-clock-rates = <33000000>;
> -
> - nand@0 {
> - compatible = "fsl,vf610-nfc-nandcs";
> - reg = <0>;
> - nand-bus-width = <8>;
> - nand-ecc-mode = "hw";
> - nand-ecc-strength = <32>;
> - nand-ecc-step-size = <2048>;
> - nand-on-flash-bbt;
> - };
> - };
> diff --git a/Makefile b/Makefile
> index 38689a0c36052..b38f91696c567 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1466,7 +1466,7 @@ kselftest-merge:
> # Devicetree files
>
> ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/boot/dts/),)
> -dtstree := arch/$(SRCARCH)/boot/dts
> +dtstree := arch/$(SRCARCH)/boot/dts/nxp
Don't think you wanted this...
> endif
>
> ifneq ($(dtstree),)
> --
> 2.34.1
>
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: Frank Li <Frank.Li@nxp.com>
Cc: miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com,
krzk+dt@kernel.org, conor+dt@kernel.org, masahiroy@kernel.org,
nathan@kernel.org, nicolas.schier@linux.dev,
linux-mtd@lists.infradead.org, devicetree@vger.kernel.org,
imx@lists.linux.dev
Subject: Re: [PATCH 1/1] dt-bindings: mtd: convert vf610-nfc to yaml format
Date: Fri, 11 Apr 2025 14:30:22 -0500 [thread overview]
Message-ID: <20250411193022.GA3762102-robh@kernel.org> (raw)
In-Reply-To: <20250410210409.3234260-1-Frank.Li@nxp.com>
On Thu, Apr 10, 2025 at 05:04:09PM -0400, Frank Li wrote:
> Convert binding doc vf610-nfc to yaml format.
>
> Additional changes:
> - ref to nand-controller.yaml.
> - include gic.h and clk.h in examples.
> - add clocks and clock-names description.
> - remove #address-cells, #size-cells assigned-clocks and
> assigned-clock-rates.
>
> Signed-off-by: Frank Li <Frank.Li@nxp.com>
> ---
> .../bindings/mtd/fsl,vf610-nfc.yaml | 84 +++++++++++++++++++
> .../devicetree/bindings/mtd/vf610-nfc.txt | 59 -------------
> Makefile | 2 +-
> 3 files changed, 85 insertions(+), 60 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml
> delete mode 100644 Documentation/devicetree/bindings/mtd/vf610-nfc.txt
>
> diff --git a/Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml b/Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml
> new file mode 100644
> index 0000000000000..cffa621dbb022
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml
> @@ -0,0 +1,84 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mtd/fsl,vf610-nfc.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Freescale's NAND flash controller (NFC)
> +
> +description:
> + This variant of the Freescale NAND flash controller (NFC) can be found on
> + Vybrid (vf610), MPC5125, MCF54418 and Kinetis K70.
> +
> +maintainers:
> + - Frank Li <Frank.Li@nxp.com>
> +
> +properties:
> + compatible:
> + enum:
> + - fsl,vf610-nfc
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> +
> + clock-names:
> + items:
> + - const: nfc
> +
> +patternProperties:
> + "^nand@[a-f0-9]$":
> + type: object
> + $ref: raw-nand-chip.yaml
blank line
> + properties:
> + compatible:
> + const: fsl,vf610-nfc-nandcs
blank line
> + reg:
> + const: 0
blank line
> + nand-ecc-strength:
> + enum: [24, 32]
blank line
> + nand-ecc-step-size:
> + const: 2048
blank line
> + unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> +
> +allOf:
> + - $ref: nand-controller.yaml
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/clock/vf610-clock.h>
> +
> + nand-controller@400e0000 {
> + compatible = "fsl,vf610-nfc";
> + reg = <0x400e0000 0x4000>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&clks VF610_CLK_NFC>;
> + clock-names = "nfc";
> + assigned-clocks = <&clks VF610_CLK_NFC>;
> + assigned-clock-rates = <33000000>;
> +
> + nand@0 {
> + compatible = "fsl,vf610-nfc-nandcs";
> + reg = <0>;
> + nand-bus-width = <8>;
> + nand-ecc-mode = "hw";
> + nand-ecc-strength = <32>;
> + nand-ecc-step-size = <2048>;
> + nand-on-flash-bbt;
> + };
> + };
> diff --git a/Documentation/devicetree/bindings/mtd/vf610-nfc.txt b/Documentation/devicetree/bindings/mtd/vf610-nfc.txt
> deleted file mode 100644
> index 7db5e6e609df6..0000000000000
> --- a/Documentation/devicetree/bindings/mtd/vf610-nfc.txt
> +++ /dev/null
> @@ -1,59 +0,0 @@
> -Freescale's NAND flash controller (NFC)
> -
> -This variant of the Freescale NAND flash controller (NFC) can be found on
> -Vybrid (vf610), MPC5125, MCF54418 and Kinetis K70.
> -
> -Required properties:
> -- compatible: Should be set to "fsl,vf610-nfc".
> -- reg: address range of the NFC.
> -- interrupts: interrupt of the NFC.
> -- #address-cells: shall be set to 1. Encode the nand CS.
> -- #size-cells : shall be set to 0.
> -- assigned-clocks: main clock from the SoC, for Vybrid <&clks VF610_CLK_NFC>;
> -- assigned-clock-rates: The NAND bus timing is derived from this clock
> - rate and should not exceed maximum timing for any NAND memory chip
> - in a board stuffing. Typical NAND memory timings derived from this
> - clock are found in the SoC hardware reference manual. Furthermore,
> - there might be restrictions on maximum rates when using hardware ECC.
> -
> -- #address-cells, #size-cells : Must be present if the device has sub-nodes
> - representing partitions.
> -
> -Required children nodes:
> -Children nodes represent the available nand chips. Currently the driver can
> -only handle one NAND chip.
> -
> -Required properties:
> -- compatible: Should be set to "fsl,vf610-nfc-cs".
> -- nand-bus-width: see nand-controller.yaml
> -- nand-ecc-mode: see nand-controller.yaml
> -
> -Required properties for hardware ECC:
> -- nand-ecc-strength: supported strengths are 24 and 32 bit (see nand-controller.yaml)
> -- nand-ecc-step-size: step size equals page size, currently only 2k pages are
> - supported
> -- nand-on-flash-bbt: see nand-controller.yaml
> -
> -Example:
> -
> - nfc: nand@400e0000 {
> - compatible = "fsl,vf610-nfc";
> - #address-cells = <1>;
> - #size-cells = <0>;
> - reg = <0x400e0000 0x4000>;
> - interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
> - clocks = <&clks VF610_CLK_NFC>;
> - clock-names = "nfc";
> - assigned-clocks = <&clks VF610_CLK_NFC>;
> - assigned-clock-rates = <33000000>;
> -
> - nand@0 {
> - compatible = "fsl,vf610-nfc-nandcs";
> - reg = <0>;
> - nand-bus-width = <8>;
> - nand-ecc-mode = "hw";
> - nand-ecc-strength = <32>;
> - nand-ecc-step-size = <2048>;
> - nand-on-flash-bbt;
> - };
> - };
> diff --git a/Makefile b/Makefile
> index 38689a0c36052..b38f91696c567 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1466,7 +1466,7 @@ kselftest-merge:
> # Devicetree files
>
> ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/boot/dts/),)
> -dtstree := arch/$(SRCARCH)/boot/dts
> +dtstree := arch/$(SRCARCH)/boot/dts/nxp
Don't think you wanted this...
> endif
>
> ifneq ($(dtstree),)
> --
> 2.34.1
>
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
next prev parent reply other threads:[~2025-04-11 19:30 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-10 21:04 [PATCH 1/1] dt-bindings: mtd: convert vf610-nfc to yaml format Frank Li
2025-04-10 21:04 ` Frank Li
2025-04-11 19:30 ` Rob Herring [this message]
2025-04-11 19:30 ` Rob Herring
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=20250411193022.GA3762102-robh@kernel.org \
--to=robh@kernel.org \
--cc=Frank.Li@nxp.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=imx@lists.linux.dev \
--cc=krzk+dt@kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=masahiroy@kernel.org \
--cc=miquel.raynal@bootlin.com \
--cc=nathan@kernel.org \
--cc=nicolas.schier@linux.dev \
--cc=richard@nod.at \
--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.