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