Merge tag 'modules-for-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu...
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / mfd / tps65910.txt
1 TPS65910 Power Management Integrated Circuit
2
3 Required properties:
4 - compatible: "ti,tps65910" or "ti,tps65911"
5 - reg: I2C slave address
6 - interrupts: the interrupt outputs of the controller
7 - #gpio-cells: number of cells to describe a GPIO, this should be 2.
8   The first cell is the GPIO number.
9   The second cell is used to specify additional options <unused>.
10 - gpio-controller: mark the device as a GPIO controller
11 - #interrupt-cells: the number of cells to describe an IRQ, this should be 2.
12   The first cell is the IRQ number.
13   The second cell is the flags, encoded as the trigger masks from
14   Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
15 - regulators: This is the list of child nodes that specify the regulator
16   initialization data for defined regulators. Not all regulators for the given
17   device need to be present. The definition for each of these nodes is defined
18   using the standard binding for regulators found at
19   Documentation/devicetree/bindings/regulator/regulator.txt.
20   The regulator is matched with the regulator-compatible.
21
22   The valid regulator-compatible values are:
23   tps65910: vrtc, vio, vdd1, vdd2, vdd3, vdig1, vdig2, vpll, vdac, vaux1,
24             vaux2, vaux33, vmmc, vbb
25   tps65911: vrtc, vio, vdd1, vdd3, vddctrl, ldo1, ldo2, ldo3, ldo4, ldo5,
26             ldo6, ldo7, ldo8
27
28 - xxx-supply: Input voltage supply regulator.
29   These entries are require if regulators are enabled for a device. Missing of these
30   properties can cause the regulator registration fails.
31   If some of input supply is powered through battery or always-on supply then
32   also it is require to have these parameters with proper node handle of always
33   on power supply.
34   tps65910:
35         vcc1-supply: VDD1 input.
36         vcc2-supply: VDD2 input.
37         vcc3-supply: VAUX33 and VMMC input.
38         vcc4-supply: VAUX1 and VAUX2 input.
39         vcc5-supply: VPLL and VDAC input.
40         vcc6-supply: VDIG1 and VDIG2 input.
41         vcc7-supply: VRTC and VBB input.
42         vccio-supply: VIO input.
43   tps65911:
44         vcc1-supply: VDD1 input.
45         vcc2-supply: VDD2 input.
46         vcc3-supply: LDO6, LDO7 and LDO8 input.
47         vcc4-supply: LDO5 input.
48         vcc5-supply: LDO3 and LDO4 input.
49         vcc6-supply: LDO1 and LDO2 input.
50         vcc7-supply: VRTC input.
51         vccio-supply: VIO input.
52
53 Optional properties:
54 - ti,vmbch-threshold: (tps65911) main battery charged threshold
55   comparator. (see VMBCH_VSEL in TPS65910 datasheet)
56 - ti,vmbch2-threshold: (tps65911) main battery discharged threshold
57   comparator. (see VMBCH_VSEL in TPS65910 datasheet)
58 - ti,en-ck32k-xtal: enable external 32-kHz crystal oscillator (see CK32K_CTRL
59   in TPS6591X datasheet)
60 - ti,en-gpio-sleep: enable sleep control for gpios
61   There should be 9 entries here, one for each gpio.
62 - ti,system-power-controller: Telling whether or not this pmic is controlling
63   the system power.
64 - ti,sleep-enable: Enable SLEEP state.
65 - ti,sleep-keep-therm: Keep thermal monitoring on in sleep state.
66 - ti,sleep-keep-ck32k: Keep the 32KHz clock output on in sleep state.
67 - ti,sleep-keep-hsclk: Keep high speed internal clock on in sleep state.
68
69 Regulator Optional properties:
70 - ti,regulator-ext-sleep-control: enable external sleep
71   control through external inputs [0 (not enabled), 1 (EN1), 2 (EN2) or 4(EN3)]
72   If this property is not defined, it defaults to 0 (not enabled).
73
74 Example:
75
76         pmu: tps65910@d2 {
77                 compatible = "ti,tps65910";
78                 reg = <0xd2>;
79                 interrupt-parent = <&intc>;
80                 interrupts = < 0 118 0x04 >;
81
82                 #gpio-cells = <2>;
83                 gpio-controller;
84
85                 #interrupt-cells = <2>;
86                 interrupt-controller;
87
88                 ti,system-power-controller;
89
90                 ti,vmbch-threshold = 0;
91                 ti,vmbch2-threshold = 0;
92                 ti,en-ck32k-xtal;
93                 ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>;
94
95                 vcc1-supply = <&reg_parent>;
96                 vcc2-supply = <&some_reg>;
97                 vcc3-supply = <...>;
98                 vcc4-supply = <...>;
99                 vcc5-supply = <...>;
100                 vcc6-supply = <...>;
101                 vcc7-supply = <...>;
102                 vccio-supply = <...>;
103
104                 regulators {
105                         #address-cells = <1>;
106                         #size-cells = <0>;
107
108                         vdd1_reg: regulator@0 {
109                                 regulator-compatible = "vdd1";
110                                 reg = <0>;
111                                 regulator-min-microvolt = < 600000>;
112                                 regulator-max-microvolt = <1500000>;
113                                 regulator-always-on;
114                                 regulator-boot-on;
115                                 ti,regulator-ext-sleep-control = <0>;
116                         };
117                         vdd2_reg: regulator@1 {
118                                 regulator-compatible = "vdd2";
119                                 reg = <1>;
120                                 regulator-min-microvolt = < 600000>;
121                                 regulator-max-microvolt = <1500000>;
122                                 regulator-always-on;
123                                 regulator-boot-on;
124                                 ti,regulator-ext-sleep-control = <4>;
125                         };
126                         vddctrl_reg: regulator@2 {
127                                 regulator-compatible = "vddctrl";
128                                 reg = <2>;
129                                 regulator-min-microvolt = < 600000>;
130                                 regulator-max-microvolt = <1400000>;
131                                 regulator-always-on;
132                                 regulator-boot-on;
133                                 ti,regulator-ext-sleep-control = <0>;
134                         };
135                         vio_reg: regulator@3 {
136                                 regulator-compatible = "vio";
137                                 reg = <3>;
138                                 regulator-min-microvolt = <1500000>;
139                                 regulator-max-microvolt = <1800000>;
140                                 regulator-always-on;
141                                 regulator-boot-on;
142                                 ti,regulator-ext-sleep-control = <1>;
143                         };
144                         ldo1_reg: regulator@4 {
145                                 regulator-compatible = "ldo1";
146                                 reg = <4>;
147                                 regulator-min-microvolt = <1000000>;
148                                 regulator-max-microvolt = <3300000>;
149                                 ti,regulator-ext-sleep-control = <0>;
150                         };
151                         ldo2_reg: regulator@5 {
152                                 regulator-compatible = "ldo2";
153                                 reg = <5>;
154                                 regulator-min-microvolt = <1050000>;
155                                 regulator-max-microvolt = <1050000>;
156                                 ti,regulator-ext-sleep-control = <0>;
157                         };
158                         ldo3_reg: regulator@6 {
159                                 regulator-compatible = "ldo3";
160                                 reg = <6>;
161                                 regulator-min-microvolt = <1000000>;
162                                 regulator-max-microvolt = <3300000>;
163                                 ti,regulator-ext-sleep-control = <0>;
164                         };
165                         ldo4_reg: regulator@7 {
166                                 regulator-compatible = "ldo4";
167                                 reg = <7>;
168                                 regulator-min-microvolt = <1000000>;
169                                 regulator-max-microvolt = <3300000>;
170                                 regulator-always-on;
171                                 ti,regulator-ext-sleep-control = <0>;
172                         };
173                         ldo5_reg: regulator@8 {
174                                 regulator-compatible = "ldo5";
175                                 reg = <8>;
176                                 regulator-min-microvolt = <1000000>;
177                                 regulator-max-microvolt = <3300000>;
178                                 ti,regulator-ext-sleep-control = <0>;
179                         };
180                         ldo6_reg: regulator@9 {
181                                 regulator-compatible = "ldo6";
182                                 reg = <9>;
183                                 regulator-min-microvolt = <1200000>;
184                                 regulator-max-microvolt = <1200000>;
185                                 ti,regulator-ext-sleep-control = <0>;
186                         };
187                         ldo7_reg: regulator@10 {
188                                 regulator-compatible = "ldo7";
189                                 reg = <10>;
190                                 regulator-min-microvolt = <1200000>;
191                                 regulator-max-microvolt = <1200000>;
192                                 regulator-always-on;
193                                 regulator-boot-on;
194                                 ti,regulator-ext-sleep-control = <1>;
195                         };
196                         ldo8_reg: regulator@11 {
197                                 regulator-compatible = "ldo8";
198                                 reg = <11>;
199                                 regulator-min-microvolt = <1000000>;
200                                 regulator-max-microvolt = <3300000>;
201                                 regulator-always-on;
202                                 ti,regulator-ext-sleep-control = <1>;
203                         };
204                 };
205         };