15db1c2dbSRafał Miłecki# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 25db1c2dbSRafał Miłecki%YAML 1.2 35db1c2dbSRafał Miłecki--- 4*2fcea44eSRafał Miłecki$id: http://devicetree.org/schemas/nvmem/layouts/u-boot,env.yaml# 55db1c2dbSRafał Miłecki$schema: http://devicetree.org/meta-schemas/core.yaml# 65db1c2dbSRafał Miłecki 7*2fcea44eSRafał Miłeckititle: U-Boot environment variables layout 85db1c2dbSRafał Miłecki 95db1c2dbSRafał Miłeckidescription: | 105db1c2dbSRafał Miłecki U-Boot uses environment variables to store device parameters and 115db1c2dbSRafał Miłecki configuration. They may be used for booting process, setup or keeping end user 125db1c2dbSRafał Miłecki info. 135db1c2dbSRafał Miłecki 145db1c2dbSRafał Miłecki Data is stored using U-Boot specific formats (variant specific header and NUL 155db1c2dbSRafał Miłecki separated key-value pairs). 165db1c2dbSRafał Miłecki 175db1c2dbSRafał Miłecki Environment data can be stored on various storage entities, e.g.: 185db1c2dbSRafał Miłecki 1. Raw flash partition 195db1c2dbSRafał Miłecki 2. UBI volume 205db1c2dbSRafał Miłecki 215db1c2dbSRafał Miłecki This binding allows marking storage device (as containing env data) and 225db1c2dbSRafał Miłecki specifying used format. 235db1c2dbSRafał Miłecki 24a607a850SRafał Miłecki Variables can be defined as NVMEM device subnodes. 25a607a850SRafał Miłecki 265db1c2dbSRafał Miłeckimaintainers: 275db1c2dbSRafał Miłecki - Rafał Miłecki <rafal@milecki.pl> 285db1c2dbSRafał Miłecki 295db1c2dbSRafał Miłeckiproperties: 305db1c2dbSRafał Miłecki compatible: 315db1c2dbSRafał Miłecki oneOf: 325db1c2dbSRafał Miłecki - description: A standalone env data block 335db1c2dbSRafał Miłecki const: u-boot,env 345db1c2dbSRafał Miłecki - description: Two redundant blocks with active one flagged 355db1c2dbSRafał Miłecki const: u-boot,env-redundant-bool 365db1c2dbSRafał Miłecki - description: Two redundant blocks with active having higher counter 375db1c2dbSRafał Miłecki const: u-boot,env-redundant-count 386b0584c1SRafał Miłecki - description: Broadcom's variant with custom header 396b0584c1SRafał Miłecki const: brcm,env 405db1c2dbSRafał Miłecki 415db1c2dbSRafał Miłecki reg: 42*2fcea44eSRafał Miłecki description: Partition offset and size for env on top of MTD 435db1c2dbSRafał Miłecki maxItems: 1 445db1c2dbSRafał Miłecki 45a607a850SRafał Miłecki bootcmd: 46a607a850SRafał Miłecki type: object 47a607a850SRafał Miłecki description: Command to use for automatic booting 48a607a850SRafał Miłecki 49a607a850SRafał Miłecki ethaddr: 50a607a850SRafał Miłecki type: object 517e2805c2SRafał Miłecki description: Ethernet interfaces base MAC address. 52716a8027SRob Herring additionalProperties: false 53716a8027SRob Herring 547e2805c2SRafał Miłecki properties: 557e2805c2SRafał Miłecki "#nvmem-cell-cells": 567e2805c2SRafał Miłecki description: The first argument is a MAC address offset. 577e2805c2SRafał Miłecki const: 1 58a607a850SRafał Miłecki 59*2fcea44eSRafał MiłeckiallOf: 60*2fcea44eSRafał Miłecki - if: 61*2fcea44eSRafał Miłecki properties: 62*2fcea44eSRafał Miłecki $nodename: 63*2fcea44eSRafał Miłecki not: 64*2fcea44eSRafał Miłecki contains: 65*2fcea44eSRafał Miłecki pattern: "^partition@[0-9a-f]+$" 66*2fcea44eSRafał Miłecki then: 67*2fcea44eSRafał Miłecki properties: 68*2fcea44eSRafał Miłecki reg: false 69*2fcea44eSRafał Miłecki 705db1c2dbSRafał MiłeckiadditionalProperties: false 715db1c2dbSRafał Miłecki 725db1c2dbSRafał Miłeckiexamples: 735db1c2dbSRafał Miłecki - | 745db1c2dbSRafał Miłecki partitions { 755db1c2dbSRafał Miłecki compatible = "fixed-partitions"; 765db1c2dbSRafał Miłecki #address-cells = <1>; 775db1c2dbSRafał Miłecki #size-cells = <1>; 785db1c2dbSRafał Miłecki 795db1c2dbSRafał Miłecki partition@0 { 805db1c2dbSRafał Miłecki reg = <0x0 0x40000>; 815db1c2dbSRafał Miłecki label = "u-boot"; 825db1c2dbSRafał Miłecki read-only; 835db1c2dbSRafał Miłecki }; 845db1c2dbSRafał Miłecki 855db1c2dbSRafał Miłecki env: partition@40000 { 865db1c2dbSRafał Miłecki compatible = "u-boot,env"; 875db1c2dbSRafał Miłecki reg = <0x40000 0x10000>; 88a607a850SRafał Miłecki 89a607a850SRafał Miłecki mac: ethaddr { 907e2805c2SRafał Miłecki #nvmem-cell-cells = <1>; 91a607a850SRafał Miłecki }; 925db1c2dbSRafał Miłecki }; 935db1c2dbSRafał Miłecki }; 946b0584c1SRafał Miłecki - | 956b0584c1SRafał Miłecki partitions { 966b0584c1SRafał Miłecki compatible = "fixed-partitions"; 976b0584c1SRafał Miłecki #address-cells = <1>; 986b0584c1SRafał Miłecki #size-cells = <1>; 996b0584c1SRafał Miłecki 1006b0584c1SRafał Miłecki partition@0 { 1016b0584c1SRafał Miłecki reg = <0x0 0x100000>; 1026b0584c1SRafał Miłecki compatible = "brcm,u-boot"; 1036b0584c1SRafał Miłecki label = "u-boot"; 1046b0584c1SRafał Miłecki 1056b0584c1SRafał Miłecki partition-u-boot-env { 1066b0584c1SRafał Miłecki compatible = "brcm,env"; 1076b0584c1SRafał Miłecki 1086b0584c1SRafał Miłecki ethaddr { 1096b0584c1SRafał Miłecki }; 1106b0584c1SRafał Miłecki }; 1116b0584c1SRafał Miłecki }; 1126b0584c1SRafał Miłecki }; 113*2fcea44eSRafał Miłecki - | 114*2fcea44eSRafał Miłecki partition@0 { 115*2fcea44eSRafał Miłecki reg = <0x0 0x100000>; 116*2fcea44eSRafał Miłecki label = "ubi"; 117*2fcea44eSRafał Miłecki compatible = "linux,ubi"; 118*2fcea44eSRafał Miłecki 119*2fcea44eSRafał Miłecki volumes { 120*2fcea44eSRafał Miłecki ubi-volume-u-boot-env { 121*2fcea44eSRafał Miłecki volname = "env"; 122*2fcea44eSRafał Miłecki 123*2fcea44eSRafał Miłecki nvmem-layout { 124*2fcea44eSRafał Miłecki compatible = "u-boot,env"; 125*2fcea44eSRafał Miłecki 126*2fcea44eSRafał Miłecki ethaddr { 127*2fcea44eSRafał Miłecki #nvmem-cell-cells = <1>; 128*2fcea44eSRafał Miłecki }; 129*2fcea44eSRafał Miłecki }; 130*2fcea44eSRafał Miłecki }; 131*2fcea44eSRafał Miłecki }; 132*2fcea44eSRafał Miłecki }; 133