dt-bindings: mtd: fixed-partition: Add binman compatibles

Add two compatibles for binman entries, as a starting point for the
schema.

Note that, after discussion on v2, we decided to keep the existing
meaning of label so as not to require changes to existing userspace
software when moving to use binman nodes to specify the firmware
layout.

Note also that, after discussion on v6, we decided to use the same
'fixed-partition' schema for the binman features, so this version
adds a new 'binman.yaml' file providing the new compatibles to the
existing partition.yaml binding.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20240412153249.100787-2-sjg@chromium.org
This commit is contained in:
Simon Glass 2024-04-12 09:32:49 -06:00 committed by Miquel Raynal
parent d8d42d47a9
commit f48d2d6ebd
3 changed files with 79 additions and 0 deletions

View File

@ -0,0 +1,53 @@
# 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@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@100000 {
compatible = "u-boot";
reg = <0x100000 0xf00000>;
align-size = <0x1000>;
align-end = <0x10000>;
};
partition@200000 {
compatible = "tfa-bl31";
reg = <0x200000 0x100000>;
align = <0x4000>;
};
};

View File

@ -118,3 +118,24 @@ then:
# This is a generic file other binding inherit from and extend
additionalProperties: true
examples:
- |
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@100000 {
compatible = "u-boot";
reg = <0x100000 0xf00000>;
align-size = <0x1000>;
align-end = <0x10000>;
};
partition@200000 {
compatible = "tfa-bl31";
reg = <0x200000 0x100000>;
align = <0x4000>;
};
};

View File

@ -3611,6 +3611,11 @@ F: Documentation/filesystems/bfs.rst
F: fs/bfs/
F: include/uapi/linux/bfs_fs.h
BINMAN
M: Simon Glass <sjg@chromium.org>
S: Supported
F: Documentation/devicetree/bindings/mtd/partitions/binman*
BITMAP API
M: Yury Norov <yury.norov@gmail.com>
R: Rasmus Villemoes <linux@rasmusvillemoes.dk>