xref: /linux/Documentation/devicetree/bindings/regulator/palmas-pmic.txt (revision ca55b2fef3a9373fcfc30f82fd26bc7fccbda732)
1* palmas regulator IP block devicetree bindings
2
3Required properties:
4- compatible : Should be from the list
5  ti,twl6035-pmic
6  ti,twl6036-pmic
7  ti,twl6037-pmic
8  ti,tps65913-pmic
9  ti,tps65914-pmic
10  ti,tps65917-pmic
11and also the generic series names
12  ti,palmas-pmic
13- interrupt-parent : The parent interrupt controller which is palmas.
14- interrupts : The interrupt number and the type which can be looked up here:
15	       arch/arm/boot/dts/include/dt-bindings/interrupt-controller/irq.h
16- interrupts-name: The names of the individual interrupts.
17
18Optional properties:
19- ti,ldo6-vibrator : ldo6 is in vibrator mode
20
21Optional nodes:
22- regulators : Must contain a sub-node per regulator from the list below.
23	       Each sub-node should contain the constraints and initialization
24	       information for that regulator. See regulator.txt for a
25	       description of standard properties for these sub-nodes.
26	       Additional custom properties  are listed below.
27
28	       For ti,palmas-pmic - smps12, smps123, smps3 depending on OTP,
29	       smps45, smps457, smps7 depending on variant, smps6, smps[8-9],
30	       smps10_out2, smps10_out1, ldo[1-9], ldoln, ldousb.
31
32	       Optional sub-node properties:
33	       ti,warm-reset - maintain voltage during warm reset(boolean)
34	       ti,roof-floor - This takes as optional argument on platform supporting
35	       the rail from desired external control. If there is no argument then
36	       it will be assume that it is controlled by NSLEEP pin.
37	       The valid value for external pins are:
38			ENABLE1 then 1,
39			ENABLE2 then 2 or
40			NSLEEP then 3.
41	       ti,mode-sleep - mode to adopt in pmic sleep 0 - off, 1 - auto,
42	       2 - eco, 3 - forced pwm
43	       ti,smps-range - OTP has the wrong range set for the hardware so override
44	       0 - low range, 1 - high range.
45
46- ti,system-power-controller: Telling whether or not this pmic is controlling
47			      the system power.
48
49Example:
50
51#include <dt-bindings/interrupt-controller/irq.h>
52
53pmic {
54	compatible = "ti,twl6035-pmic", "ti,palmas-pmic";
55	interrupt-parent = <&palmas>;
56	interrupts = <14 IRQ_TYPE_NONE>;
57	interrupts-name = "short-irq";
58
59	ti,ldo6-vibrator;
60
61	ti,system-power-controller;
62
63	regulators {
64		smps12_reg : smps12 {
65			regulator-name = "smps12";
66			regulator-min-microvolt = < 600000>;
67			regulator-max-microvolt = <1500000>;
68			regulator-always-on;
69			regulator-boot-on;
70			ti,warm-reset;
71			ti,roof-floor = <1>; /* ENABLE1 control */
72			ti,mode-sleep = <0>;
73			ti,smps-range = <1>;
74		};
75
76		ldo1_reg: ldo1 {
77			regulator-name = "ldo1";
78			regulator-min-microvolt = <2800000>;
79			regulator-max-microvolt = <2800000>;
80		};
81	};
82};
83