]>
Commit | Line | Data |
---|---|---|
8f446e6f RN |
1 | Voltage/Current Regulators |
2 | ||
3 | Optional properties: | |
4 | - regulator-name: A string used as a descriptive name for regulator outputs | |
5 | - regulator-min-microvolt: smallest voltage consumers may set | |
6 | - regulator-max-microvolt: largest voltage consumers may set | |
7 | - regulator-microvolt-offset: Offset applied to voltages to compensate for voltage drops | |
8 | - regulator-min-microamp: smallest current consumers may set | |
9 | - regulator-max-microamp: largest current consumers may set | |
36e4f839 | 10 | - regulator-input-current-limit-microamp: maximum input current regulator allows |
8f446e6f RN |
11 | - regulator-always-on: boolean, regulator should never be disabled |
12 | - regulator-boot-on: bootloader/firmware enabled regulator | |
93134c7b | 13 | - regulator-allow-bypass: allow the regulator to go into bypass mode |
b263d203 | 14 | - regulator-allow-set-load: allow the regulator performance level to be configured |
8f446e6f | 15 | - <name>-supply: phandle to the parent supply/regulator node |
1283b912 | 16 | - regulator-ramp-delay: ramp delay for regulator(in uV/us) |
c98be0c9 | 17 | For hardware which supports disabling ramp rate, it should be explicitly |
126187da | 18 | initialised to zero (regulator-ramp-delay = <0>) for disabling ramp delay. |
00c877c6 LD |
19 | - regulator-enable-ramp-delay: The time taken, in microseconds, for the supply |
20 | rail to reach the target voltage, plus/minus whatever tolerance the board | |
21 | design requires. This property describes the total system ramp time | |
22 | required due to the combination of internal ramping of the regulator itself, | |
23 | and board design issues such as trace capacitance and load on the supply. | |
cfd2cedb LD |
24 | - regulator-settling-time-us: Settling time, in microseconds, for voltage |
25 | change if regulator have the constant time for any level voltage change. | |
26 | This is useful when regulator have exponential voltage change. | |
543853de MK |
27 | - regulator-settling-time-up-us: Settling time, in microseconds, for voltage |
28 | increase if the regulator needs a constant time to settle after voltage | |
29 | increases of any level. This is useful for regulators with exponential | |
30 | voltage changes. | |
31 | - regulator-settling-time-down-us: Settling time, in microseconds, for voltage | |
32 | decrease if the regulator needs a constant time to settle after voltage | |
33 | decreases of any level. This is useful for regulators with exponential | |
34 | voltage changes. | |
57f66b78 | 35 | - regulator-soft-start: Enable soft start so that voltage ramps slowly |
291d761c CC |
36 | - regulator-state-mem sub-root node for Suspend-to-RAM mode |
37 | : suspend to memory, the device goes to sleep, but all data stored in memory, | |
38 | only some external interrupt can wake the device. | |
39 | - regulator-state-disk sub-root node for Suspend-to-DISK mode | |
40 | : suspend to disk, this state operates similarly to Suspend-to-RAM, | |
41 | but includes a final step of writing memory contents to disk. | |
42 | - regulator-state-[mem/disk] node has following common properties: | |
43 | - regulator-on-in-suspend: regulator should be on in suspend state. | |
44 | - regulator-off-in-suspend: regulator should be off in suspend state. | |
057c7644 CZ |
45 | - regulator-suspend-min-microvolt: minimum voltage may be set in |
46 | suspend state. | |
47 | - regulator-suspend-max-microvolt: maximum voltage may be set in | |
48 | suspend state. | |
49 | - regulator-suspend-microvolt: the default voltage which regulator | |
50 | would be set in suspend. This property is now deprecated, instead | |
51 | setting voltage for suspend mode via the API which regulator | |
52 | driver provides is recommended. | |
53 | - regulator-changeable-in-suspend: whether the default voltage and | |
54 | the regulator on/off in suspend can be changed in runtime. | |
218094c9 JMC |
55 | - regulator-mode: operating mode in the given suspend state. |
56 | The set of possible operating modes depends on the capabilities of | |
57 | every hardware so the valid modes are documented on each regulator | |
58 | device tree binding document. | |
59 | - regulator-initial-mode: initial operating mode. The set of possible operating | |
60 | modes depends on the capabilities of every hardware so each device binding | |
61 | documentation explains which values the regulator supports. | |
22a10bca SB |
62 | - regulator-system-load: Load in uA present on regulator that is not captured by |
63 | any consumer request. | |
23c779b9 | 64 | - regulator-pull-down: Enable pull down resistor when the regulator is disabled. |
3a003bae | 65 | - regulator-over-current-protection: Enable over current protection. |
bd667d40 LD |
66 | - regulator-active-discharge: tristate, enable/disable active discharge of |
67 | regulators. The values are: | |
68 | 0: Disable active discharge. | |
69 | 1: Enable active discharge. | |
70 | Absence of this property will leave configuration to default. | |
13511def SW |
71 | |
72 | Deprecated properties: | |
8c5e461d LD |
73 | - regulator-compatible: If a regulator chip contains multiple |
74 | regulators, and if the chip's binding contains a child node that | |
75 | describes each regulator, then this property indicates which regulator | |
13511def SW |
76 | this child node is intended to configure. If this property is missing, |
77 | the node's name will be used instead. | |
8f446e6f RN |
78 | |
79 | Example: | |
80 | ||
81 | xyzreg: regulator@0 { | |
82 | regulator-min-microvolt = <1000000>; | |
83 | regulator-max-microvolt = <2500000>; | |
84 | regulator-always-on; | |
85 | vin-supply = <&vin>; | |
291d761c CC |
86 | |
87 | regulator-state-mem { | |
88 | regulator-on-in-suspend; | |
89 | }; | |
8f446e6f RN |
90 | }; |
91 | ||
92 | Regulator Consumers: | |
93 | Consumer nodes can reference one or more of its supplies/ | |
94 | regulators using the below bindings. | |
95 | ||
96 | - <name>-supply: phandle to the regulator node | |
97 | ||
98 | These are the same bindings that a regulator in the above | |
99 | example used to reference its own supply, in which case | |
100 | its just seen as a special case of a regulator being a | |
101 | consumer itself. | |
102 | ||
103 | Example of a consumer device node (mmc) referencing two | |
7728c14a | 104 | regulators (twl_reg1 and twl_reg2), |
8f446e6f | 105 | |
7728c14a | 106 | twl_reg1: regulator@0 { |
8f446e6f RN |
107 | ... |
108 | ... | |
109 | ... | |
110 | }; | |
111 | ||
7728c14a | 112 | twl_reg2: regulator@1 { |
8f446e6f RN |
113 | ... |
114 | ... | |
115 | ... | |
116 | }; | |
117 | ||
4c9847b7 | 118 | mmc: mmc@0 { |
8f446e6f RN |
119 | ... |
120 | ... | |
7728c14a SG |
121 | vmmc-supply = <&twl_reg1>; |
122 | vmmcaux-supply = <&twl_reg2>; | |
8f446e6f | 123 | }; |