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