Rajendra Nayak | 8f446e6 | 2011-11-18 16:47:17 +0530 | [diff] [blame] | 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 |
| 10 | - regulator-always-on: boolean, regulator should never be disabled |
| 11 | - regulator-boot-on: bootloader/firmware enabled regulator |
Kishon Vijay Abraham I | 93134c7 | 2013-06-20 14:07:37 +0530 | [diff] [blame] | 12 | - regulator-allow-bypass: allow the regulator to go into bypass mode |
Rajendra Nayak | 8f446e6 | 2011-11-18 16:47:17 +0530 | [diff] [blame] | 13 | - <name>-supply: phandle to the parent supply/regulator node |
Axel Lin | ea38d13 | 2012-06-18 14:03:16 +0800 | [diff] [blame] | 14 | - regulator-ramp-delay: ramp delay for regulator(in uV/uS) |
Carlos Garcia | c98be0c | 2014-04-04 22:31:00 -0400 | [diff] [blame] | 15 | For hardware which supports disabling ramp rate, it should be explicitly |
Yadwinder Singh Brar | 1653ccf | 2013-06-29 18:21:15 +0530 | [diff] [blame] | 16 | intialised to zero (regulator-ramp-delay = <0>) for disabling ramp delay. |
Laxman Dewangan | 00c877c | 2013-09-18 18:18:02 +0530 | [diff] [blame] | 17 | - regulator-enable-ramp-delay: The time taken, in microseconds, for the supply |
| 18 | rail to reach the target voltage, plus/minus whatever tolerance the board |
| 19 | design requires. This property describes the total system ramp time |
| 20 | required due to the combination of internal ramping of the regulator itself, |
| 21 | and board design issues such as trace capacitance and load on the supply. |
Chanwoo Choi | 291d761c | 2014-10-10 20:35:34 +0900 | [diff] [blame] | 22 | - regulator-state-mem sub-root node for Suspend-to-RAM mode |
| 23 | : suspend to memory, the device goes to sleep, but all data stored in memory, |
| 24 | only some external interrupt can wake the device. |
| 25 | - regulator-state-disk sub-root node for Suspend-to-DISK mode |
| 26 | : suspend to disk, this state operates similarly to Suspend-to-RAM, |
| 27 | but includes a final step of writing memory contents to disk. |
| 28 | - regulator-state-[mem/disk] node has following common properties: |
| 29 | - regulator-on-in-suspend: regulator should be on in suspend state. |
| 30 | - regulator-off-in-suspend: regulator should be off in suspend state. |
Doug Anderson | c99ade6 | 2014-10-31 20:52:57 -0700 | [diff] [blame] | 31 | - regulator-suspend-microvolt: regulator should be set to this voltage |
| 32 | in suspend. |
Javier Martinez Canillas | 218094c | 2014-11-10 14:43:51 +0100 | [diff] [blame] | 33 | - regulator-mode: operating mode in the given suspend state. |
| 34 | The set of possible operating modes depends on the capabilities of |
| 35 | every hardware so the valid modes are documented on each regulator |
| 36 | device tree binding document. |
| 37 | - regulator-initial-mode: initial operating mode. The set of possible operating |
| 38 | modes depends on the capabilities of every hardware so each device binding |
| 39 | documentation explains which values the regulator supports. |
Stephen Boyd | 22a10bc | 2015-06-11 17:37:03 -0700 | [diff] [blame] | 40 | - regulator-system-load: Load in uA present on regulator that is not captured by |
| 41 | any consumer request. |
Stephen Boyd | 23c779b | 2015-06-11 17:37:04 -0700 | [diff] [blame^] | 42 | - regulator-pull-down: Enable pull down resistor when the regulator is disabled. |
Stephen Warren | 13511de | 2012-09-24 13:25:00 -0600 | [diff] [blame] | 43 | |
| 44 | Deprecated properties: |
Laxman Dewangan | 8c5e461 | 2012-07-05 12:53:04 +0530 | [diff] [blame] | 45 | - regulator-compatible: If a regulator chip contains multiple |
| 46 | regulators, and if the chip's binding contains a child node that |
| 47 | describes each regulator, then this property indicates which regulator |
Stephen Warren | 13511de | 2012-09-24 13:25:00 -0600 | [diff] [blame] | 48 | this child node is intended to configure. If this property is missing, |
| 49 | the node's name will be used instead. |
Rajendra Nayak | 8f446e6 | 2011-11-18 16:47:17 +0530 | [diff] [blame] | 50 | |
| 51 | Example: |
| 52 | |
| 53 | xyzreg: regulator@0 { |
| 54 | regulator-min-microvolt = <1000000>; |
| 55 | regulator-max-microvolt = <2500000>; |
| 56 | regulator-always-on; |
| 57 | vin-supply = <&vin>; |
Chanwoo Choi | 291d761c | 2014-10-10 20:35:34 +0900 | [diff] [blame] | 58 | |
| 59 | regulator-state-mem { |
| 60 | regulator-on-in-suspend; |
| 61 | }; |
Rajendra Nayak | 8f446e6 | 2011-11-18 16:47:17 +0530 | [diff] [blame] | 62 | }; |
| 63 | |
| 64 | Regulator Consumers: |
| 65 | Consumer nodes can reference one or more of its supplies/ |
| 66 | regulators using the below bindings. |
| 67 | |
| 68 | - <name>-supply: phandle to the regulator node |
| 69 | |
| 70 | These are the same bindings that a regulator in the above |
| 71 | example used to reference its own supply, in which case |
| 72 | its just seen as a special case of a regulator being a |
| 73 | consumer itself. |
| 74 | |
| 75 | Example of a consumer device node (mmc) referencing two |
Shawn Guo | 7728c14 | 2011-11-28 21:37:16 +0800 | [diff] [blame] | 76 | regulators (twl_reg1 and twl_reg2), |
Rajendra Nayak | 8f446e6 | 2011-11-18 16:47:17 +0530 | [diff] [blame] | 77 | |
Shawn Guo | 7728c14 | 2011-11-28 21:37:16 +0800 | [diff] [blame] | 78 | twl_reg1: regulator@0 { |
Rajendra Nayak | 8f446e6 | 2011-11-18 16:47:17 +0530 | [diff] [blame] | 79 | ... |
| 80 | ... |
| 81 | ... |
| 82 | }; |
| 83 | |
Shawn Guo | 7728c14 | 2011-11-28 21:37:16 +0800 | [diff] [blame] | 84 | twl_reg2: regulator@1 { |
Rajendra Nayak | 8f446e6 | 2011-11-18 16:47:17 +0530 | [diff] [blame] | 85 | ... |
| 86 | ... |
| 87 | ... |
| 88 | }; |
| 89 | |
| 90 | mmc: mmc@0x0 { |
| 91 | ... |
| 92 | ... |
Shawn Guo | 7728c14 | 2011-11-28 21:37:16 +0800 | [diff] [blame] | 93 | vmmc-supply = <&twl_reg1>; |
| 94 | vmmcaux-supply = <&twl_reg2>; |
Rajendra Nayak | 8f446e6 | 2011-11-18 16:47:17 +0530 | [diff] [blame] | 95 | }; |