xref: /freebsd/sys/contrib/device-tree/Bindings/regulator/samsung,s2mps11.txt (revision b51f459a2098622c31ed54f5c1bf0e03efce403b)
1Binding for Samsung S2M family regulator block
2==============================================
3
4This is a part of device tree bindings for S2M family multi-function devices.
5More information can be found in bindings/mfd/sec-core.txt file.
6
7The S2MPS11/13/14/15 and S2MPU02 devices provide buck and LDO regulators.
8
9To register these with regulator framework instantiate under main device node
10a sub-node named "regulators" with more sub-nodes for each regulator using the
11common regulator binding documented in:
12 - Documentation/devicetree/bindings/regulator/regulator.txt
13
14
15Names of regulators supported by different devices:
16	- LDOn
17		  - valid values for n are:
18			- S2MPS11: 1 to 38
19			- S2MPS13: 1 to 40
20			- S2MPS14: 1 to 25
21			- S2MPS15: 1 to 27
22			- S2MPU02: 1 to 28
23		  - Example: LDO1, LDO2, LDO28
24	- BUCKn
25		  - valid values for n are:
26			- S2MPS11: 1 to 10
27			- S2MPS13: 1 to 10
28			- S2MPS14: 1 to 5
29			- S2MPS15: 1 to 10
30			- S2MPU02: 1 to 7
31		  - Example: BUCK1, BUCK2, BUCK9
32Note: The 'n' in LDOn and BUCKn represents the LDO or BUCK number
33as per the datasheet of device.
34
35
36Optional properties of the nodes under "regulators" sub-node:
37 - regulator-ramp-delay: ramp delay in uV/us. May be 6250, 12500,
38   25000 (default) or 50000.
39
40   Additionally S2MPS11 supports disabling ramp delay for BUCK{2,3,4,6}
41   by setting it to <0>.
42
43   Note: On S2MPS11 some bucks share the ramp rate setting i.e. same ramp value
44   will be set for a particular group of bucks so provide the same
45   regulator-ramp-delay value for them.
46   Groups sharing ramp rate:
47    - buck{1,6},
48    - buck{3,4},
49    - buck{7,8,10}.
50
51 - samsung,ext-control-gpios: On S2MPS14 the LDO10, LDO11 and LDO12 can be
52   configured to external control over GPIO. To turn this feature on this
53   property must be added to the regulator sub-node:
54    - samsung,ext-control-gpios: GPIO specifier for one GPIO
55                                 controlling this regulator (enable/disable)
56  Example:
57	LDO12 {
58		regulator-name = "V_EMMC_2.8V";
59		regulator-min-microvolt = <2800000>;
60		regulator-max-microvolt = <2800000>;
61		samsung,ext-control-gpios = <&gpk0 2 0>;
62	};
63
64
65Example:
66
67	s2mps11_pmic@66 {
68		compatible = "samsung,s2mps11-pmic";
69		reg = <0x66>;
70
71		regulators {
72			ldo1_reg: LDO1 {
73				regulator-name = "VDD_ABB_3.3V";
74				regulator-min-microvolt = <3300000>;
75				regulator-max-microvolt = <3300000>;
76			};
77
78			ldo2_reg: LDO2 {
79				regulator-name = "VDD_ALIVE_1.1V";
80				regulator-min-microvolt = <1100000>;
81				regulator-max-microvolt = <1100000>;
82				regulator-always-on;
83			};
84
85			buck1_reg: BUCK1 {
86				regulator-name = "vdd_mif";
87				regulator-min-microvolt = <950000>;
88				regulator-max-microvolt = <1350000>;
89				regulator-always-on;
90				regulator-boot-on;
91			};
92
93			buck2_reg: BUCK2 {
94				regulator-name = "vdd_arm";
95				regulator-min-microvolt = <950000>;
96				regulator-max-microvolt = <1350000>;
97				regulator-always-on;
98				regulator-boot-on;
99				regulator-ramp-delay = <50000>;
100			};
101		};
102	};
103