xref: /linux/Documentation/devicetree/bindings/nvmem/layouts/fixed-layout.yaml (revision 8e92c9902ff11a1c2aab229a3d7d4c1d7e5b698f)
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