
On Mon, Mar 06, 2023 at 05:18:14PM -0600, jassisinghbrar@gmail.com wrote:
From: Jassi Brar jaswinder.singh@linaro.org
Any requirement of FWU should not require changes to bindings of other subsystems. For example, for mtd-backed storage we can do without requiring 'fixed-partitions' children to also carry 'uuid', a property which is non-standard and not in the bindings.
The existing bindings were constructed like that in case we wanted to upstream the dt-bindings. But I think we are fine keeping it as an internal ABI for now. Note here that we will need to strip this eventually before we hand over the dtb into linux, but that's a different story. In any case as long as the DT comes from u-boot I don't think we will have a risk of introducing compatibility issues if we ever upstream this and go back to the old format.
Acked-by: Ilias Apalodimas ilias.apalodimas@linaro.org
There exists no code yet, so we can change the fwu-mtd bindings to contain all properties within the fwu-mdata node.
Signed-off-by: Jassi Brar jaswinder.singh@linaro.org
.../firmware/fwu-mdata-mtd.yaml | 105 +++++++++++++++--- 1 file changed, 91 insertions(+), 14 deletions(-)
diff --git a/doc/device-tree-bindings/firmware/fwu-mdata-mtd.yaml b/doc/device-tree-bindings/firmware/fwu-mdata-mtd.yaml index 4f5404f999..6a22aeea30 100644 --- a/doc/device-tree-bindings/firmware/fwu-mdata-mtd.yaml +++ b/doc/device-tree-bindings/firmware/fwu-mdata-mtd.yaml @@ -1,13 +1,13 @@ # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2
-$id: http://devicetree.org/schemas/firmware/u-boot,fwu-mdata-sf.yaml# -$schema: http://devicetree.org/meta-schemas/core.yaml# +$id: http://devicetree.org/schemas/firmware/u-boot,fwu-mdata-mtd.yaml# +$schema: http://devicetree.org/meta-schemas/base.yaml#
title: FWU metadata on MTD device without GPT
maintainers:
- Masami Hiramatsu masami.hiramatsu@linaro.org
- Jassi Brar jaswinder.singh@linaro.org
properties: compatible: @@ -15,24 +15,101 @@ properties: - const: u-boot,fwu-mdata-mtd
fwu-mdata-store:
- maxItems: 1
- description: Phandle of the MTD device which contains the FWU medatata.
- $ref: /schemas/types.yaml#/definitions/phandle
- description: Phandle of the MTD device which contains the FWU MetaData and Banks.
- mdata-offsets:
- mdata-parts:
- $ref: /schemas/types.yaml#/definitions/non-unique-string-array minItems: 2
- description: Offsets of the primary and secondary FWU metadata in the NOR flash.
- maxItems: 2
- description: labels of the primary and secondary FWU metadata partitions in the 'fixed-partitions' subnode of the 'jedec,spi-nor' flash device node.
- patternProperties:
- "fwu-bank[0-9]":
- type: object
- description: List of FWU mtd-backed banks. Typically two banks.
- properties:
id:
$ref: /schemas/types.yaml#/definitions/uint32
description: Index of the bank.
label:
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
minItems: 1
maxItems: 1
description: label of the partition, in the 'fixed-partitions' subnode of the 'jedec,spi-nor' flash device node, that holds this bank.
patternProperties:
"fwu-image[0-9]":
type: object
description: List of images in the FWU mtd-backed bank.
properties:
id:
$ref: /schemas/types.yaml#/definitions/uint32
description: Index of the bank.
offset:
$ref: /schemas/types.yaml#/definitions/uint32
description: Offset, from start of the bank, where the image is located.
size:
$ref: /schemas/types.yaml#/definitions/uint32
description: Size reserved for the image.
uuid:
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
minItems: 1
maxItems: 1
description: UUID of the image.
required:
- id
- offset
- size
- uuid
additionalProperties: false
- required:
- id
- label
- fwu-images
- additionalProperties: false
required:
- compatible
- fwu-mdata-store
- mdata-offsets
- mdata-parts
- fwu-banks
additionalProperties: false
examples:
- |
- fwu-mdata {
compatible = "u-boot,fwu-mdata-mtd";
fwu-mdata-store = <&spi-flash>;
mdata-offsets = <0x500000 0x530000>;
- };
- fwu-mdata {
compatible = "u-boot,fwu-mdata-mtd";
fwu-mdata-store = <&flash0>;
mdata-parts = "MDATA-Pri", "MDATA-Sec";
fwu-bank0 {
id = <0>;
label = "FIP-Bank0";
fwu-image0 {
id = <0>;
offset = <0x0>;
size = <0x400000>;
uuid = "5a66a702-99fd-4fef-a392-c26e261a2828";
};
};
fwu-bank1 {
id = <1>;
label = "FIP-Bank1";
fwu-image0 {
id = <0>;
offset = <0x0>;
size = <0x400000>;
uuid = "a8f868a1-6e5c-4757-878d-ce63375ef2c0";
};
};
- };
+...
2.34.1