# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/nvmem/u-boot,env.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: U-Boot environment variables

description: |
  U-Boot uses environment variables to store device parameters and
  configuration. They may be used for booting process, setup or keeping end user
  info.

  Data is stored using U-Boot specific formats (variant specific header and NUL
  separated key-value pairs).

  Environment data can be stored on various storage entities, e.g.:
  1. Raw flash partition
  2. UBI volume

  This binding allows marking storage device (as containing env data) and
  specifying used format.

  Right now only flash partition case is covered but it may be extended to e.g.
  UBI volumes in the future.

  Variables can be defined as NVMEM device subnodes.

maintainers:
  - Rafał Miłecki <rafal@milecki.pl>

properties:
  compatible:
    oneOf:
      - description: A standalone env data block
        const: u-boot,env
      - description: Two redundant blocks with active one flagged
        const: u-boot,env-redundant-bool
      - description: Two redundant blocks with active having higher counter
        const: u-boot,env-redundant-count
      - description: Broadcom's variant with custom header
        const: brcm,env

  reg:
    maxItems: 1

  bootcmd:
    type: object
    description: Command to use for automatic booting

  ethaddr:
    type: object
    description: Ethernet interface's MAC address

additionalProperties: false

examples:
  - |
    partitions {
        compatible = "fixed-partitions";
        #address-cells = <1>;
        #size-cells = <1>;

        partition@0 {
            reg = <0x0 0x40000>;
            label = "u-boot";
            read-only;
        };

        env: partition@40000 {
            compatible = "u-boot,env";
            reg = <0x40000 0x10000>;

            mac: ethaddr {
            };
        };
    };
  - |
    partitions {
        compatible = "fixed-partitions";
        #address-cells = <1>;
        #size-cells = <1>;

        partition@0 {
            reg = <0x0 0x100000>;
            compatible = "brcm,u-boot";
            label = "u-boot";

            partition-u-boot-env {
                compatible = "brcm,env";

                ethaddr {
                };
            };
        };
    };
