arm64: dts: qcom: sm8550: add TRNG node
[linux-modified.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   Using regulator-{uv,ov}-{warn,error,protection}-microvolt requires special
16   handling: First, when GP_FB2 is used, it must be ensured that there is no
17   moment where all voltage monitors are disabled. Next, as da9063 only supports
18   UV *and* OV monitoring, both must be set to the same severity and value
19   (0: disable, 1: enable).
20
21 properties:
22   compatible:
23     enum:
24       - dlg,da9063
25       - dlg,da9063l
26
27   reg:
28     maxItems: 1
29
30   interrupts:
31     maxItems: 1
32
33   interrupt-controller: true
34
35   "#interrupt-cells":
36     const: 2
37
38   dlg,use-sw-pm:
39     type: boolean
40     description:
41       Disable the watchdog during suspend.
42       Only use this option if you can't use the watchdog automatic suspend
43       function during a suspend (see register CONTROL_B).
44
45   watchdog:
46     type: object
47     $ref: /schemas/watchdog/watchdog.yaml#
48     unevaluatedProperties: false
49     properties:
50       compatible:
51         const: dlg,da9063-watchdog
52
53   rtc:
54     type: object
55     $ref: /schemas/rtc/rtc.yaml#
56     unevaluatedProperties: false
57     properties:
58       compatible:
59         const: dlg,da9063-rtc
60
61   onkey:
62     type: object
63     $ref: /schemas/input/input.yaml#
64     unevaluatedProperties: false
65     properties:
66       compatible:
67         const: dlg,da9063-onkey
68
69       dlg,disable-key-power:
70         type: boolean
71         description: |
72           Disable power-down using a long key-press.
73           If this entry does not exist then by default the key-press triggered
74           power down is enabled and the OnKey will support both KEY_POWER and
75           KEY_SLEEP.
76
77   regulators:
78     type: object
79     additionalProperties: false
80     patternProperties:
81       "^(ldo([1-9]|1[01])|bcore([1-2]|s-merged)|b(pro|mem|io|peri)|bmem-bio-merged)$":
82         $ref: /schemas/regulator/regulator.yaml
83         unevaluatedProperties: false
84
85 required:
86   - compatible
87   - reg
88   - interrupts
89   - interrupt-controller
90
91 additionalProperties: false
92
93 examples:
94   - |
95     #include <dt-bindings/interrupt-controller/irq.h>
96     i2c {
97       #address-cells = <1>;
98       #size-cells = <0>;
99       pmic@58 {
100         compatible = "dlg,da9063";
101         reg = <0x58>;
102         #interrupt-cells = <2>;
103         interrupt-parent = <&gpio6>;
104         interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
105         interrupt-controller;
106
107         rtc {
108           compatible = "dlg,da9063-rtc";
109         };
110
111         watchdog {
112           compatible = "dlg,da9063-watchdog";
113         };
114
115         onkey {
116           compatible = "dlg,da9063-onkey";
117           dlg,disable-key-power;
118         };
119
120         regulators {
121           bcore1 {
122             regulator-name = "BCORE1";
123             regulator-min-microvolt = <300000>;
124             regulator-max-microvolt = <1570000>;
125             regulator-min-microamp = <500000>;
126             regulator-max-microamp = <2000000>;
127             regulator-boot-on;
128           };
129           ldo6 {
130             /* UNUSED */
131             regulator-name = "LDO_6";
132             regulator-uv-protection-microvolt = <0>;
133             regulator-ov-protection-microvolt = <0>;
134           };
135           ldo11 {
136             regulator-name = "LDO_11";
137             regulator-min-microvolt = <900000>;
138             regulator-max-microvolt = <900000>;
139             regulator-uv-protection-microvolt = <1>;
140             regulator-ov-protection-microvolt = <1>;
141             regulator-always-on;
142           };
143         };
144       };
145     };
146 ...