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