xref: /freebsd/sys/contrib/device-tree/Bindings/nvmem/brcm,nvram.yaml (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
12eb4d8dcSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
22eb4d8dcSEmmanuel Vadot%YAML 1.2
32eb4d8dcSEmmanuel Vadot---
42eb4d8dcSEmmanuel Vadot$id: http://devicetree.org/schemas/nvmem/brcm,nvram.yaml#
52eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
62eb4d8dcSEmmanuel Vadot
72eb4d8dcSEmmanuel Vadottitle: Broadcom's NVRAM
82eb4d8dcSEmmanuel Vadot
92eb4d8dcSEmmanuel Vadotdescription: |
102eb4d8dcSEmmanuel Vadot  Broadcom's NVRAM is a structure containing device specific environment
112eb4d8dcSEmmanuel Vadot  variables. It is used for storing device configuration, booting parameters
122eb4d8dcSEmmanuel Vadot  and calibration data.
132eb4d8dcSEmmanuel Vadot
142eb4d8dcSEmmanuel Vadot  NVRAM can be accessed on Broadcom BCM47xx MIPS and Northstar ARM Cortex-A9
152eb4d8dcSEmmanuel Vadot  devices usiong I/O mapped memory.
162eb4d8dcSEmmanuel Vadot
17c9ccf3a3SEmmanuel Vadot  NVRAM variables can be defined as NVMEM device subnodes.
18c9ccf3a3SEmmanuel Vadot
192eb4d8dcSEmmanuel Vadotmaintainers:
202eb4d8dcSEmmanuel Vadot  - Rafał Miłecki <rafal@milecki.pl>
212eb4d8dcSEmmanuel Vadot
222eb4d8dcSEmmanuel VadotallOf:
23fac71e4eSEmmanuel Vadot  - $ref: nvmem.yaml#
242eb4d8dcSEmmanuel Vadot
252eb4d8dcSEmmanuel Vadotproperties:
262eb4d8dcSEmmanuel Vadot  compatible:
272eb4d8dcSEmmanuel Vadot    const: brcm,nvram
282eb4d8dcSEmmanuel Vadot
29e67e8565SEmmanuel Vadot  reg:
30e67e8565SEmmanuel Vadot    maxItems: 1
31e67e8565SEmmanuel Vadot
32c9ccf3a3SEmmanuel Vadot  board_id:
33c9ccf3a3SEmmanuel Vadot    type: object
34c9ccf3a3SEmmanuel Vadot    description: Board identification name
35c9ccf3a3SEmmanuel Vadot
36c9ccf3a3SEmmanuel Vadot  et0macaddr:
37c9ccf3a3SEmmanuel Vadot    type: object
38c9ccf3a3SEmmanuel Vadot    description: First Ethernet interface's MAC address
39*f126890aSEmmanuel Vadot    properties:
40*f126890aSEmmanuel Vadot      "#nvmem-cell-cells":
41*f126890aSEmmanuel Vadot        description: The first argument is a MAC address offset.
42*f126890aSEmmanuel Vadot        const: 1
43*f126890aSEmmanuel Vadot    additionalProperties: false
44c9ccf3a3SEmmanuel Vadot
45c9ccf3a3SEmmanuel Vadot  et1macaddr:
46c9ccf3a3SEmmanuel Vadot    type: object
47c9ccf3a3SEmmanuel Vadot    description: Second Ethernet interface's MAC address
48*f126890aSEmmanuel Vadot    properties:
49*f126890aSEmmanuel Vadot      "#nvmem-cell-cells":
50*f126890aSEmmanuel Vadot        description: The first argument is a MAC address offset.
51*f126890aSEmmanuel Vadot        const: 1
52*f126890aSEmmanuel Vadot    additionalProperties: false
53c9ccf3a3SEmmanuel Vadot
54c9ccf3a3SEmmanuel Vadot  et2macaddr:
55c9ccf3a3SEmmanuel Vadot    type: object
56c9ccf3a3SEmmanuel Vadot    description: Third Ethernet interface's MAC address
57*f126890aSEmmanuel Vadot    properties:
58*f126890aSEmmanuel Vadot      "#nvmem-cell-cells":
59*f126890aSEmmanuel Vadot        description: The first argument is a MAC address offset.
60*f126890aSEmmanuel Vadot        const: 1
61*f126890aSEmmanuel Vadot    additionalProperties: false
62c9ccf3a3SEmmanuel Vadot
632eb4d8dcSEmmanuel VadotunevaluatedProperties: false
642eb4d8dcSEmmanuel Vadot
652eb4d8dcSEmmanuel Vadotexamples:
662eb4d8dcSEmmanuel Vadot  - |
672eb4d8dcSEmmanuel Vadot    nvram@1eff0000 {
682eb4d8dcSEmmanuel Vadot        compatible = "brcm,nvram";
692eb4d8dcSEmmanuel Vadot        reg = <0x1eff0000 0x10000>;
70c9ccf3a3SEmmanuel Vadot
71c9ccf3a3SEmmanuel Vadot        mac: et0macaddr {
72c9ccf3a3SEmmanuel Vadot        };
732eb4d8dcSEmmanuel Vadot    };
74