1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/nvmem/qcom,spmi-sdam.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm Technologies, Inc. SPMI SDAM DT bindings
8
9maintainers:
10  - Shyam Kumar Thella <sthella@codeaurora.org>
11
12description: |
13  The SDAM provides scratch register space for the PMIC clients. This
14  memory can be used by software to store information or communicate
15  to/from the PBUS.
16
17allOf:
18  - $ref: "nvmem.yaml#"
19
20properties:
21  compatible:
22    enum:
23      - qcom,spmi-sdam
24
25  reg:
26    maxItems: 1
27
28  "#address-cells":
29    const: 1
30
31  "#size-cells":
32    const: 1
33
34  ranges: true
35
36required:
37  - compatible
38  - reg
39  - ranges
40
41patternProperties:
42  "^.*@[0-9a-f]+$":
43    type: object
44
45    properties:
46      reg:
47        maxItems: 1
48        description:
49          Offset and size in bytes within the storage device.
50
51      bits:
52        $ref: /schemas/types.yaml#/definitions/uint32-array
53        maxItems: 1
54        items:
55          items:
56            - minimum: 0
57              maximum: 7
58              description:
59                Offset in bit within the address range specified by reg.
60            - minimum: 1
61              description:
62                Size in bit within the address range specified by reg.
63
64    required:
65      - reg
66
67    additionalProperties: false
68
69examples:
70  - |
71      sdam_1: nvram@b000 {
72          #address-cells = <1>;
73          #size-cells = <1>;
74          compatible = "qcom,spmi-sdam";
75          reg = <0xb000 0x100>;
76          ranges = <0 0xb000 0x100>;
77
78          /* Data cells */
79          restart_reason: restart@50 {
80              reg = <0x50 0x1>;
81              bits = <6 2>;
82          };
83      };
84...
85