xref: /linux/Documentation/devicetree/bindings/nvmem/layouts/fixed-layout.yaml (revision ee628d9cc8d5b96fdceeb270cf662efc4f85f2b6)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/nvmem/layouts/fixed-layout.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NVMEM layout for fixed NVMEM cells
8
9description:
10  Many NVMEM devices have hardcoded cells layout (offset and size of defined
11  NVMEM content doesn't change).
12
13  This binding allows defining such NVMEM layout with its cells. It can be used
14  on top of any NVMEM device.
15
16maintainers:
17  - Rafał Miłecki <rafal@milecki.pl>
18
19properties:
20  compatible:
21    const: fixed-layout
22
23  "#address-cells":
24    const: 1
25
26  "#size-cells":
27    const: 1
28
29patternProperties:
30  "@[a-f0-9]+(,[0-7])?$":
31    type: object
32    $ref: fixed-cell.yaml
33    unevaluatedProperties: false
34
35required:
36  - compatible
37
38additionalProperties: false
39
40examples:
41  - |
42    nvmem-layout {
43        compatible = "fixed-layout";
44        #address-cells = <1>;
45        #size-cells = <1>;
46
47        mac@100 {
48            compatible = "mac-base";
49            reg = <0x100 0x6>;
50            #nvmem-cell-cells = <1>;
51        };
52
53        mac@110 {
54            compatible = "mac-base";
55            reg = <0x110 0x11>;
56            #nvmem-cell-cells = <1>;
57        };
58
59        calibration@4000 {
60            reg = <0x4000 0x100>;
61        };
62    };
63