Linux 6.9-rc1
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / mtd / partitions / nvmem-cells.yaml
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
7 title: Nvmem cells
8
9 description: |
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
16 maintainers:
17   - Ansuel Smith <ansuelsmth@gmail.com>
18
19 allOf:
20   - $ref: /schemas/mtd/partitions/partition.yaml#
21   - $ref: /schemas/nvmem/nvmem.yaml#
22   - $ref: /schemas/nvmem/nvmem-deprecated-cells.yaml#
23
24 properties:
25   compatible:
26     const: nvmem-cells
27
28 required:
29   - compatible
30
31 unevaluatedProperties: false
32
33 examples:
34   - |
35     partitions {
36       compatible = "fixed-partitions";
37       #address-cells = <1>;
38       #size-cells = <1>;
39
40       /* ... */
41
42       };
43       art: art@1200000 {
44         compatible = "nvmem-cells";
45         reg = <0x1200000 0x0140000>;
46         label = "art";
47         read-only;
48         #address-cells = <1>;
49         #size-cells = <1>;
50
51         macaddr_gmac1: macaddr_gmac1@0 {
52           reg = <0x0 0x6>;
53         };
54
55         macaddr_gmac2: macaddr_gmac2@6 {
56           reg = <0x6 0x6>;
57         };
58
59         pre_cal_24g: pre_cal_24g@1000 {
60           reg = <0x1000 0x2f20>;
61         };
62
63         pre_cal_5g: pre_cal_5g@5000{
64           reg = <0x5000 0x2f20>;
65         };
66       };
67   - |
68     partitions {
69         compatible = "fixed-partitions";
70         #address-cells = <1>;
71         #size-cells = <1>;
72
73         partition@0 {
74             label = "bootloader";
75             reg = <0x000000 0x100000>;
76             read-only;
77         };
78
79         firmware@100000 {
80             compatible = "brcm,trx";
81             label = "firmware";
82             reg = <0x100000 0xe00000>;
83         };
84
85         calibration@f00000 {
86             compatible = "nvmem-cells";
87             label = "calibration";
88             reg = <0xf00000 0x100000>;
89             #address-cells = <1>;
90             #size-cells = <1>;
91
92             wifi0@0 {
93                 reg = <0x000000 0x080000>;
94             };
95
96             wifi1@80000 {
97                 reg = <0x080000 0x080000>;
98             };
99         };
100     };