1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mfd/dlg,da9063.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Dialog DA9063/DA9063L Power Management Integrated Circuit (PMIC)
8
9maintainers:
10  - Steve Twiss <stwiss.opensource@diasemi.com>
11
12description: |
13  For device-tree bindings of other sub-modules refer to the binding documents
14  under the respective sub-system directories.
15
16properties:
17  compatible:
18    enum:
19      - dlg,da9063
20      - dlg,da9063l
21
22  reg:
23    maxItems: 1
24
25  interrupts:
26    maxItems: 1
27
28  interrupt-controller: true
29
30  "#interrupt-cells":
31    const: 2
32
33  dlg,use-sw-pm:
34    type: boolean
35    description:
36      Disable the watchdog during suspend.
37      Only use this option if you can't use the watchdog automatic suspend
38      function during a suspend (see register CONTROL_B).
39
40  watchdog:
41    type: object
42    $ref: /schemas/watchdog/watchdog.yaml#
43    unevaluatedProperties: false
44    properties:
45      compatible:
46        const: dlg,da9063-watchdog
47
48  rtc:
49    type: object
50    $ref: /schemas/rtc/rtc.yaml#
51    unevaluatedProperties: false
52    properties:
53      compatible:
54        const: dlg,da9063-rtc
55
56  onkey:
57    type: object
58    $ref: /schemas/input/input.yaml#
59    unevaluatedProperties: false
60    properties:
61      compatible:
62        const: dlg,da9063-onkey
63
64      dlg,disable-key-power:
65        type: boolean
66        description: |
67          Disable power-down using a long key-press.
68          If this entry does not exist then by default the key-press triggered
69          power down is enabled and the OnKey will support both KEY_POWER and
70          KEY_SLEEP.
71
72  regulators:
73    type: object
74    additionalProperties: false
75    patternProperties:
76      "^(ldo([1-9]|1[01])|bcore([1-2]|s-merged)|b(pro|mem|io|peri)|bmem-bio-merged)$":
77        $ref: /schemas/regulator/regulator.yaml
78        unevaluatedProperties: false
79
80required:
81  - compatible
82  - reg
83  - interrupts
84  - interrupt-controller
85
86additionalProperties: false
87
88examples:
89  - |
90    #include <dt-bindings/interrupt-controller/irq.h>
91    i2c {
92      #address-cells = <1>;
93      #size-cells = <0>;
94      pmic@58 {
95        compatible = "dlg,da9063";
96        reg = <0x58>;
97        #interrupt-cells = <2>;
98        interrupt-parent = <&gpio6>;
99        interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
100        interrupt-controller;
101
102        rtc {
103          compatible = "dlg,da9063-rtc";
104        };
105
106        watchdog {
107          compatible = "dlg,da9063-watchdog";
108        };
109
110        onkey {
111          compatible = "dlg,da9063-onkey";
112          dlg,disable-key-power;
113        };
114
115        regulators {
116          bcore1 {
117            regulator-name = "BCORE1";
118            regulator-min-microvolt = <300000>;
119            regulator-max-microvolt = <1570000>;
120            regulator-min-microamp = <500000>;
121            regulator-max-microamp = <2000000>;
122            regulator-boot-on;
123          };
124          ldo11 {
125            regulator-name = "LDO_11";
126            regulator-min-microvolt = <900000>;
127            regulator-max-microvolt = <3600000>;
128            regulator-boot-on;
129          };
130        };
131      };
132    };
133...
134