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