GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / nvmem / u-boot,env.yaml
1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/nvmem/u-boot,env.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: U-Boot environment variables
8
9 description: |
10   U-Boot uses environment variables to store device parameters and
11   configuration. They may be used for booting process, setup or keeping end user
12   info.
13
14   Data is stored using U-Boot specific formats (variant specific header and NUL
15   separated key-value pairs).
16
17   Environment data can be stored on various storage entities, e.g.:
18   1. Raw flash partition
19   2. UBI volume
20
21   This binding allows marking storage device (as containing env data) and
22   specifying used format.
23
24   Right now only flash partition case is covered but it may be extended to e.g.
25   UBI volumes in the future.
26
27   Variables can be defined as NVMEM device subnodes.
28
29 maintainers:
30   - Rafał Miłecki <rafal@milecki.pl>
31
32 properties:
33   compatible:
34     oneOf:
35       - description: A standalone env data block
36         const: u-boot,env
37       - description: Two redundant blocks with active one flagged
38         const: u-boot,env-redundant-bool
39       - description: Two redundant blocks with active having higher counter
40         const: u-boot,env-redundant-count
41
42   reg:
43     maxItems: 1
44
45   bootcmd:
46     type: object
47     description: Command to use for automatic booting
48
49   ethaddr:
50     type: object
51     description: Ethernet interface's MAC address
52
53 additionalProperties: false
54
55 examples:
56   - |
57     partitions {
58         compatible = "fixed-partitions";
59         #address-cells = <1>;
60         #size-cells = <1>;
61
62         partition@0 {
63             reg = <0x0 0x40000>;
64             label = "u-boot";
65             read-only;
66         };
67
68         env: partition@40000 {
69             compatible = "u-boot,env";
70             reg = <0x40000 0x10000>;
71
72             mac: ethaddr {
73             };
74         };
75     };