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