| # 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 interfaces base MAC address. |
| additionalProperties: false |
| |
| properties: |
| "#nvmem-cell-cells": |
| description: The first argument is a MAC address offset. |
| const: 1 |
| |
| 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 { |
| #nvmem-cell-cells = <1>; |
| }; |
| }; |
| }; |
| - | |
| 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 { |
| }; |
| }; |
| }; |
| }; |