1Voltage/Current Regulators 2 3Optional 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-input-current-limit-microamp: maximum input current regulator allows 11- regulator-always-on: boolean, regulator should never be disabled 12- regulator-boot-on: bootloader/firmware enabled regulator 13- regulator-allow-bypass: allow the regulator to go into bypass mode 14- <name>-supply: phandle to the parent supply/regulator node 15- regulator-ramp-delay: ramp delay for regulator(in uV/uS) 16 For hardware which supports disabling ramp rate, it should be explicitly 17 initialised to zero (regulator-ramp-delay = <0>) for disabling ramp delay. 18- regulator-enable-ramp-delay: The time taken, in microseconds, for the supply 19 rail to reach the target voltage, plus/minus whatever tolerance the board 20 design requires. This property describes the total system ramp time 21 required due to the combination of internal ramping of the regulator itself, 22 and board design issues such as trace capacitance and load on the supply. 23- regulator-soft-start: Enable soft start so that voltage ramps slowly 24- regulator-state-mem sub-root node for Suspend-to-RAM mode 25 : suspend to memory, the device goes to sleep, but all data stored in memory, 26 only some external interrupt can wake the device. 27- regulator-state-disk sub-root node for Suspend-to-DISK mode 28 : suspend to disk, this state operates similarly to Suspend-to-RAM, 29 but includes a final step of writing memory contents to disk. 30- regulator-state-[mem/disk] node has following common properties: 31 - regulator-on-in-suspend: regulator should be on in suspend state. 32 - regulator-off-in-suspend: regulator should be off in suspend state. 33 - regulator-suspend-microvolt: regulator should be set to this voltage 34 in suspend. 35 - regulator-mode: operating mode in the given suspend state. 36 The set of possible operating modes depends on the capabilities of 37 every hardware so the valid modes are documented on each regulator 38 device tree binding document. 39- regulator-initial-mode: initial operating mode. The set of possible operating 40 modes depends on the capabilities of every hardware so each device binding 41 documentation explains which values the regulator supports. 42- regulator-system-load: Load in uA present on regulator that is not captured by 43 any consumer request. 44- regulator-pull-down: Enable pull down resistor when the regulator is disabled. 45- regulator-over-current-protection: Enable over current protection. 46 47Deprecated properties: 48- regulator-compatible: If a regulator chip contains multiple 49 regulators, and if the chip's binding contains a child node that 50 describes each regulator, then this property indicates which regulator 51 this child node is intended to configure. If this property is missing, 52 the node's name will be used instead. 53 54Example: 55 56 xyzreg: regulator@0 { 57 regulator-min-microvolt = <1000000>; 58 regulator-max-microvolt = <2500000>; 59 regulator-always-on; 60 vin-supply = <&vin>; 61 62 regulator-state-mem { 63 regulator-on-in-suspend; 64 }; 65 }; 66 67Regulator Consumers: 68Consumer nodes can reference one or more of its supplies/ 69regulators using the below bindings. 70 71- <name>-supply: phandle to the regulator node 72 73These are the same bindings that a regulator in the above 74example used to reference its own supply, in which case 75its just seen as a special case of a regulator being a 76consumer itself. 77 78Example of a consumer device node (mmc) referencing two 79regulators (twl_reg1 and twl_reg2), 80 81 twl_reg1: regulator@0 { 82 ... 83 ... 84 ... 85 }; 86 87 twl_reg2: regulator@1 { 88 ... 89 ... 90 ... 91 }; 92 93 mmc: mmc@0x0 { 94 ... 95 ... 96 vmmc-supply = <&twl_reg1>; 97 vmmcaux-supply = <&twl_reg2>; 98 }; 99