[PATCH v6 1/7] dt/bindings: fwu-mdata-mtd: drop changes outside FWU

Ilias Apalodimas ilias.apalodimas at linaro.org
Fri Jun 9 09:42:50 CEST 2023


On Mon, Mar 06, 2023 at 05:18:14PM -0600, jassisinghbrar at gmail.com wrote:
> From: Jassi Brar <jaswinder.singh at 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 at 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 at 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 at linaro.org>
> + - Jassi Brar <jaswinder.singh at 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
> 


More information about the U-Boot mailing list