[PATCH 10/10] dt-bindings: mtd: partitions: Combine simple partition bindings
Rob Herring (Arm)
robh at kernel.org
Thu Jan 8 09:53:19 PST 2026
Several partition node bindings are just a compatible plus properties
defined in partition.yaml. Move all of these bindings to a single schema
file.
Signed-off-by: Rob Herring (Arm) <robh at kernel.org>
---
.../devicetree/bindings/mtd/partitions/binman.yaml | 53 -------------------
.../mtd/partitions/brcm,bcm4908-partitions.yaml | 6 +--
.../mtd/partitions/brcm,bcm963xx-imagetag.txt | 45 ----------------
.../devicetree/bindings/mtd/partitions/seama.yaml | 44 ----------------
.../bindings/mtd/partitions/simple-partition.yaml | 61 ++++++++++++++++++++++
MAINTAINERS | 5 --
6 files changed, 62 insertions(+), 152 deletions(-)
diff --git a/Documentation/devicetree/bindings/mtd/partitions/binman.yaml b/Documentation/devicetree/bindings/mtd/partitions/binman.yaml
deleted file mode 100644
index bb4b08546184..000000000000
--- a/Documentation/devicetree/bindings/mtd/partitions/binman.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
-%YAML 1.2
----
-$id: http://devicetree.org/schemas/mtd/partitions/binman.yaml#
-$schema: http://devicetree.org/meta-schemas/core.yaml#
-
-title: Binman entries
-
-description: |
- This corresponds to a binman 'entry'. It is a single partition which holds
- data of a defined type.
-
- Binman uses the type to indicate what data file / type to place in the
- partition. There are quite a number of binman-specific entry types, such as
- section, fill and files, to be added later.
-
-maintainers:
- - Simon Glass <sjg at chromium.org>
-
-allOf:
- - $ref: /schemas/mtd/partitions/partition.yaml#
-
-properties:
- compatible:
- enum:
- - u-boot # u-boot.bin from U-Boot project
- - tfa-bl31 # bl31.bin or bl31.elf from TF-A project
-
-required:
- - compatible
-
-unevaluatedProperties: false
-
-examples:
- - |
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition at 100000 {
- compatible = "u-boot";
- reg = <0x100000 0xf00000>;
- align-size = <0x1000>;
- align-end = <0x10000>;
- };
-
- partition at 200000 {
- compatible = "tfa-bl31";
- reg = <0x200000 0x100000>;
- align = <0x4000>;
- };
- };
diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml
index 159b32d12803..a6edf145df57 100644
--- a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml
+++ b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml
@@ -29,11 +29,7 @@ properties:
patternProperties:
"^partition@[0-9a-f]+$":
- $ref: partition.yaml#
- properties:
- compatible:
- const: brcm,bcm4908-firmware
- unevaluatedProperties: false
+ type: object
required:
- "#address-cells"
diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
deleted file mode 100644
index f8b7418ed817..000000000000
--- a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
+++ /dev/null
@@ -1,45 +0,0 @@
-Broadcom BCM963XX ImageTag Partition Container
-==============================================
-
-Some Broadcom BCM63XX SoC based devices contain additional, non discoverable
-partitions or non standard bootloader partition sizes. For these a mixed layout
-needs to be used with an explicit firmware partition.
-
-The BCM963XX ImageTag is a simple firmware header describing the offsets and
-sizes of the rootfs and kernel parts contained in the firmware.
-
-Required properties:
-- compatible : must be "brcm,bcm963xx-imagetag"
-
-Example:
-
-flash at 1e000000 {
- compatible = "cfi-flash";
- reg = <0x1e000000 0x2000000>;
- bank-width = <2>;
-
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- cfe at 0 {
- reg = <0x0 0x10000>;
- read-only;
- };
-
- firmware at 10000 {
- reg = <0x10000 0x7d0000>;
- compatible = "brcm,bcm963xx-imagetag";
- };
-
- caldata at 7e0000 {
- reg = <0x7e0000 0x10000>;
- read-only;
- };
-
- nvram at 7f0000 {
- reg = <0x7f0000 0x10000>;
- };
- };
-};
diff --git a/Documentation/devicetree/bindings/mtd/partitions/seama.yaml b/Documentation/devicetree/bindings/mtd/partitions/seama.yaml
deleted file mode 100644
index 4af185204b4b..000000000000
--- a/Documentation/devicetree/bindings/mtd/partitions/seama.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
-# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
-%YAML 1.2
----
-$id: http://devicetree.org/schemas/mtd/partitions/seama.yaml#
-$schema: http://devicetree.org/meta-schemas/core.yaml#
-
-title: Seattle Image Partitions
-
-description: The SEAttle iMAge (SEAMA) partition is a type of partition
- used for NAND flash devices. This type of flash image is found in some
- D-Link routers such as DIR-645, DIR-842, DIR-859, DIR-860L, DIR-885L,
- DIR890L and DCH-M225, as well as in WD and NEC routers on the ath79
- (MIPS), Broadcom BCM53xx, and RAMIPS platforms. This partition type
- does not have children defined in the device tree, they need to be
- detected by software.
-
-allOf:
- - $ref: partition.yaml#
-
-maintainers:
- - Linus Walleij <linusw at kernel.org>
-
-properties:
- compatible:
- const: seama
-
-required:
- - compatible
-
-unevaluatedProperties: false
-
-examples:
- - |
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition at 0 {
- compatible = "seama";
- reg = <0x0 0x800000>;
- label = "firmware";
- };
- };
diff --git a/Documentation/devicetree/bindings/mtd/partitions/simple-partition.yaml b/Documentation/devicetree/bindings/mtd/partitions/simple-partition.yaml
new file mode 100644
index 000000000000..14f5006c54a8
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/partitions/simple-partition.yaml
@@ -0,0 +1,61 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mtd/partitions/simple-partition.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Simple partition types
+
+description:
+ Simple partition types which only define a "compatible" value and no custom
+ properties.
+
+maintainers:
+ - Rafał Miłecki <rafal at milecki.pl>
+ - Simon Glass <sjg at chromium.org>
+
+allOf:
+ - $ref: partition.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - const: brcm,bcm4908-firmware
+ description:
+ Broadcom BCM4908 CFE bootloader firmware partition
+
+ - const: brcm,bcm963xx-imagetag
+ description:
+ The BCM963XX ImageTag is a simple firmware header describing the
+ offsets and sizes of the rootfs and kernel parts contained in the
+ firmware.
+
+ - const: seama
+ description:
+ The SEAttle iMAge (SEAMA) partition is a type of partition used for
+ NAND flash devices. This type of flash image is found in some D-Link
+ routers such as DIR-645, DIR-842, DIR-859, DIR-860L, DIR-885L, DIR890L
+ and DCH-M225, as well as in WD and NEC routers on the ath79 (MIPS),
+ Broadcom BCM53xx, and RAMIPS platforms. This partition type does not
+ have children defined in the device tree, they need to be detected by
+ software.
+
+ - const: u-boot
+ description: >
+ u-boot.bin from U-Boot project.
+
+ This corresponds to a binman 'entry'. It is a single partition which holds
+ data of a defined type.
+
+ Binman uses the type to indicate what data file / type to place in the
+ partition. There are quite a number of binman-specific entry types, such as
+ section, fill and files, to be added later.
+
+ - const: tfa-bl31
+ description: >
+ bl31.bin or bl31.elf from TF-A project
+
+ This corresponds to a binman 'entry'. It is a single partition which holds
+ data of a defined type.
+
+unevaluatedProperties: false
diff --git a/MAINTAINERS b/MAINTAINERS
index d4b97d7181b5..032287c16cd7 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4429,11 +4429,6 @@ F: Documentation/filesystems/bfs.rst
F: fs/bfs/
F: include/uapi/linux/bfs_fs.h
-BINMAN
-M: Simon Glass <sjg at chromium.org>
-S: Supported
-F: Documentation/devicetree/bindings/mtd/partitions/binman*
-
BITMAP API
M: Yury Norov <yury.norov at gmail.com>
R: Rasmus Villemoes <linux at rasmusvillemoes.dk>
--
2.51.0
More information about the linux-mtd
mailing list