1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mtd/partitions/nvmem-cells.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Nvmem cells
8
9description: |
10  Any partition containing the compatible "nvmem-cells" will register as a
11  nvmem provider.
12  Each direct subnodes represents a nvmem cell following the nvmem binding.
13  Nvmem binding to declare nvmem-cells can be found in:
14  Documentation/devicetree/bindings/nvmem/nvmem.yaml
15
16maintainers:
17  - Ansuel Smith <ansuelsmth@gmail.com>
18
19allOf:
20  - $ref: /schemas/nvmem/nvmem.yaml#
21
22properties:
23  compatible:
24    const: nvmem-cells
25
26required:
27  - compatible
28
29additionalProperties: true
30
31examples:
32  - |
33    partitions {
34      compatible = "fixed-partitions";
35      #address-cells = <1>;
36      #size-cells = <1>;
37
38      /* ... */
39
40      };
41      art: art@1200000 {
42        compatible = "nvmem-cells";
43        reg = <0x1200000 0x0140000>;
44        label = "art";
45        read-only;
46        #address-cells = <1>;
47        #size-cells = <1>;
48
49        macaddr_gmac1: macaddr_gmac1@0 {
50          reg = <0x0 0x6>;
51        };
52
53        macaddr_gmac2: macaddr_gmac2@6 {
54          reg = <0x6 0x6>;
55        };
56
57        pre_cal_24g: pre_cal_24g@1000 {
58          reg = <0x1000 0x2f20>;
59        };
60
61        pre_cal_5g: pre_cal_5g@5000{
62          reg = <0x5000 0x2f20>;
63        };
64      };
65  - |
66    partitions {
67        compatible = "fixed-partitions";
68        #address-cells = <1>;
69        #size-cells = <1>;
70
71        partition@0 {
72            label = "bootloader";
73            reg = <0x000000 0x100000>;
74            read-only;
75        };
76
77        firmware@100000 {
78            compatible = "brcm,trx";
79            label = "firmware";
80            reg = <0x100000 0xe00000>;
81        };
82
83        calibration@f00000 {
84            compatible = "nvmem-cells";
85            label = "calibration";
86            reg = <0xf00000 0x100000>;
87            ranges = <0 0xf00000 0x100000>;
88            #address-cells = <1>;
89            #size-cells = <1>;
90
91            wifi0@0 {
92                reg = <0x000000 0x080000>;
93            };
94
95            wifi1@80000 {
96                reg = <0x080000 0x080000>;
97            };
98        };
99    };
100