GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / mfd / dlg,da9063.yaml
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
7 title: Dialog DA9063/DA9063L Power Management Integrated Circuit (PMIC)
8
9 maintainers:
10   - Steve Twiss <stwiss.opensource@diasemi.com>
11
12 description: |
13   For device-tree bindings of other sub-modules refer to the binding documents
14   under the respective sub-system directories.
15
16 properties:
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
80 required:
81   - compatible
82   - reg
83   - interrupts
84   - interrupt-controller
85
86 additionalProperties: false
87
88 examples:
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 ...