From: Rosen Penev <rosenp@gmail.com>
To: devicetree@vger.kernel.org
Cc: Miquel Raynal <miquel.raynal@bootlin.com>,
Richard Weinberger <richard@nod.at>,
Vignesh Raghavendra <vigneshr@ti.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
linux-mtd@lists.infradead.org (open list:MEMORY TECHNOLOGY
DEVICES (MTD)), linux-kernel@vger.kernel.org (open list)
Subject: [PATCHv2] dt-bindings: mtd: convert IBM NDFC binding to YAML
Date: Wed, 23 Sep 2026 12:25:28 -0700 [thread overview]
Message-ID: <20260923192528.52330-1-rosenp@gmail.com> (raw)
The NDFC NAND flash controller was only described in a legacy text file,
so dtbs_check reported "failed to match any schema with compatible:
['ibm,ndfc']" for the ndfc nodes of the bluestone, canyonlands, eiger,
glacier, sequoia and warp device trees.
Convert the binding to the YAML format so those nodes match the generic
nand-controller-legacy schema. Describe the node's reg, ccr and
bank-settings properties, along with its "nand" chip node which carries
the legacy partition layout.
Assisted-by: LLM
Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
v2: fix reg value
.../devicetree/bindings/mtd/ibm,ndfc.txt | 39 --------
.../devicetree/bindings/mtd/ibm,ndfc.yaml | 89 +++++++++++++++++++
2 files changed, 89 insertions(+), 39 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/mtd/ibm,ndfc.txt
create mode 100644 Documentation/devicetree/bindings/mtd/ibm,ndfc.yaml
diff --git a/Documentation/devicetree/bindings/mtd/ibm,ndfc.txt b/Documentation/devicetree/bindings/mtd/ibm,ndfc.txt
deleted file mode 100644
index 869f0b5f16e8..000000000000
--- a/Documentation/devicetree/bindings/mtd/ibm,ndfc.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-AMCC NDFC (NanD Flash Controller)
-
-Required properties:
-- compatible : "ibm,ndfc".
-- reg : should specify chip select and size used for the chip (0x2000).
-
-Optional properties:
-- ccr : NDFC config and control register value (default 0).
-- bank-settings : NDFC bank configuration register value (default 0).
-
-Notes:
-- partition(s) - follows the OF MTD standard for partitions
-
-Example:
-
-ndfc@1,0 {
- compatible = "ibm,ndfc";
- reg = <0x00000001 0x00000000 0x00002000>;
- ccr = <0x00001000>;
- bank-settings = <0x80002222>;
- #address-cells = <1>;
- #size-cells = <1>;
-
- nand {
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition@0 {
- label = "kernel";
- reg = <0x00000000 0x00200000>;
- };
- partition@200000 {
- label = "root";
- reg = <0x00200000 0x03E00000>;
- };
- };
-};
-
-
diff --git a/Documentation/devicetree/bindings/mtd/ibm,ndfc.yaml b/Documentation/devicetree/bindings/mtd/ibm,ndfc.yaml
new file mode 100644
index 000000000000..51ba0bd1d329
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/ibm,ndfc.yaml
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mtd/ibm,ndfc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: IBM/AMCC NDFC (NAND Flash Controller)
+
+maintainers:
+ - Miquel Raynal <miquel.raynal@bootlin.com>
+ - Richard Weinberger <richard@nod.at>
+
+description: |
+ The NDFC is the NAND flash controller integrated into the IBM/AMCC
+ PowerPC 44x SoCs.
+
+allOf:
+ - $ref: nand-controller-legacy.yaml#
+
+properties:
+ compatible:
+ const: ibm,ndfc
+
+ reg:
+ description: Chip select and size used for the chip.
+ maxItems: 1
+
+ ccr:
+ description: NDFC config and control register value.
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ bank-settings:
+ description: NDFC bank configuration register value.
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ nand:
+ type: object
+ description: NAND chip attached to the controller.
+
+ properties:
+ "#address-cells":
+ const: 1
+ "#size-cells":
+ const: 1
+
+ patternProperties:
+ "(^partition)?@[0-9a-f]+$":
+ $ref: /schemas/mtd/partitions/partition.yaml#/$defs/partition-node
+ deprecated: true
+ unevaluatedProperties: false
+
+ additionalProperties: true
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ ebc {
+ #address-cells = <2>;
+ #size-cells = <1>;
+
+ ndfc@1,0 {
+ compatible = "ibm,ndfc";
+ reg = <0x00000001 0x00000000 0x00002000>;
+ ccr = <0x00001000>;
+ bank-settings = <0x80002222>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ nand {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "kernel";
+ reg = <0x00000000 0x00200000>;
+ };
+ partition@200000 {
+ label = "root";
+ reg = <0x00200000 0x03e00000>;
+ };
+ };
+ };
+ };
+...
--
2.55.0
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
WARNING: multiple messages have this Message-ID (diff)
From: Rosen Penev <rosenp@gmail.com>
To: devicetree@vger.kernel.org
Cc: Miquel Raynal <miquel.raynal@bootlin.com>,
Richard Weinberger <richard@nod.at>,
Vignesh Raghavendra <vigneshr@ti.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
linux-mtd@lists.infradead.org (open list:MEMORY TECHNOLOGY
DEVICES (MTD)), linux-kernel@vger.kernel.org (open list)
Subject: [PATCHv2] dt-bindings: mtd: convert IBM NDFC binding to YAML
Date: Wed, 23 Sep 2026 12:25:28 -0700 [thread overview]
Message-ID: <20260923192528.52330-1-rosenp@gmail.com> (raw)
The NDFC NAND flash controller was only described in a legacy text file,
so dtbs_check reported "failed to match any schema with compatible:
['ibm,ndfc']" for the ndfc nodes of the bluestone, canyonlands, eiger,
glacier, sequoia and warp device trees.
Convert the binding to the YAML format so those nodes match the generic
nand-controller-legacy schema. Describe the node's reg, ccr and
bank-settings properties, along with its "nand" chip node which carries
the legacy partition layout.
Assisted-by: LLM
Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
v2: fix reg value
.../devicetree/bindings/mtd/ibm,ndfc.txt | 39 --------
.../devicetree/bindings/mtd/ibm,ndfc.yaml | 89 +++++++++++++++++++
2 files changed, 89 insertions(+), 39 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/mtd/ibm,ndfc.txt
create mode 100644 Documentation/devicetree/bindings/mtd/ibm,ndfc.yaml
diff --git a/Documentation/devicetree/bindings/mtd/ibm,ndfc.txt b/Documentation/devicetree/bindings/mtd/ibm,ndfc.txt
deleted file mode 100644
index 869f0b5f16e8..000000000000
--- a/Documentation/devicetree/bindings/mtd/ibm,ndfc.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-AMCC NDFC (NanD Flash Controller)
-
-Required properties:
-- compatible : "ibm,ndfc".
-- reg : should specify chip select and size used for the chip (0x2000).
-
-Optional properties:
-- ccr : NDFC config and control register value (default 0).
-- bank-settings : NDFC bank configuration register value (default 0).
-
-Notes:
-- partition(s) - follows the OF MTD standard for partitions
-
-Example:
-
-ndfc@1,0 {
- compatible = "ibm,ndfc";
- reg = <0x00000001 0x00000000 0x00002000>;
- ccr = <0x00001000>;
- bank-settings = <0x80002222>;
- #address-cells = <1>;
- #size-cells = <1>;
-
- nand {
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition@0 {
- label = "kernel";
- reg = <0x00000000 0x00200000>;
- };
- partition@200000 {
- label = "root";
- reg = <0x00200000 0x03E00000>;
- };
- };
-};
-
-
diff --git a/Documentation/devicetree/bindings/mtd/ibm,ndfc.yaml b/Documentation/devicetree/bindings/mtd/ibm,ndfc.yaml
new file mode 100644
index 000000000000..51ba0bd1d329
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/ibm,ndfc.yaml
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mtd/ibm,ndfc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: IBM/AMCC NDFC (NAND Flash Controller)
+
+maintainers:
+ - Miquel Raynal <miquel.raynal@bootlin.com>
+ - Richard Weinberger <richard@nod.at>
+
+description: |
+ The NDFC is the NAND flash controller integrated into the IBM/AMCC
+ PowerPC 44x SoCs.
+
+allOf:
+ - $ref: nand-controller-legacy.yaml#
+
+properties:
+ compatible:
+ const: ibm,ndfc
+
+ reg:
+ description: Chip select and size used for the chip.
+ maxItems: 1
+
+ ccr:
+ description: NDFC config and control register value.
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ bank-settings:
+ description: NDFC bank configuration register value.
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ nand:
+ type: object
+ description: NAND chip attached to the controller.
+
+ properties:
+ "#address-cells":
+ const: 1
+ "#size-cells":
+ const: 1
+
+ patternProperties:
+ "(^partition)?@[0-9a-f]+$":
+ $ref: /schemas/mtd/partitions/partition.yaml#/$defs/partition-node
+ deprecated: true
+ unevaluatedProperties: false
+
+ additionalProperties: true
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ ebc {
+ #address-cells = <2>;
+ #size-cells = <1>;
+
+ ndfc@1,0 {
+ compatible = "ibm,ndfc";
+ reg = <0x00000001 0x00000000 0x00002000>;
+ ccr = <0x00001000>;
+ bank-settings = <0x80002222>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ nand {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "kernel";
+ reg = <0x00000000 0x00200000>;
+ };
+ partition@200000 {
+ label = "root";
+ reg = <0x00200000 0x03e00000>;
+ };
+ };
+ };
+ };
+...
--
2.55.0
next reply other threads:[~2026-09-23 19:25 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-23 19:25 Rosen Penev [this message]
2026-09-23 19:25 ` [PATCHv2] dt-bindings: mtd: convert IBM NDFC binding to YAML Rosen Penev
2026-09-23 19:32 ` sashiko-bot
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=20260923192528.52330-1-rosenp@gmail.com \
--to=rosenp@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@kernel.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.