mirror of
https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
synced 2025-09-05 16:07:46 -04:00
Fixed MTP to work with TWRP
This commit is contained in:
commit
f6dfaef42e
50820 changed files with 20846062 additions and 0 deletions
38
Documentation/devicetree/bindings/regulator/88pm800.txt
Normal file
38
Documentation/devicetree/bindings/regulator/88pm800.txt
Normal file
|
@ -0,0 +1,38 @@
|
|||
Marvell 88PM800 regulator
|
||||
|
||||
Required properties:
|
||||
- compatible: "marvell,88pm800"
|
||||
- reg: I2C slave address
|
||||
- regulators: A node that houses a sub-node for each regulator within the
|
||||
device. Each sub-node is identified using the node's name (or the deprecated
|
||||
regulator-compatible property if present), with valid values listed below.
|
||||
The content of each sub-node is defined by the standard binding for
|
||||
regulators; see regulator.txt.
|
||||
|
||||
The valid names for regulators are:
|
||||
|
||||
buck1, buck2, buck3, buck4, buck5, ldo1, ldo2, ldo3, ldo4, ldo5, ldo6, ldo7,
|
||||
ldo8, ldo9, ldo10, ldo11, ldo12, ldo13, ldo14, ldo15, ldo16, ldo17, ldo18, ldo19
|
||||
|
||||
Example:
|
||||
|
||||
pmic: 88pm800@31 {
|
||||
compatible = "marvell,88pm800";
|
||||
reg = <0x31>;
|
||||
|
||||
regulators {
|
||||
buck1 {
|
||||
regulator-min-microvolt = <600000>;
|
||||
regulator-max-microvolt = <3950000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
ldo1 {
|
||||
regulator-min-microvolt = <600000>;
|
||||
regulator-max-microvolt = <15000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
...
|
||||
};
|
||||
};
|
30
Documentation/devicetree/bindings/regulator/88pm860x.txt
Normal file
30
Documentation/devicetree/bindings/regulator/88pm860x.txt
Normal file
|
@ -0,0 +1,30 @@
|
|||
Marvell 88PM860x regulator
|
||||
|
||||
Required properties:
|
||||
- compatible: "marvell,88pm860x"
|
||||
- reg: I2C slave address
|
||||
- regulators: A node that houses a sub-node for each regulator within the
|
||||
device. Each sub-node is identified using the regulator-compatible
|
||||
property, with valid values listed below.
|
||||
|
||||
Example:
|
||||
|
||||
pmic: 88pm860x@34 {
|
||||
compatible = "marvell,88pm860x";
|
||||
reg = <0x34>;
|
||||
|
||||
regulators {
|
||||
BUCK1 {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
BUCK3 {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,63 @@
|
|||
ACT88xx regulators
|
||||
-------------------
|
||||
|
||||
Required properties:
|
||||
- compatible: "active-semi,act8846" or "active-semi,act8865"
|
||||
- reg: I2C slave address
|
||||
|
||||
Any standard regulator properties can be used to configure the single regulator.
|
||||
|
||||
The valid names for regulators are:
|
||||
- for act8846:
|
||||
REG1, REG2, REG3, REG4, REG5, REG6, REG7, REG8, REG9, REG10, REG11, REG12
|
||||
- for act8865:
|
||||
DCDC_REG1, DCDC_REG2, DCDC_REG3, LDO_REG1, LDO_REG2, LDO_REG3, LDO_REG4.
|
||||
|
||||
Example:
|
||||
--------
|
||||
|
||||
i2c1: i2c@f0018000 {
|
||||
pmic: act8865@5b {
|
||||
compatible = "active-semi,act8865";
|
||||
reg = <0x5b>;
|
||||
status = "disabled";
|
||||
|
||||
regulators {
|
||||
vcc_1v8_reg: DCDC_REG1 {
|
||||
regulator-name = "VCC_1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vcc_1v2_reg: DCDC_REG2 {
|
||||
regulator-name = "VCC_1V2";
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1300000>;
|
||||
regulator-suspend-mem-microvolt = <1150000>;
|
||||
regulator-suspend-standby-microvolt = <1150000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vcc_3v3_reg: DCDC_REG3 {
|
||||
regulator-name = "VCC_3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vddana_reg: LDO_REG1 {
|
||||
regulator-name = "VDDANA";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vddfuse_reg: LDO_REG2 {
|
||||
regulator-name = "FUSE_2V5";
|
||||
regulator-min-microvolt = <2500000>;
|
||||
regulator-max-microvolt = <2500000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,37 @@
|
|||
Anatop Voltage regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be "fsl,anatop-regulator"
|
||||
- anatop-reg-offset: Anatop MFD register offset
|
||||
- anatop-vol-bit-shift: Bit shift for the register
|
||||
- anatop-vol-bit-width: Number of bits used in the register
|
||||
- anatop-min-bit-val: Minimum value of this register
|
||||
- anatop-min-voltage: Minimum voltage of this regulator
|
||||
- anatop-max-voltage: Maximum voltage of this regulator
|
||||
|
||||
Optional properties:
|
||||
- anatop-delay-reg-offset: Anatop MFD step time register offset
|
||||
- anatop-delay-bit-shift: Bit shift for the step time register
|
||||
- anatop-delay-bit-width: Number of bits used in the step time register
|
||||
|
||||
Any property defined as part of the core regulator
|
||||
binding, defined in regulator.txt, can also be used.
|
||||
|
||||
Example:
|
||||
|
||||
regulator-vddpu {
|
||||
compatible = "fsl,anatop-regulator";
|
||||
regulator-name = "vddpu";
|
||||
regulator-min-microvolt = <725000>;
|
||||
regulator-max-microvolt = <1300000>;
|
||||
regulator-always-on;
|
||||
anatop-reg-offset = <0x140>;
|
||||
anatop-vol-bit-shift = <9>;
|
||||
anatop-vol-bit-width = <5>;
|
||||
anatop-delay-reg-offset = <0x170>;
|
||||
anatop-delay-bit-shift = <24>;
|
||||
anatop-delay-bit-width = <2>;
|
||||
anatop-min-bit-val = <1>;
|
||||
anatop-min-voltage = <725000>;
|
||||
anatop-max-voltage = <1300000>;
|
||||
};
|
|
@ -0,0 +1,91 @@
|
|||
Regulator of AMS AS3722 PMIC.
|
||||
Name of the regulator subnode must be "regulators".
|
||||
|
||||
Optional properties:
|
||||
--------------------
|
||||
The input supply of regulators are the optional properties on the
|
||||
regulator node. The AS3722 is having 7 DCDC step-down regulators as
|
||||
sd[0-6], 10 LDOs as ldo[0-7], ldo[9-11]. The input supply of these
|
||||
regulators are provided through following properties:
|
||||
vsup-sd2-supply: Input supply for SD2.
|
||||
vsup-sd3-supply: Input supply for SD3.
|
||||
vsup-sd4-supply: Input supply for SD4.
|
||||
vsup-sd5-supply: Input supply for SD5.
|
||||
vin-ldo0-supply: Input supply for LDO0.
|
||||
vin-ldo1-6-supply: Input supply for LDO1 and LDO6.
|
||||
vin-ldo2-5-7-supply: Input supply for LDO2, LDO5 and LDO7.
|
||||
vin-ldo3-4-supply: Input supply for LDO3 and LDO4.
|
||||
vin-ldo9-10-supply: Input supply for LDO9 and LDO10.
|
||||
vin-ldo11-supply: Input supply for LDO11.
|
||||
|
||||
Optional nodes:
|
||||
--------------
|
||||
- regulators : Must contain a sub-node per regulator from the list below.
|
||||
Each sub-node should contain the constraints and initialization
|
||||
information for that regulator. See regulator.txt for a
|
||||
description of standard properties for these sub-nodes.
|
||||
Additional custom properties are listed below.
|
||||
sd[0-6], ldo[0-7], ldo[9-11].
|
||||
|
||||
Optional sub-node properties:
|
||||
----------------------------
|
||||
ams,ext-control: External control of the rail. The option of
|
||||
this properties will tell which external input is
|
||||
controlling this rail. Valid values are 0, 1, 2 ad 3.
|
||||
0: There is no external control of this rail.
|
||||
1: Rail is controlled by ENABLE1 input pin.
|
||||
2: Rail is controlled by ENABLE2 input pin.
|
||||
3: Rail is controlled by ENABLE3 input pin.
|
||||
ams,enable-tracking: Enable tracking with SD1, only supported
|
||||
by LDO3.
|
||||
|
||||
Example:
|
||||
-------
|
||||
ams3722: ams3722 {
|
||||
compatible = "ams,as3722";
|
||||
reg = <0x40>;
|
||||
...
|
||||
|
||||
regulators {
|
||||
vsup-sd2-supply = <...>;
|
||||
...
|
||||
|
||||
sd0 {
|
||||
regulator-name = "vdd_cpu";
|
||||
regulator-min-microvolt = <700000>;
|
||||
regulator-max-microvolt = <1400000>;
|
||||
regulator-always-on;
|
||||
ams,ext-control = <2>;
|
||||
};
|
||||
|
||||
sd1 {
|
||||
regulator-name = "vdd_core";
|
||||
regulator-min-microvolt = <700000>;
|
||||
regulator-max-microvolt = <1400000>;
|
||||
regulator-always-on;
|
||||
ams,ext-control = <1>;
|
||||
};
|
||||
|
||||
sd2 {
|
||||
regulator-name = "vddio_ddr";
|
||||
regulator-min-microvolt = <1350000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sd4 {
|
||||
regulator-name = "avdd-hdmi-pex";
|
||||
regulator-min-microvolt = <1050000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sd5 {
|
||||
regulator-name = "vdd-1v8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
....
|
||||
};
|
||||
};
|
21
Documentation/devicetree/bindings/regulator/da9210.txt
Normal file
21
Documentation/devicetree/bindings/regulator/da9210.txt
Normal file
|
@ -0,0 +1,21 @@
|
|||
* Dialog Semiconductor DA9210 Voltage Regulator
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible: must be "dlg,da9210"
|
||||
- reg: the i2c slave address of the regulator. It should be 0x68.
|
||||
|
||||
Any standard regulator properties can be used to configure the single da9210
|
||||
DCDC.
|
||||
|
||||
Example:
|
||||
|
||||
da9210@68 {
|
||||
compatible = "dlg,da9210";
|
||||
reg = <0x68>;
|
||||
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
63
Documentation/devicetree/bindings/regulator/da9211.txt
Normal file
63
Documentation/devicetree/bindings/regulator/da9211.txt
Normal file
|
@ -0,0 +1,63 @@
|
|||
* Dialog Semiconductor DA9211/DA9213 Voltage Regulator
|
||||
|
||||
Required properties:
|
||||
- compatible: "dlg,da9211" or "dlg,da9213".
|
||||
- reg: I2C slave address, usually 0x68.
|
||||
- interrupts: the interrupt outputs of the controller
|
||||
- regulators: A node that houses a sub-node for each regulator within the
|
||||
device. Each sub-node is identified using the node's name, with valid
|
||||
values listed below. The content of each sub-node is defined by the
|
||||
standard binding for regulators; see regulator.txt.
|
||||
BUCKA and BUCKB.
|
||||
|
||||
Optional properties:
|
||||
- Any optional property defined in regulator.txt
|
||||
|
||||
Example 1) DA9211
|
||||
|
||||
pmic: da9211@68 {
|
||||
compatible = "dlg,da9211";
|
||||
reg = <0x68>;
|
||||
interrupts = <3 27>;
|
||||
|
||||
regulators {
|
||||
BUCKA {
|
||||
regulator-name = "VBUCKA";
|
||||
regulator-min-microvolt = < 300000>;
|
||||
regulator-max-microvolt = <1570000>;
|
||||
regulator-min-microamp = <2000000>;
|
||||
regulator-max-microamp = <5000000>;
|
||||
};
|
||||
BUCKB {
|
||||
regulator-name = "VBUCKB";
|
||||
regulator-min-microvolt = < 300000>;
|
||||
regulator-max-microvolt = <1570000>;
|
||||
regulator-min-microamp = <2000000>;
|
||||
regulator-max-microamp = <5000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
Example 2) DA92113
|
||||
pmic: da9213@68 {
|
||||
compatible = "dlg,da9213";
|
||||
reg = <0x68>;
|
||||
interrupts = <3 27>;
|
||||
|
||||
regulators {
|
||||
BUCKA {
|
||||
regulator-name = "VBUCKA";
|
||||
regulator-min-microvolt = < 300000>;
|
||||
regulator-max-microvolt = <1570000>;
|
||||
regulator-min-microamp = <3000000>;
|
||||
regulator-max-microamp = <6000000>;
|
||||
};
|
||||
BUCKB {
|
||||
regulator-name = "VBUCKB";
|
||||
regulator-min-microvolt = < 300000>;
|
||||
regulator-max-microvolt = <1570000>;
|
||||
regulator-min-microamp = <3000000>;
|
||||
regulator-max-microamp = <6000000>;
|
||||
};
|
||||
};
|
||||
};
|
23
Documentation/devicetree/bindings/regulator/fan53555.txt
Normal file
23
Documentation/devicetree/bindings/regulator/fan53555.txt
Normal file
|
@ -0,0 +1,23 @@
|
|||
Binding for Fairchild FAN53555 regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: one of "fcs,fan53555", "silergy,syr827", "silergy,syr828"
|
||||
- reg: I2C address
|
||||
|
||||
Optional properties:
|
||||
- fcs,suspend-voltage-selector: declare which of the two available
|
||||
voltage selector registers should be used for the suspend
|
||||
voltage. The other one is used for the runtime voltage setting
|
||||
Possible values are either <0> or <1>
|
||||
- vin-supply: regulator supplying the vin pin
|
||||
|
||||
Example:
|
||||
|
||||
regulator@40 {
|
||||
compatible = "fcs,fan53555";
|
||||
regulator-name = "fan53555";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
vin-supply = <&parent_reg>;
|
||||
fcs,suspend-voltage-selector = <1>;
|
||||
};
|
|
@ -0,0 +1,34 @@
|
|||
Fixed Voltage regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be "regulator-fixed";
|
||||
|
||||
Optional properties:
|
||||
- gpio: gpio to use for enable control
|
||||
- startup-delay-us: startup time in microseconds
|
||||
- enable-active-high: Polarity of GPIO is Active high
|
||||
If this property is missing, the default assumed is Active low.
|
||||
- gpio-open-drain: GPIO is open drain type.
|
||||
If this property is missing then default assumption is false.
|
||||
-vin-supply: Input supply name.
|
||||
|
||||
Any property defined as part of the core regulator
|
||||
binding, defined in regulator.txt, can also be used.
|
||||
However a fixed voltage regulator is expected to have the
|
||||
regulator-min-microvolt and regulator-max-microvolt
|
||||
to be the same.
|
||||
|
||||
Example:
|
||||
|
||||
abc: fixedregulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "fixed-supply";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
gpio = <&gpio1 16 0>;
|
||||
startup-delay-us = <70000>;
|
||||
enable-active-high;
|
||||
regulator-boot-on;
|
||||
gpio-open-drain;
|
||||
vin-supply = <&parent_reg>;
|
||||
};
|
|
@ -0,0 +1,41 @@
|
|||
GPIO controlled regulators
|
||||
|
||||
Required properties:
|
||||
- compatible : Must be "regulator-gpio".
|
||||
- states : Selection of available voltages and GPIO configs.
|
||||
if there are no states, then use a fixed regulator
|
||||
|
||||
Optional properties:
|
||||
- enable-gpio : GPIO to use to enable/disable the regulator.
|
||||
- gpios : GPIO group used to control voltage.
|
||||
- gpios-states : gpios pin's initial states array. 0: LOW, 1: HIGH.
|
||||
defualt is LOW if nothing is specified.
|
||||
- startup-delay-us : Startup time in microseconds.
|
||||
- enable-active-high : Polarity of GPIO is active high (default is low).
|
||||
- regulator-type : Specifies what is being regulated, must be either
|
||||
"voltage" or "current", defaults to current.
|
||||
|
||||
Any property defined as part of the core regulator binding defined in
|
||||
regulator.txt can also be used.
|
||||
|
||||
Example:
|
||||
|
||||
mmciv: gpio-regulator {
|
||||
compatible = "regulator-gpio";
|
||||
|
||||
regulator-name = "mmci-gpio-supply";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <2600000>;
|
||||
regulator-boot-on;
|
||||
|
||||
enable-gpio = <&gpio0 23 0x4>;
|
||||
gpios = <&gpio0 24 0x4
|
||||
&gpio0 25 0x4>;
|
||||
states = <1800000 0x3
|
||||
2200000 0x2
|
||||
2600000 0x1
|
||||
2900000 0x0>;
|
||||
|
||||
startup-delay-us = <100000>;
|
||||
enable-active-high;
|
||||
};
|
36
Documentation/devicetree/bindings/regulator/isl9305.txt
Normal file
36
Documentation/devicetree/bindings/regulator/isl9305.txt
Normal file
|
@ -0,0 +1,36 @@
|
|||
Intersil ISL9305/ISL9305H voltage regulator
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible: "isl,isl9305" or "isl,isl9305h"
|
||||
- reg: I2C slave address, usually 0x68.
|
||||
- regulators: A node that houses a sub-node for each regulator within the
|
||||
device. Each sub-node is identified using the node's name, with valid
|
||||
values being "dcd1", "dcd2", "ldo1" and "ldo2". The content of each sub-node
|
||||
is defined by the standard binding for regulators; see regulator.txt.
|
||||
- VINDCD1-supply: A phandle to a regulator node supplying VINDCD1.
|
||||
VINDCD2-supply: A phandle to a regulator node supplying VINDCD2.
|
||||
VINLDO1-supply: A phandle to a regulator node supplying VINLDO1.
|
||||
VINLDO2-supply: A phandle to a regulator node supplying VINLDO2.
|
||||
|
||||
Optional properties:
|
||||
- Per-regulator optional properties are defined in regulator.txt
|
||||
|
||||
Example
|
||||
|
||||
pmic: isl9305@68 {
|
||||
compatible = "isl,isl9305";
|
||||
reg = <0x68>;
|
||||
|
||||
VINDCD1-supply = <&system_power>;
|
||||
VINDCD2-supply = <&system_power>;
|
||||
VINLDO1-supply = <&system_power>;
|
||||
VINLDO2-supply = <&system_power>;
|
||||
|
||||
regulators {
|
||||
dcd1 {
|
||||
regulator-name = "VDD_DSP";
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
160
Documentation/devicetree/bindings/regulator/lp872x.txt
Normal file
160
Documentation/devicetree/bindings/regulator/lp872x.txt
Normal file
|
@ -0,0 +1,160 @@
|
|||
Binding for TI/National Semiconductor LP872x Driver
|
||||
|
||||
Required properties:
|
||||
- compatible: "ti,lp8720" or "ti,lp8725"
|
||||
- reg: I2C slave address. 0x7d = LP8720, 0x7a = LP8725
|
||||
|
||||
Optional properties:
|
||||
- ti,general-config: the value of LP872X_GENERAL_CFG register (u8)
|
||||
(LP8720)
|
||||
bit[2]: BUCK output voltage control by external DVS pin or register
|
||||
1 = external pin, 0 = bit7 of register 08h
|
||||
bit[1]: sleep control by external DVS pin or register
|
||||
1 = external pin, 0 = bit6 of register 08h
|
||||
bit[0]: time step unit(usec). 1 = 25, 0 = 50
|
||||
|
||||
(LP8725)
|
||||
bit[7:6]: time step unit(usec). 00 = 32, 01 = 64, 10 = 128, 11 = 256
|
||||
bit[4]: BUCK2 enable control. 1 = enable, 0 = disable
|
||||
bit[3]: BUCK2 output voltage register address. 1 = 0Ah, 0 = 0Bh
|
||||
bit[2]: BUCK1 output voltage control by external DVS pin or register
|
||||
1 = register 08h, 0 = DVS
|
||||
bit[1]: LDO sleep control. 1 = sleep mode, 0 = normal
|
||||
bit[0]: BUCK1 enable control, 1 = enable, 0 = disable
|
||||
|
||||
For more details, please see the datasheet.
|
||||
|
||||
- ti,update-config: define it when LP872X_GENERAL_CFG register should be set
|
||||
- ti,dvs-gpio: GPIO specifier for external DVS pin control of LP872x devices.
|
||||
- ti,dvs-vsel: DVS selector. 0 = SEL_V1, 1 = SEL_V2.
|
||||
- ti,dvs-state: initial DVS pin state. 0 = DVS_LOW, 1 = DVS_HIGH.
|
||||
|
||||
Sub nodes for regulator_init_data
|
||||
LP8720 has maximum 6 nodes. (child name: ldo1 ~ 5 and buck)
|
||||
LP8725 has maximum 9 nodes. (child name: ldo1 ~ 5, lilo1,2 and buck1,2)
|
||||
For more details, please see the following binding document.
|
||||
(Documentation/devicetree/bindings/regulator/regulator.txt)
|
||||
|
||||
Datasheet
|
||||
- LP8720: http://www.ti.com/lit/ds/symlink/lp8720.pdf
|
||||
- LP8725: http://www.ti.com/lit/ds/symlink/lp8725.pdf
|
||||
|
||||
Example 1) LP8720
|
||||
|
||||
lp8720@7d {
|
||||
compatible = "ti,lp8720";
|
||||
reg = <0x7d>;
|
||||
|
||||
/* external DVS pin used, timestep is 25usec */
|
||||
ti,general-config = /bits/ 8 <0x03>;
|
||||
ti,update-config;
|
||||
|
||||
/*
|
||||
* The dvs-gpio depends on the processor environment.
|
||||
* For example, following GPIO specifier means GPIO134 in OMAP4.
|
||||
*/
|
||||
ti,dvs-gpio = <&gpio5 6 0>;
|
||||
ti,dvs-vsel = /bits/ 8 <1>; /* SEL_V2 */
|
||||
ti,dvs-state = /bits/ 8 <1>; /* DVS_HIGH */
|
||||
|
||||
vaf: ldo1 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vmmc: ldo2 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vcam_io: ldo3 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vcam_core: ldo4 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <2850000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vcam: ldo5 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vcc: buck {
|
||||
regulator-name = "VBUCK";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <2300000>;
|
||||
};
|
||||
};
|
||||
|
||||
Example 2) LP8725
|
||||
|
||||
lp8725@7a {
|
||||
compatible = "ti,lp8725";
|
||||
reg = <0x7a>;
|
||||
|
||||
/* Enable BUCK1,2, no DVS, normal LDO mode, timestep is 256usec */
|
||||
ti,general-config = /bits/ 8 <0xdd>;
|
||||
ti,update-config;
|
||||
|
||||
vcam_io: ldo1 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vcam_core: ldo2 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vcam: ldo3 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vcmmb_io: ldo4 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vcmmb_core: ldo5 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vaux1: lilo1 {
|
||||
regulator-name = "VAUX1";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vaux2: lilo2 {
|
||||
regulator-name = "VAUX2";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vcc1: buck1 {
|
||||
regulator-name = "VBUCK1";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-min-microamp = <460000>;
|
||||
regulator-max-microamp = <1370000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vcc2: buck2 {
|
||||
regulator-name = "VBUCK2";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-min-microamp = <460000>;
|
||||
regulator-max-microamp = <1370000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
};
|
99
Documentation/devicetree/bindings/regulator/ltc3589.txt
Normal file
99
Documentation/devicetree/bindings/regulator/ltc3589.txt
Normal file
|
@ -0,0 +1,99 @@
|
|||
Linear Technology LTC3589, LTC3589-1, and LTC3589-2 8-output regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: "lltc,ltc3589", "lltc,ltc3589-1" or "lltc,ltc3589-2"
|
||||
- reg: I2C slave address
|
||||
|
||||
Required child node:
|
||||
- regulators: Contains eight regulator child nodes sw1, sw2, sw3, bb-out,
|
||||
ldo1, ldo2, ldo3, and ldo4, specifying the initialization data as
|
||||
documented in Documentation/devicetree/bindings/regulator/regulator.txt.
|
||||
|
||||
Each regulator is defined using the standard binding for regulators. The
|
||||
nodes for sw1, sw2, sw3, bb-out, ldo1, and ldo2 additionally need to specify
|
||||
the resistor values of their external feedback voltage dividers:
|
||||
|
||||
Required properties (not on ldo3, ldo4):
|
||||
- lltc,fb-voltage-divider: An array of two integers containing the resistor
|
||||
values R1 and R2 of the feedback voltage divider in ohms.
|
||||
|
||||
Regulators sw1, sw2, sw3, and ldo2 can regulate the feedback reference from
|
||||
0.3625 V to 0.75 V in 12.5 mV steps. The output voltage thus ranges between
|
||||
0.3625 * (1 + R1/R2) V and 0.75 * (1 + R1/R2) V. Regulators bb-out and ldo1
|
||||
have a fixed 0.8 V reference and thus output 0.8 * (1 + R1/R2) V. The ldo3
|
||||
regulator is fixed to 1.8 V on LTC3589 and to 2.8 V on LTC3589-1,2. The ldo4
|
||||
regulator can output between 1.8 V and 3.3 V on LTC3589 and between 1.2 V
|
||||
and 3.2 V on LTC3589-1,2 in four steps. The ldo1 standby regulator can not
|
||||
be disabled and thus should have the regulator-always-on property set.
|
||||
|
||||
Example:
|
||||
|
||||
ltc3589: pmic@34 {
|
||||
compatible = "lltc,ltc3589-1";
|
||||
reg = <0x34>;
|
||||
|
||||
regulators {
|
||||
sw1_reg: sw1 {
|
||||
regulator-min-microvolt = <591930>;
|
||||
regulator-max-microvolt = <1224671>;
|
||||
lltc,fb-voltage-divider = <100000 158000>;
|
||||
regulator-ramp-delay = <7000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <704123>;
|
||||
regulator-max-microvolt = <1456803>;
|
||||
lltc,fb-voltage-divider = <180000 191000>;
|
||||
regulator-ramp-delay = <7000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3_reg: sw3 {
|
||||
regulator-min-microvolt = <1341250>;
|
||||
regulator-max-microvolt = <2775000>;
|
||||
lltc,fb-voltage-divider = <270000 100000>;
|
||||
regulator-ramp-delay = <7000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
bb_out_reg: bb-out {
|
||||
regulator-min-microvolt = <3387341>;
|
||||
regulator-max-microvolt = <3387341>;
|
||||
lltc,fb-voltage-divider = <511000 158000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo1_reg: ldo1 {
|
||||
regulator-min-microvolt = <1306329>;
|
||||
regulator-max-microvolt = <1306329>;
|
||||
lltc,fb-voltage-divider = <100000 158000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo2_reg: ldo2 {
|
||||
regulator-min-microvolt = <704123>;
|
||||
regulator-max-microvolt = <1456806>;
|
||||
lltc,fb-voltage-divider = <180000 191000>;
|
||||
regulator-ramp-delay = <7000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo3_reg: ldo3 {
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
ldo4_reg: ldo4 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3200000>;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,28 @@
|
|||
Maxim MAX1586 voltage regulator
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "maxim,max1586"
|
||||
- reg: I2C slave address, usually 0x14
|
||||
- v3-gain: integer specifying the V3 gain as per datasheet
|
||||
(1 + R24/R25 + R24/185.5kOhm)
|
||||
- any required generic properties defined in regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
i2c_master {
|
||||
max1586@14 {
|
||||
compatible = "maxim,max1586";
|
||||
reg = <0x14>;
|
||||
v3-gain = <1000000>;
|
||||
|
||||
regulators {
|
||||
vcc_core: v3 {
|
||||
regulator-name = "vcc_core";
|
||||
regulator-compatible = "Output_V3";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1705000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
53
Documentation/devicetree/bindings/regulator/max77802.txt
Normal file
53
Documentation/devicetree/bindings/regulator/max77802.txt
Normal file
|
@ -0,0 +1,53 @@
|
|||
Binding for Maxim MAX77802 regulators
|
||||
|
||||
This is a part of device tree bindings of MAX77802 multi-function device.
|
||||
More information can be found in bindings/mfd/max77802.txt file.
|
||||
|
||||
The MAX77802 PMIC has 10 high-efficiency Buck and 32 Low-dropout (LDO)
|
||||
regulators that can be controlled over I2C.
|
||||
|
||||
Following properties should be present in main device node of the MFD chip.
|
||||
|
||||
Optional node:
|
||||
- regulators : The regulators of max77802 have to be instantiated
|
||||
under subnode named "regulators" using the following format.
|
||||
|
||||
regulator-name {
|
||||
standard regulator constraints....
|
||||
};
|
||||
refer Documentation/devicetree/bindings/regulator/regulator.txt
|
||||
|
||||
The regulator node name should be initialized with a string to get matched
|
||||
with their hardware counterparts as follow. The valid names are:
|
||||
|
||||
-LDOn : for LDOs, where n can lie in ranges 1-15, 17-21, 23-30
|
||||
and 32-35.
|
||||
example: LDO1, LDO2, LDO35.
|
||||
-BUCKn : for BUCKs, where n can lie in range 1 to 10.
|
||||
example: BUCK1, BUCK5, BUCK10.
|
||||
Example:
|
||||
|
||||
max77802@09 {
|
||||
compatible = "maxim,max77802";
|
||||
interrupt-parent = <&wakeup_eint>;
|
||||
interrupts = <26 0>;
|
||||
reg = <0x09>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
regulators {
|
||||
ldo11_reg: LDO11 {
|
||||
regulator-name = "vdd_ldo11";
|
||||
regulator-min-microvolt = <1900000>;
|
||||
regulator-max-microvolt = <1900000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
buck1_reg: BUCK1 {
|
||||
regulator-name = "vdd_mif";
|
||||
regulator-min-microvolt = <950000>;
|
||||
regulator-max-microvolt = <1300000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
};
|
47
Documentation/devicetree/bindings/regulator/max8660.txt
Normal file
47
Documentation/devicetree/bindings/regulator/max8660.txt
Normal file
|
@ -0,0 +1,47 @@
|
|||
Maxim MAX8660 voltage regulator
|
||||
|
||||
Required properties:
|
||||
- compatible: must be one of "maxim,max8660", "maxim,max8661"
|
||||
- reg: I2C slave address, usually 0x34
|
||||
- any required generic properties defined in regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
i2c_master {
|
||||
max8660@34 {
|
||||
compatible = "maxim,max8660";
|
||||
reg = <0x34>;
|
||||
|
||||
regulators {
|
||||
regulator@0 {
|
||||
regulator-compatible= "V3(DCDC)";
|
||||
regulator-min-microvolt = <725000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
};
|
||||
|
||||
regulator@1 {
|
||||
regulator-compatible= "V4(DCDC)";
|
||||
regulator-min-microvolt = <725000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
};
|
||||
|
||||
regulator@2 {
|
||||
regulator-compatible= "V5(LDO)";
|
||||
regulator-min-microvolt = <1700000>;
|
||||
regulator-max-microvolt = <2000000>;
|
||||
};
|
||||
|
||||
regulator@3 {
|
||||
regulator-compatible= "V6(LDO)";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
regulator@4 {
|
||||
regulator-compatible= "V7(LDO)";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
69
Documentation/devicetree/bindings/regulator/max8907.txt
Normal file
69
Documentation/devicetree/bindings/regulator/max8907.txt
Normal file
|
@ -0,0 +1,69 @@
|
|||
MAX8907 regulator
|
||||
|
||||
Required properties:
|
||||
- compatible: "maxim,max8907"
|
||||
- reg: I2C slave address
|
||||
- interrupts: The interrupt output of the controller
|
||||
- mbatt-supply: The input supply for MBATT, BBAT, SDBY, VRTC.
|
||||
- in-v1-supply: The input supply for SD1.
|
||||
- in-v2-supply: The input supply for SD2.
|
||||
- in-v3-supply: The input supply for SD3.
|
||||
- in1-supply: The input supply for LDO1.
|
||||
...
|
||||
- in20-supply: The input supply for LDO20.
|
||||
- regulators: A node that houses a sub-node for each regulator within the
|
||||
device. Each sub-node is identified using the node's name (or the deprecated
|
||||
regulator-compatible property if present), with valid values listed below.
|
||||
The content of each sub-node is defined by the standard binding for
|
||||
regulators; see regulator.txt.
|
||||
|
||||
Optional properties:
|
||||
- maxim,system-power-controller: Boolean property indicating that the PMIC
|
||||
controls the overall system power.
|
||||
|
||||
The valid names for regulators are:
|
||||
|
||||
sd1, sd2, sd3, ldo1, ldo2, ldo3, ldo4, ldo5, ldo6, ldo7, ldo8, ldo9, ldo10,
|
||||
ldo11, ldo12, ldo13, ldo14, ldo15, ldo16, ldo17, ldo18, ldo19, ldo20, out5v,
|
||||
out33v, bbat, sdby, vrtc.
|
||||
|
||||
Example:
|
||||
|
||||
max8907@3c {
|
||||
compatible = "maxim,max8907";
|
||||
reg = <0x3c>;
|
||||
interrupts = <0 86 0x4>;
|
||||
|
||||
maxim,system-power-controller;
|
||||
|
||||
mbatt-supply = <&some_reg>;
|
||||
in-v1-supply = <&mbatt_reg>;
|
||||
...
|
||||
in1-supply = <&mbatt_reg>;
|
||||
...
|
||||
|
||||
regulators {
|
||||
mbatt_reg: mbatt {
|
||||
regulator-name = "vbat_pmu";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sd1 {
|
||||
regulator-name = "nvvdd_sv1,vdd_cpu_pmu";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sd2 {
|
||||
regulator-name = "nvvdd_sv2,vdd_core";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
...
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,40 @@
|
|||
Max8925 Voltage regulators
|
||||
|
||||
Required nodes:
|
||||
-nodes:
|
||||
- SDV1 for SDV SDV1
|
||||
- SDV2 for SDV SDV2
|
||||
- SDV3 for SDV SDV3
|
||||
- LDO1 for LDO LDO1
|
||||
- LDO2 for LDO LDO2
|
||||
- LDO3 for LDO LDO3
|
||||
- LDO4 for LDO LDO4
|
||||
- LDO5 for LDO LDO5
|
||||
- LDO6 for LDO LDO6
|
||||
- LDO7 for LDO LDO7
|
||||
- LDO8 for LDO LDO8
|
||||
- LDO9 for LDO LDO9
|
||||
- LDO10 for LDO LDO10
|
||||
- LDO11 for LDO LDO11
|
||||
- LDO12 for LDO LDO12
|
||||
- LDO13 for LDO LDO13
|
||||
- LDO14 for LDO LDO14
|
||||
- LDO15 for LDO LDO15
|
||||
- LDO16 for LDO LDO16
|
||||
- LDO17 for LDO LDO17
|
||||
- LDO18 for LDO LDO18
|
||||
- LDO19 for LDO LDO19
|
||||
- LDO20 for LDO LDO20
|
||||
|
||||
Optional properties:
|
||||
- Any optional property defined in bindings/regulator/regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
SDV1 {
|
||||
regulator-min-microvolt = <637500>;
|
||||
regulator-max-microvolt = <1425000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
52
Documentation/devicetree/bindings/regulator/max8952.txt
Normal file
52
Documentation/devicetree/bindings/regulator/max8952.txt
Normal file
|
@ -0,0 +1,52 @@
|
|||
Maxim MAX8952 voltage regulator
|
||||
|
||||
Required properties:
|
||||
- compatible: must be equal to "maxim,max8952"
|
||||
- reg: I2C slave address, usually 0x60
|
||||
- max8952,dvs-mode-microvolt: array of 4 integer values defining DVS voltages
|
||||
in microvolts. All values must be from range <770000, 1400000>
|
||||
- any required generic properties defined in regulator.txt
|
||||
|
||||
Optional properties:
|
||||
- max8952,vid-gpios: array of two GPIO pins used for DVS voltage selection
|
||||
- max8952,en-gpio: GPIO used to control enable status of regulator
|
||||
- max8952,default-mode: index of default DVS voltage, from <0, 3> range
|
||||
- max8952,sync-freq: sync frequency, must be one of following values:
|
||||
- 0: 26 MHz
|
||||
- 1: 13 MHz
|
||||
- 2: 19.2 MHz
|
||||
Defaults to 26 MHz if not specified.
|
||||
- max8952,ramp-speed: voltage ramp speed, must be one of following values:
|
||||
- 0: 32mV/us
|
||||
- 1: 16mV/us
|
||||
- 2: 8mV/us
|
||||
- 3: 4mV/us
|
||||
- 4: 2mV/us
|
||||
- 5: 1mV/us
|
||||
- 6: 0.5mV/us
|
||||
- 7: 0.25mV/us
|
||||
Defaults to 32mV/us if not specified.
|
||||
- any available generic properties defined in regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
vdd_arm_reg: pmic@60 {
|
||||
compatible = "maxim,max8952";
|
||||
reg = <0x60>;
|
||||
|
||||
/* max8952-specific properties */
|
||||
max8952,vid-gpios = <&gpx0 3 0>, <&gpx0 4 0>;
|
||||
max8952,en-gpio = <&gpx0 1 0>;
|
||||
max8952,default-mode = <0>;
|
||||
max8952,dvs-mode-microvolt = <1250000>, <1200000>,
|
||||
<1050000>, <950000>;
|
||||
max8952,sync-freq = <0>;
|
||||
max8952,ramp-speed = <0>;
|
||||
|
||||
/* generic regulator properties */
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-min-microvolt = <770000>;
|
||||
regulator-max-microvolt = <1400000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
|
@ -0,0 +1,21 @@
|
|||
* Maxim MAX8973 Voltage Regulator
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible: must be "maxim,max8973"
|
||||
- reg: the i2c slave address of the regulator. It should be 0x1b.
|
||||
|
||||
Any standard regulator properties can be used to configure the single max8973
|
||||
DCDC.
|
||||
|
||||
Example:
|
||||
|
||||
max8973@1b {
|
||||
compatible = "maxim,max8973";
|
||||
reg = <0x1b>;
|
||||
|
||||
regulator-min-microvolt = <935000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
|
@ -0,0 +1,146 @@
|
|||
* Maxim MAX8997 Voltage and Current Regulator
|
||||
|
||||
The Maxim MAX8997 is a multi-function device which includes voltage and
|
||||
current regulators, rtc, charger controller and other sub-blocks. It is
|
||||
interfaced to the host controller using a i2c interface. Each sub-block is
|
||||
addressed by the host system using different i2c slave address. This document
|
||||
describes the bindings for 'pmic' sub-block of max8997.
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "maxim,max8997-pmic".
|
||||
- reg: Specifies the i2c slave address of the pmic block. It should be 0x66.
|
||||
|
||||
- max8997,pmic-buck1-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
|
||||
units for buck1 when changing voltage using gpio dvs. Refer to [1] below
|
||||
for additional information.
|
||||
|
||||
- max8997,pmic-buck2-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
|
||||
units for buck2 when changing voltage using gpio dvs. Refer to [1] below
|
||||
for additional information.
|
||||
|
||||
- max8997,pmic-buck5-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
|
||||
units for buck5 when changing voltage using gpio dvs. Refer to [1] below
|
||||
for additional information.
|
||||
|
||||
[1] If none of the 'max8997,pmic-buck[1/2/5]-uses-gpio-dvs' optional
|
||||
property is specified, the 'max8997,pmic-buck[1/2/5]-dvs-voltage'
|
||||
property should specify atleast one voltage level (which would be a
|
||||
safe operating voltage).
|
||||
|
||||
If either of the 'max8997,pmic-buck[1/2/5]-uses-gpio-dvs' optional
|
||||
property is specified, then all the eight voltage values for the
|
||||
'max8997,pmic-buck[1/2/5]-dvs-voltage' should be specified.
|
||||
|
||||
Optional properties:
|
||||
- interrupt-parent: Specifies the phandle of the interrupt controller to which
|
||||
the interrupts from max8997 are delivered to.
|
||||
- interrupts: Interrupt specifiers for two interrupt sources.
|
||||
- First interrupt specifier is for 'irq1' interrupt.
|
||||
- Second interrupt specifier is for 'alert' interrupt.
|
||||
- max8997,pmic-buck1-uses-gpio-dvs: 'buck1' can be controlled by gpio dvs.
|
||||
- max8997,pmic-buck2-uses-gpio-dvs: 'buck2' can be controlled by gpio dvs.
|
||||
- max8997,pmic-buck5-uses-gpio-dvs: 'buck5' can be controlled by gpio dvs.
|
||||
|
||||
Additional properties required if either of the optional properties are used:
|
||||
- max8997,pmic-ignore-gpiodvs-side-effect: When GPIO-DVS mode is used for
|
||||
multiple bucks, changing the voltage value of one of the bucks may affect
|
||||
that of another buck, which is the side effect of the change (set_voltage).
|
||||
Use this property to ignore such side effects and change the voltage.
|
||||
|
||||
- max8997,pmic-buck125-default-dvs-idx: Default voltage setting selected from
|
||||
the possible 8 options selectable by the dvs gpios. The value of this
|
||||
property should be between 0 and 7. If not specified or if out of range, the
|
||||
default value of this property is set to 0.
|
||||
|
||||
- max8997,pmic-buck125-dvs-gpios: GPIO specifiers for three host gpio's used
|
||||
for dvs. The format of the gpio specifier depends in the gpio controller.
|
||||
|
||||
Regulators: The regulators of max8997 that have to be instantiated should be
|
||||
included in a sub-node named 'regulators'. Regulator nodes included in this
|
||||
sub-node should be of the format as listed below.
|
||||
|
||||
regulator_name {
|
||||
standard regulator bindings here
|
||||
};
|
||||
|
||||
The following are the names of the regulators that the max8997 pmic block
|
||||
supports. Note: The 'n' in LDOn and BUCKn represents the LDO or BUCK number
|
||||
as per the datasheet of max8997.
|
||||
|
||||
- LDOn
|
||||
- valid values for n are 1 to 18 and 21
|
||||
- Example: LDO0, LD01, LDO2, LDO21
|
||||
- BUCKn
|
||||
- valid values for n are 1 to 7.
|
||||
- Example: BUCK1, BUCK2, BUCK3, BUCK7
|
||||
|
||||
- ENVICHG: Battery Charging Current Monitor Output. This is a fixed
|
||||
voltage type regulator
|
||||
|
||||
- ESAFEOUT1: (ldo19)
|
||||
- ESAFEOUT2: (ld020)
|
||||
|
||||
- CHARGER_CV: main battery charger voltage control
|
||||
- CHARGER: main battery charger current control
|
||||
- CHARGER_TOPOFF: end of charge current threshold level
|
||||
|
||||
The bindings inside the regulator nodes use the standard regulator bindings
|
||||
which are documented elsewhere.
|
||||
|
||||
Example:
|
||||
|
||||
max8997_pmic@66 {
|
||||
compatible = "maxim,max8997-pmic";
|
||||
interrupt-parent = <&wakeup_eint>;
|
||||
reg = <0x66>;
|
||||
interrupts = <4 0>, <3 0>;
|
||||
|
||||
max8997,pmic-buck1-uses-gpio-dvs;
|
||||
max8997,pmic-buck2-uses-gpio-dvs;
|
||||
max8997,pmic-buck5-uses-gpio-dvs;
|
||||
|
||||
max8997,pmic-ignore-gpiodvs-side-effect;
|
||||
max8997,pmic-buck125-default-dvs-idx = <0>;
|
||||
|
||||
max8997,pmic-buck125-dvs-gpios = <&gpx0 0 1 0 0>, /* SET1 */
|
||||
<&gpx0 1 1 0 0>, /* SET2 */
|
||||
<&gpx0 2 1 0 0>; /* SET3 */
|
||||
|
||||
max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
|
||||
<1250000>, <1200000>,
|
||||
<1150000>, <1100000>,
|
||||
<1000000>, <950000>;
|
||||
|
||||
max8997,pmic-buck2-dvs-voltage = <1100000>, <1100000>,
|
||||
<1100000>, <1100000>,
|
||||
<1000000>, <1000000>,
|
||||
<1000000>, <1000000>;
|
||||
|
||||
max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
|
||||
<1200000>, <1200000>,
|
||||
<1200000>, <1200000>,
|
||||
<1200000>, <1200000>;
|
||||
|
||||
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_ARM_1.2V";
|
||||
regulator-min-microvolt = <950000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
};
|
||||
};
|
82
Documentation/devicetree/bindings/regulator/palmas-pmic.txt
Normal file
82
Documentation/devicetree/bindings/regulator/palmas-pmic.txt
Normal file
|
@ -0,0 +1,82 @@
|
|||
* palmas regulator IP block devicetree bindings
|
||||
|
||||
Required properties:
|
||||
- compatible : Should be from the list
|
||||
ti,twl6035-pmic
|
||||
ti,twl6036-pmic
|
||||
ti,twl6037-pmic
|
||||
ti,tps65913-pmic
|
||||
ti,tps65914-pmic
|
||||
ti,tps65917-pmic
|
||||
and also the generic series names
|
||||
ti,palmas-pmic
|
||||
- interrupt-parent : The parent interrupt controller which is palmas.
|
||||
- interrupts : The interrupt number and the type which can be looked up here:
|
||||
arch/arm/boot/dts/include/dt-bindings/interrupt-controller/irq.h
|
||||
- interrupts-name: The names of the individual interrupts.
|
||||
|
||||
Optional properties:
|
||||
- ti,ldo6-vibrator : ldo6 is in vibrator mode
|
||||
|
||||
Optional nodes:
|
||||
- regulators : Must contain a sub-node per regulator from the list below.
|
||||
Each sub-node should contain the constraints and initialization
|
||||
information for that regulator. See regulator.txt for a
|
||||
description of standard properties for these sub-nodes.
|
||||
Additional custom properties are listed below.
|
||||
|
||||
For ti,palmas-pmic - smps12, smps123, smps3 depending on OTP,
|
||||
smps45, smps457, smps7 depending on variant, smps6, smps[8-9],
|
||||
smps10_out2, smps10_out1, ldo[1-9], ldoln, ldousb.
|
||||
|
||||
Optional sub-node properties:
|
||||
ti,warm-reset - maintain voltage during warm reset(boolean)
|
||||
ti,roof-floor - This takes as optional argument on platform supporting
|
||||
the rail from desired external control. If there is no argument then
|
||||
it will be assume that it is controlled by NSLEEP pin.
|
||||
The valid value for external pins are:
|
||||
ENABLE1 then 1,
|
||||
ENABLE2 then 2 or
|
||||
NSLEEP then 3.
|
||||
ti,mode-sleep - mode to adopt in pmic sleep 0 - off, 1 - auto,
|
||||
2 - eco, 3 - forced pwm
|
||||
ti,smps-range - OTP has the wrong range set for the hardware so override
|
||||
0 - low range, 1 - high range.
|
||||
|
||||
- ti,system-power-controller: Telling whether or not this pmic is controlling
|
||||
the system power.
|
||||
|
||||
Example:
|
||||
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
|
||||
pmic {
|
||||
compatible = "ti,twl6035-pmic", "ti,palmas-pmic";
|
||||
interrupt-parent = <&palmas>;
|
||||
interrupts = <14 IRQ_TYPE_NONE>;
|
||||
interrupts-name = "short-irq";
|
||||
|
||||
ti,ldo6-vibrator;
|
||||
|
||||
ti,system-power-controller;
|
||||
|
||||
regulators {
|
||||
smps12_reg : smps12 {
|
||||
regulator-name = "smps12";
|
||||
regulator-min-microvolt = < 600000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
ti,warm-reset;
|
||||
ti,roof-floor = <1>; /* ENABLE1 control */
|
||||
ti,mode-sleep = <0>;
|
||||
ti,smps-range = <1>;
|
||||
};
|
||||
|
||||
ldo1_reg: ldo1 {
|
||||
regulator-name = "ldo1";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,27 @@
|
|||
PBIAS internal regulator for SD card dual voltage i/o pads on OMAP SoCs.
|
||||
|
||||
Required properties:
|
||||
- compatible:
|
||||
- "ti,pbias-omap" for OMAP2, OMAP3, OMAP4, OMAP5, DRA7.
|
||||
- reg: pbias register offset from syscon base and size of pbias register.
|
||||
- syscon : phandle of the system control module
|
||||
- regulator-name : should be
|
||||
pbias_mmc_omap2430 for OMAP2430, OMAP3 SoCs
|
||||
pbias_sim_omap3 for OMAP3 SoCs
|
||||
pbias_mmc_omap4 for OMAP4 SoCs
|
||||
pbias_mmc_omap5 for OMAP5 and DRA7 SoC
|
||||
|
||||
Optional properties:
|
||||
- Any optional property defined in bindings/regulator/regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
pbias_regulator: pbias_regulator {
|
||||
compatible = "ti,pbias-omap";
|
||||
reg = <0 0x4>;
|
||||
syscon = <&omap5_padconf_global>;
|
||||
pbias_mmc_reg: pbias_mmc_omap5 {
|
||||
regulator-name = "pbias_mmc_omap5";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
};
|
207
Documentation/devicetree/bindings/regulator/pfuze100.txt
Normal file
207
Documentation/devicetree/bindings/regulator/pfuze100.txt
Normal file
|
@ -0,0 +1,207 @@
|
|||
PFUZE100 family of regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: "fsl,pfuze100" or "fsl,pfuze200"
|
||||
- reg: I2C slave address
|
||||
|
||||
Required child node:
|
||||
- regulators: This is the list of child nodes that specify the regulator
|
||||
initialization data for defined regulators. Please refer to below doc
|
||||
Documentation/devicetree/bindings/regulator/regulator.txt.
|
||||
|
||||
The valid names for regulators are:
|
||||
--PFUZE100
|
||||
sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6
|
||||
--PFUZE200
|
||||
sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6
|
||||
|
||||
Each regulator is defined using the standard binding for regulators.
|
||||
|
||||
Example 1: PFUZE100
|
||||
|
||||
pmic: pfuze100@08 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
|
||||
regulators {
|
||||
sw1a_reg: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw1c_reg: sw1c {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3b_reg: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw4_reg: sw4 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
swbst_reg: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
};
|
||||
|
||||
snvs_reg: vsnvs {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vref_reg: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen1_reg: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen2_reg: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
Example 2: PFUZE200
|
||||
|
||||
pmic: pfuze200@08 {
|
||||
compatible = "fsl,pfuze200";
|
||||
reg = <0x08>;
|
||||
|
||||
regulators {
|
||||
sw1a_reg: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3b_reg: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
swbst_reg: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
};
|
||||
|
||||
snvs_reg: vsnvs {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vref_reg: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen1_reg: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen2_reg: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,27 @@
|
|||
pwm regulator bindings
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "pwm-regulator"
|
||||
- pwms: OF device-tree PWM specification (see PWM binding pwm.txt)
|
||||
- voltage-table: voltage and duty table, include 2 members in each set of
|
||||
brackets, first one is voltage(unit: uv), the next is duty(unit: percent)
|
||||
|
||||
Any property defined as part of the core regulator binding defined in
|
||||
regulator.txt can also be used.
|
||||
|
||||
Example:
|
||||
pwm_regulator {
|
||||
compatible = "pwm-regulator;
|
||||
pwms = <&pwm1 0 8448 0>;
|
||||
|
||||
voltage-table = <1114000 0>,
|
||||
<1095000 10>,
|
||||
<1076000 20>,
|
||||
<1056000 30>,
|
||||
<1036000 40>,
|
||||
<1016000 50>;
|
||||
|
||||
regulator-min-microvolt = <1016000>;
|
||||
regulator-max-microvolt = <1114000>;
|
||||
regulator-name = "vdd_logic";
|
||||
};
|
70
Documentation/devicetree/bindings/regulator/regulator.txt
Normal file
70
Documentation/devicetree/bindings/regulator/regulator.txt
Normal file
|
@ -0,0 +1,70 @@
|
|||
Voltage/Current Regulators
|
||||
|
||||
Optional properties:
|
||||
- regulator-name: A string used as a descriptive name for regulator outputs
|
||||
- regulator-min-microvolt: smallest voltage consumers may set
|
||||
- regulator-max-microvolt: largest voltage consumers may set
|
||||
- regulator-microvolt-offset: Offset applied to voltages to compensate for voltage drops
|
||||
- regulator-min-microamp: smallest current consumers may set
|
||||
- regulator-max-microamp: largest current consumers may set
|
||||
- regulator-always-on: boolean, regulator should never be disabled
|
||||
- regulator-boot-on: bootloader/firmware enabled regulator
|
||||
- regulator-allow-bypass: allow the regulator to go into bypass mode
|
||||
- <name>-supply: phandle to the parent supply/regulator node
|
||||
- regulator-ramp-delay: ramp delay for regulator(in uV/uS)
|
||||
For hardware which supports disabling ramp rate, it should be explicitly
|
||||
intialised to zero (regulator-ramp-delay = <0>) for disabling ramp delay.
|
||||
- regulator-enable-ramp-delay: The time taken, in microseconds, for the supply
|
||||
rail to reach the target voltage, plus/minus whatever tolerance the board
|
||||
design requires. This property describes the total system ramp time
|
||||
required due to the combination of internal ramping of the regulator itself,
|
||||
and board design issues such as trace capacitance and load on the supply.
|
||||
|
||||
Deprecated properties:
|
||||
- regulator-compatible: If a regulator chip contains multiple
|
||||
regulators, and if the chip's binding contains a child node that
|
||||
describes each regulator, then this property indicates which regulator
|
||||
this child node is intended to configure. If this property is missing,
|
||||
the node's name will be used instead.
|
||||
|
||||
Example:
|
||||
|
||||
xyzreg: regulator@0 {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <2500000>;
|
||||
regulator-always-on;
|
||||
vin-supply = <&vin>;
|
||||
};
|
||||
|
||||
Regulator Consumers:
|
||||
Consumer nodes can reference one or more of its supplies/
|
||||
regulators using the below bindings.
|
||||
|
||||
- <name>-supply: phandle to the regulator node
|
||||
|
||||
These are the same bindings that a regulator in the above
|
||||
example used to reference its own supply, in which case
|
||||
its just seen as a special case of a regulator being a
|
||||
consumer itself.
|
||||
|
||||
Example of a consumer device node (mmc) referencing two
|
||||
regulators (twl_reg1 and twl_reg2),
|
||||
|
||||
twl_reg1: regulator@0 {
|
||||
...
|
||||
...
|
||||
...
|
||||
};
|
||||
|
||||
twl_reg2: regulator@1 {
|
||||
...
|
||||
...
|
||||
...
|
||||
};
|
||||
|
||||
mmc: mmc@0x0 {
|
||||
...
|
||||
...
|
||||
vmmc-supply = <&twl_reg1>;
|
||||
vmmcaux-supply = <&twl_reg2>;
|
||||
};
|
|
@ -0,0 +1,163 @@
|
|||
* Samsung S5M8767 Voltage and Current Regulator
|
||||
|
||||
The Samsung S5M8767 is a multi-function device which includes voltage and
|
||||
current regulators, rtc, charger controller and other sub-blocks. It is
|
||||
interfaced to the host controller using a i2c interface. Each sub-block is
|
||||
addressed by the host system using different i2c slave address. This document
|
||||
describes the bindings for 'pmic' sub-block of s5m8767.
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "samsung,s5m8767-pmic".
|
||||
- reg: Specifies the i2c slave address of the pmic block. It should be 0x66.
|
||||
|
||||
- s5m8767,pmic-buck2-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
|
||||
units for buck2 when changing voltage using gpio dvs. Refer to [1] below
|
||||
for additional information.
|
||||
|
||||
- s5m8767,pmic-buck3-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
|
||||
units for buck3 when changing voltage using gpio dvs. Refer to [1] below
|
||||
for additional information.
|
||||
|
||||
- s5m8767,pmic-buck4-dvs-voltage: A set of 8 voltage values in micro-volt (uV)
|
||||
units for buck4 when changing voltage using gpio dvs. Refer to [1] below
|
||||
for additional information.
|
||||
|
||||
- s5m8767,pmic-buck-ds-gpios: GPIO specifiers for three host gpio's used
|
||||
for selecting GPIO DVS lines. It is one-to-one mapped to dvs gpio lines.
|
||||
|
||||
[1] If none of the 's5m8767,pmic-buck[2/3/4]-uses-gpio-dvs' optional
|
||||
property is specified, the 's5m8767,pmic-buck[2/3/4]-dvs-voltage'
|
||||
property should specify atleast one voltage level (which would be a
|
||||
safe operating voltage).
|
||||
|
||||
If either of the 's5m8767,pmic-buck[2/3/4]-uses-gpio-dvs' optional
|
||||
property is specified, then all the eight voltage values for the
|
||||
's5m8767,pmic-buck[2/3/4]-dvs-voltage' should be specified.
|
||||
|
||||
Optional properties:
|
||||
- interrupt-parent: Specifies the phandle of the interrupt controller to which
|
||||
the interrupts from s5m8767 are delivered to.
|
||||
- interrupts: Interrupt specifiers for two interrupt sources.
|
||||
- First interrupt specifier is for 'irq1' interrupt.
|
||||
- Second interrupt specifier is for 'alert' interrupt.
|
||||
- s5m8767,pmic-buck2-uses-gpio-dvs: 'buck2' can be controlled by gpio dvs.
|
||||
- s5m8767,pmic-buck3-uses-gpio-dvs: 'buck3' can be controlled by gpio dvs.
|
||||
- s5m8767,pmic-buck4-uses-gpio-dvs: 'buck4' can be controlled by gpio dvs.
|
||||
|
||||
Additional properties required if either of the optional properties are used:
|
||||
|
||||
- s5m8767,pmic-buck234-default-dvs-idx: Default voltage setting selected from
|
||||
the possible 8 options selectable by the dvs gpios. The value of this
|
||||
property should be between 0 and 7. If not specified or if out of range, the
|
||||
default value of this property is set to 0.
|
||||
|
||||
- s5m8767,pmic-buck-dvs-gpios: GPIO specifiers for three host gpio's used
|
||||
for dvs. The format of the gpio specifier depends in the gpio controller.
|
||||
|
||||
Regulators: The regulators of s5m8767 that have to be instantiated should be
|
||||
included in a sub-node named 'regulators'. Regulator nodes included in this
|
||||
sub-node should be of the format as listed below.
|
||||
|
||||
regulator_name {
|
||||
ldo1_reg: LDO1 {
|
||||
regulator-name = "VDD_ALIVE_1.0V";
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
op_mode = <1>; /* Normal Mode */
|
||||
};
|
||||
};
|
||||
The above regulator entries are defined in regulator bindings documentation
|
||||
except these properties:
|
||||
- op_mode: describes the different operating modes of the LDO's with
|
||||
power mode change in SOC. The different possible values are,
|
||||
0 - always off mode
|
||||
1 - on in normal mode
|
||||
2 - low power mode
|
||||
3 - suspend mode
|
||||
- s5m8767,pmic-ext-control-gpios: (optional) GPIO specifier for one
|
||||
GPIO controlling this regulator (enable/disable); This is
|
||||
valid only for buck9.
|
||||
|
||||
The following are the names of the regulators that the s5m8767 pmic block
|
||||
supports. Note: The 'n' in LDOn and BUCKn represents the LDO or BUCK number
|
||||
as per the datasheet of s5m8767.
|
||||
|
||||
- LDOn
|
||||
- valid values for n are 1 to 28
|
||||
- Example: LDO1, LDO2, LDO28
|
||||
- BUCKn
|
||||
- valid values for n are 1 to 9.
|
||||
- Example: BUCK1, BUCK2, BUCK9
|
||||
|
||||
The bindings inside the regulator nodes use the standard regulator bindings
|
||||
which are documented elsewhere.
|
||||
|
||||
Example:
|
||||
|
||||
s5m8767_pmic@66 {
|
||||
compatible = "samsung,s5m8767-pmic";
|
||||
reg = <0x66>;
|
||||
|
||||
s5m8767,pmic-buck2-uses-gpio-dvs;
|
||||
s5m8767,pmic-buck3-uses-gpio-dvs;
|
||||
s5m8767,pmic-buck4-uses-gpio-dvs;
|
||||
|
||||
s5m8767,pmic-buck-default-dvs-idx = <0>;
|
||||
|
||||
s5m8767,pmic-buck-dvs-gpios = <&gpx0 0 0>, /* DVS1 */
|
||||
<&gpx0 1 0>, /* DVS2 */
|
||||
<&gpx0 2 0>; /* DVS3 */
|
||||
|
||||
s5m8767,pmic-buck-ds-gpios = <&gpx2 3 0>, /* SET1 */
|
||||
<&gpx2 4 0>, /* SET2 */
|
||||
<&gpx2 5 0>; /* SET3 */
|
||||
|
||||
s5m8767,pmic-buck2-dvs-voltage = <1350000>, <1300000>,
|
||||
<1250000>, <1200000>,
|
||||
<1150000>, <1100000>,
|
||||
<1000000>, <950000>;
|
||||
|
||||
s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>,
|
||||
<1100000>, <1100000>,
|
||||
<1000000>, <1000000>,
|
||||
<1000000>, <1000000>;
|
||||
|
||||
s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>,
|
||||
<1200000>, <1200000>,
|
||||
<1200000>, <1200000>,
|
||||
<1200000>, <1200000>;
|
||||
|
||||
regulators {
|
||||
ldo1_reg: LDO1 {
|
||||
regulator-name = "VDD_ABB_3.3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
op_mode = <1>; /* Normal Mode */
|
||||
};
|
||||
|
||||
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_1.2V";
|
||||
regulator-min-microvolt = <950000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vemmc_reg: BUCK9 {
|
||||
regulator-name = "VMEM_VDD_2.8V";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
op_mode = <3>; /* Standby Mode */
|
||||
s5m8767,pmic-ext-control-gpios = <&gpk0 2 0>;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,16 @@
|
|||
SKY81452 voltage regulator
|
||||
|
||||
Required properties:
|
||||
- any required generic properties defined in regulator.txt
|
||||
|
||||
Optional properties:
|
||||
- any available generic properties defined in regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
regulator {
|
||||
/* generic regulator properties */
|
||||
regulator-name = "touch_en";
|
||||
regulator-min-microvolt = <4500000>;
|
||||
regulator-max-microvolt = <8000000>;
|
||||
};
|
132
Documentation/devicetree/bindings/regulator/ti-abb-regulator.txt
Normal file
132
Documentation/devicetree/bindings/regulator/ti-abb-regulator.txt
Normal file
|
@ -0,0 +1,132 @@
|
|||
Adaptive Body Bias(ABB) SoC internal LDO regulator for Texas Instruments SoCs
|
||||
|
||||
Required Properties:
|
||||
- compatible: Should be one of:
|
||||
- "ti,abb-v1" for older SoCs like OMAP3
|
||||
- "ti,abb-v2" for newer SoCs like OMAP4, OMAP5
|
||||
- "ti,abb-v3" for a generic definition where setup and control registers are
|
||||
provided (example: DRA7)
|
||||
- reg: Address and length of the register set for the device. It contains
|
||||
the information of registers in the same order as described by reg-names
|
||||
- reg-names: Should contain the reg names
|
||||
- "base-address" - contains base address of ABB module (ti,abb-v1,ti,abb-v2)
|
||||
- "control-address" - contains control register address of ABB module (ti,abb-v3)
|
||||
- "setup-address" - contains setup register address of ABB module (ti,abb-v3)
|
||||
- "int-address" - contains address of interrupt register for ABB module
|
||||
(also see Optional properties)
|
||||
- #address-cell: should be 0
|
||||
- #size-cell: should be 0
|
||||
- clocks: should point to the clock node used by ABB module
|
||||
- ti,settling-time: Settling time in uSecs from SoC documentation for ABB module
|
||||
to settle down(target time for SR2_WTCNT_VALUE).
|
||||
- ti,clock-cycles: SoC specific data about count of system ti,clock-cycles used for
|
||||
computing settling time from SoC Documentation for ABB module(clock
|
||||
cycles for SR2_WTCNT_VALUE).
|
||||
- ti,tranxdone-status-mask: Mask to the int-register to write-to-clear mask
|
||||
indicating LDO tranxdone (operation complete).
|
||||
- ti,abb_info: An array of 6-tuples u32 items providing information about ABB
|
||||
configuration needed per operational voltage of the device.
|
||||
Each item consists of the following in the same order:
|
||||
volt: voltage in uV - Only used to index ABB information.
|
||||
ABB mode: one of the following:
|
||||
0-bypass
|
||||
1-Forward Body Bias(FBB)
|
||||
3-Reverse Body Bias(RBB)
|
||||
efuse: (see Optional properties)
|
||||
RBB enable efuse Mask: (See Optional properties)
|
||||
FBB enable efuse Mask: (See Optional properties)
|
||||
Vset value efuse Mask: (See Optional properties)
|
||||
|
||||
NOTE: If more than 1 entry is present, then regulator is setup to change
|
||||
voltage, allowing for various modes to be selected indexed off
|
||||
the regulator. Further, ABB LDOs are considered always-on by
|
||||
default.
|
||||
|
||||
Optional Properties:
|
||||
- reg-names: In addition to the required properties, the following are optional
|
||||
- "efuse-address" - Contains efuse base address used to pick up ABB info.
|
||||
- "ldo-address" - Contains address of ABB LDO overide register address.
|
||||
"efuse-address" is required for this.
|
||||
- ti,ldovbb-vset-mask - Required if ldo-address is set, mask for LDO override
|
||||
register to provide override vset value.
|
||||
- ti,ldovbb-override-mask - Required if ldo-address is set, mask for LDO
|
||||
override register to enable override vset value.
|
||||
- ti,abb_opp_sel: Addendum to the description in required properties
|
||||
efuse: Mandatory if 'efuse-address' register is defined. Provides offset
|
||||
from efuse-address to pick up ABB characteristics. Set to 0 if
|
||||
'efuse-address' is not defined.
|
||||
RBB enable efuse Mask: Optional if 'efuse-address' register is defined.
|
||||
'ABB mode' is force set to RBB mode if value at "efuse-address"
|
||||
+ efuse maps to RBB mask. Set to 0 to ignore this.
|
||||
FBB enable efuse Mask: Optional if 'efuse-address' register is defined.
|
||||
'ABB mode' is force set to FBB mode if value at "efuse-address"
|
||||
+ efuse maps to FBB mask (valid only if RBB mask does not match)
|
||||
Set to 0 to ignore this.
|
||||
Vset value efuse Mask: Mandatory if ldo-address is set. Picks up from
|
||||
efuse the value to set in 'ti,ldovbb-vset-mask' at ldo-address.
|
||||
|
||||
Example #1: Simplest configuration (no efuse data, hard coded ABB table):
|
||||
abb_x: regulator-abb-x {
|
||||
compatible = "ti,abb-v1";
|
||||
regulator-name = "abb_x";
|
||||
#address-cell = <0>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x483072f0 0x8>, <0x48306818 0x4>;
|
||||
reg-names = "base-address", "int-address";
|
||||
ti,tranxdone-status-mask = <0x4000000>;
|
||||
clocks = <&sysclk>;
|
||||
ti,settling-time = <30>;
|
||||
ti,clock-cycles = <8>;
|
||||
ti,abb_info = <
|
||||
/* uV ABB efuse rbb_m fbb_m vset_m */
|
||||
1012500 0 0 0 0 0 /* Bypass */
|
||||
1200000 3 0 0 0 0 /* RBB mandatory */
|
||||
1320000 1 0 0 0 0 /* FBB mandatory */
|
||||
>;
|
||||
};
|
||||
|
||||
Example #2: Efuse bits contain ABB mode setting (no LDO override capability)
|
||||
abb_y: regulator-abb-y {
|
||||
compatible = "ti,abb-v2";
|
||||
regulator-name = "abb_y";
|
||||
#address-cell = <0>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x4a307bd0 0x8>, <0x4a306014 0x4>, <0x4A002268 0x8>;
|
||||
reg-names = "base-address", "int-address", "efuse-address";
|
||||
ti,tranxdone-status-mask = <0x4000000>;
|
||||
clocks = <&sysclk>;
|
||||
ti,settling-time = <50>;
|
||||
ti,clock-cycles = <16>;
|
||||
ti,abb_info = <
|
||||
/* uV ABB efuse rbb_m fbb_m vset_m */
|
||||
975000 0 0 0 0 0 /* Bypass */
|
||||
1012500 0 0 0x40000 0 0 /* RBB optional */
|
||||
1200000 0 0x4 0 0x40000 0 /* FBB optional */
|
||||
1320000 1 0 0 0 0 /* FBB mandatory */
|
||||
>;
|
||||
};
|
||||
|
||||
Example #3: Efuse bits contain ABB mode setting and LDO override capability
|
||||
abb_z: regulator-abb-z {
|
||||
compatible = "ti,abb-v2";
|
||||
regulator-name = "abb_z";
|
||||
#address-cell = <0>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x4ae07ce4 0x8>, <0x4ae06010 0x4>,
|
||||
<0x4a002194 0x8>, <0x4ae0C314 0x4>;
|
||||
reg-names = "base-address", "int-address",
|
||||
"efuse-address", "ldo-address";
|
||||
ti,tranxdone-status-mask = <0x8000000>;
|
||||
/* LDOVBBMM_MUX_CTRL */
|
||||
ti,ldovbb-override-mask = <0x400>;
|
||||
/* LDOVBBMM_VSET_OUT */
|
||||
ti,ldovbb-vset-mask = <0x1F>;
|
||||
clocks = <&sysclk>;
|
||||
ti,settling-time = <50>;
|
||||
ti,clock-cycles = <16>;
|
||||
ti,abb_info = <
|
||||
/* uV ABB efuse rbb_m fbb_m vset_m */
|
||||
975000 0 0 0 0 0 /* Bypass */
|
||||
1200000 0 0x4 0 0x40000 0x1f00 /* FBB optional, vset */
|
||||
>;
|
||||
};
|
|
@ -0,0 +1,27 @@
|
|||
TPS51632 Voltage regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be "ti,tps51632"
|
||||
- reg: I2C slave address
|
||||
|
||||
Optional properties:
|
||||
- ti,enable-pwm-dvfs: Enable the DVFS voltage control through the PWM interface.
|
||||
- ti,dvfs-step-20mV: The 20mV step voltage when PWM DVFS enabled. Missing this
|
||||
will set 10mV step voltage in PWM DVFS mode. In normal mode, the voltage
|
||||
step is 10mV as per datasheet.
|
||||
|
||||
Any property defined as part of the core regulator binding, defined in
|
||||
regulator.txt, can also be used.
|
||||
|
||||
Example:
|
||||
|
||||
tps51632 {
|
||||
compatible = "ti,tps51632";
|
||||
reg = <0x43>;
|
||||
regulator-name = "tps51632-vout";
|
||||
regulator-min-microvolt = <500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-boot-on;
|
||||
ti,enable-pwm-dvfs;
|
||||
ti,dvfs-step-20mV;
|
||||
};
|
|
@ -0,0 +1,44 @@
|
|||
TPS62360 Voltage regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be one of the following.
|
||||
"ti,tps62360"
|
||||
"ti,tps62361",
|
||||
"ti,tps62362",
|
||||
"ti,tps62363",
|
||||
- reg: I2C slave address
|
||||
|
||||
Optional properties:
|
||||
- ti,enable-vout-discharge: Enable output discharge. This is boolean value.
|
||||
- ti,enable-pull-down: Enable pull down. This is boolean value.
|
||||
- ti,vsel0-gpio: GPIO for controlling VSEL0 line.
|
||||
If this property is missing, then assume that there is no GPIO
|
||||
for vsel0 control.
|
||||
- ti,vsel1-gpio: Gpio for controlling VSEL1 line.
|
||||
If this property is missing, then assume that there is no GPIO
|
||||
for vsel1 control.
|
||||
- ti,vsel0-state-high: Initial state of vsel0 input is high.
|
||||
If this property is missing, then assume the state as low (0).
|
||||
- ti,vsel1-state-high: Initial state of vsel1 input is high.
|
||||
If this property is missing, then assume the state as low (0).
|
||||
|
||||
Any property defined as part of the core regulator binding, defined in
|
||||
regulator.txt, can also be used.
|
||||
|
||||
Example:
|
||||
|
||||
abc: tps62360 {
|
||||
compatible = "ti,tps62361";
|
||||
reg = <0x60>;
|
||||
regulator-name = "tps62361-vout";
|
||||
regulator-min-microvolt = <500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-boot-on
|
||||
ti,vsel0-gpio = <&gpio1 16 0>;
|
||||
ti,vsel1-gpio = <&gpio1 17 0>;
|
||||
ti,vsel0-state-high;
|
||||
ti,vsel1-state-high;
|
||||
ti,enable-pull-down;
|
||||
ti,enable-force-pwm;
|
||||
ti,enable-vout-discharge;
|
||||
};
|
126
Documentation/devicetree/bindings/regulator/tps65090.txt
Normal file
126
Documentation/devicetree/bindings/regulator/tps65090.txt
Normal file
|
@ -0,0 +1,126 @@
|
|||
TPS65090 regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: "ti,tps65090"
|
||||
- reg: I2C slave address
|
||||
- interrupts: the interrupt outputs of the controller
|
||||
- regulators: A node that houses a sub-node for each regulator within the
|
||||
device. Each sub-node is identified using the node's name, with valid
|
||||
values listed below. The content of each sub-node is defined by the
|
||||
standard binding for regulators; see regulator.txt.
|
||||
dcdc[1-3], fet[1-7] and ldo[1-2] respectively.
|
||||
- vsys[1-3]-supply: The input supply for DCDC[1-3] respectively.
|
||||
- infet[1-7]-supply: The input supply for FET[1-7] respectively.
|
||||
- vsys-l[1-2]-supply: The input supply for LDO[1-2] respectively.
|
||||
|
||||
Optional properties:
|
||||
- ti,enable-ext-control: This is applicable for DCDC1, DCDC2 and DCDC3.
|
||||
If DCDCs are externally controlled then this property should be there.
|
||||
- "dcdc-ext-control-gpios: This is applicable for DCDC1, DCDC2 and DCDC3.
|
||||
If DCDCs are externally controlled and if it is from GPIO then GPIO
|
||||
number should be provided. If it is externally controlled and no GPIO
|
||||
entry then driver will just configure this rails as external control
|
||||
and will not provide any enable/disable APIs.
|
||||
- ti,overcurrent-wait: This is applicable to FET registers, which have a
|
||||
poorly defined "overcurrent wait" field. If this property is present it
|
||||
should be between 0 - 3. If this property isn't present we won't touch the
|
||||
"overcurrent wait" field and we'll leave it to the BIOS/EC to deal with.
|
||||
|
||||
Each regulator is defined using the standard binding for regulators.
|
||||
|
||||
Example:
|
||||
|
||||
tps65090@48 {
|
||||
compatible = "ti,tps65090";
|
||||
reg = <0x48>;
|
||||
interrupts = <0 88 0x4>;
|
||||
|
||||
vsys1-supply = <&some_reg>;
|
||||
vsys2-supply = <&some_reg>;
|
||||
vsys3-supply = <&some_reg>;
|
||||
infet1-supply = <&some_reg>;
|
||||
infet2-supply = <&some_reg>;
|
||||
infet3-supply = <&some_reg>;
|
||||
infet4-supply = <&some_reg>;
|
||||
infet5-supply = <&some_reg>;
|
||||
infet6-supply = <&some_reg>;
|
||||
infet7-supply = <&some_reg>;
|
||||
vsys-l1-supply = <&some_reg>;
|
||||
vsys-l2-supply = <&some_reg>;
|
||||
|
||||
regulators {
|
||||
dcdc1 {
|
||||
regulator-name = "dcdc1";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
ti,enable-ext-control;
|
||||
dcdc-ext-control-gpios = <&gpio 10 0>;
|
||||
};
|
||||
|
||||
dcdc2 {
|
||||
regulator-name = "dcdc2";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
dcdc3 {
|
||||
regulator-name = "dcdc3";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
fet1 {
|
||||
regulator-name = "fet1";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
fet2 {
|
||||
regulator-name = "fet2";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
fet3 {
|
||||
regulator-name = "fet3";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
fet4 {
|
||||
regulator-name = "fet4";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
fet5 {
|
||||
regulator-name = "fet5";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
fet6 {
|
||||
regulator-name = "fet6";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
fet7 {
|
||||
regulator-name = "fet7";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo1 {
|
||||
regulator-name = "ldo1";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo2 {
|
||||
regulator-name = "ldo2";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
78
Documentation/devicetree/bindings/regulator/tps65217.txt
Normal file
78
Documentation/devicetree/bindings/regulator/tps65217.txt
Normal file
|
@ -0,0 +1,78 @@
|
|||
TPS65217 family of regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: "ti,tps65217"
|
||||
- reg: I2C slave address
|
||||
- regulators: list of regulators provided by this controller, must be named
|
||||
after their hardware counterparts: dcdc[1-3] and ldo[1-4]
|
||||
- regulators: This is the list of child nodes that specify the regulator
|
||||
initialization data for defined regulators. Not all regulators for the given
|
||||
device need to be present. The definition for each of these nodes is defined
|
||||
using the standard binding for regulators found at
|
||||
Documentation/devicetree/bindings/regulator/regulator.txt.
|
||||
|
||||
Optional properties:
|
||||
- ti,pmic-shutdown-controller: Telling the PMIC to shutdown on PWR_EN toggle.
|
||||
|
||||
The valid names for regulators are:
|
||||
tps65217: dcdc1, dcdc2, dcdc3, ldo1, ldo2, ldo3 and ldo4
|
||||
|
||||
Each regulator is defined using the standard binding for regulators.
|
||||
|
||||
Example:
|
||||
|
||||
tps: tps@24 {
|
||||
compatible = "ti,tps65217";
|
||||
ti,pmic-shutdown-controller;
|
||||
|
||||
regulators {
|
||||
dcdc1_reg: dcdc1 {
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
dcdc2_reg: dcdc2 {
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
dcdc3_reg: dcc3 {
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo1_reg: ldo1 {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo2_reg: ldo2 {
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo3_reg: ldo3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo4_reg: ldo4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
23
Documentation/devicetree/bindings/regulator/tps65218.txt
Normal file
23
Documentation/devicetree/bindings/regulator/tps65218.txt
Normal file
|
@ -0,0 +1,23 @@
|
|||
TPS65218 family of regulators
|
||||
|
||||
Required properties:
|
||||
For tps65218 regulators/LDOs
|
||||
- compatible:
|
||||
- "ti,tps65218-dcdc1" for DCDC1
|
||||
- "ti,tps65218-dcdc2" for DCDC2
|
||||
- "ti,tps65218-dcdc3" for DCDC3
|
||||
- "ti,tps65218-dcdc4" for DCDC4
|
||||
- "ti,tps65218-dcdc5" for DCDC5
|
||||
- "ti,tps65218-dcdc6" for DCDC6
|
||||
- "ti,tps65218-ldo1" for LDO1
|
||||
|
||||
Optional properties:
|
||||
- Any optional property defined in bindings/regulator/regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
xyz: regulator@0 {
|
||||
compatible = "ti,tps65218-dcdc1";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
};
|
135
Documentation/devicetree/bindings/regulator/tps6586x.txt
Normal file
135
Documentation/devicetree/bindings/regulator/tps6586x.txt
Normal file
|
@ -0,0 +1,135 @@
|
|||
TPS6586x family of regulators
|
||||
|
||||
Required properties:
|
||||
- compatible: "ti,tps6586x"
|
||||
- reg: I2C slave address
|
||||
- interrupts: the interrupt outputs of the controller
|
||||
- #gpio-cells: number of cells to describe a GPIO
|
||||
- gpio-controller: mark the device as a GPIO controller
|
||||
- regulators: A node that houses a sub-node for each regulator within the
|
||||
device. Each sub-node is identified using the node's name (or the deprecated
|
||||
regulator-compatible property if present), with valid values listed below.
|
||||
The content of each sub-node is defined by the standard binding for
|
||||
regulators; see regulator.txt.
|
||||
sys, sm[0-2], ldo[0-9] and ldo_rtc
|
||||
- sys-supply: The input supply for SYS.
|
||||
- vin-sm0-supply: The input supply for the SM0.
|
||||
- vin-sm1-supply: The input supply for the SM1.
|
||||
- vin-sm2-supply: The input supply for the SM2.
|
||||
- vinldo01-supply: The input supply for the LDO1 and LDO2
|
||||
- vinldo23-supply: The input supply for the LDO2 and LDO3
|
||||
- vinldo4-supply: The input supply for the LDO4
|
||||
- vinldo678-supply: The input supply for the LDO6, LDO7 and LDO8
|
||||
- vinldo9-supply: The input supply for the LDO9
|
||||
|
||||
Optional properties:
|
||||
- ti,system-power-controller: Telling whether or not this pmic is controlling
|
||||
the system power.
|
||||
|
||||
Each regulator is defined using the standard binding for regulators.
|
||||
|
||||
Note: LDO5 and LDO_RTC is supplied by SYS regulator internally and driver
|
||||
take care of making proper parent child relationship.
|
||||
|
||||
Example:
|
||||
|
||||
pmu: tps6586x@34 {
|
||||
compatible = "ti,tps6586x";
|
||||
reg = <0x34>;
|
||||
interrupts = <0 88 0x4>;
|
||||
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
|
||||
ti,system-power-controller;
|
||||
|
||||
sys-supply = <&some_reg>;
|
||||
vin-sm0-supply = <&some_reg>;
|
||||
vin-sm1-supply = <&some_reg>;
|
||||
vin-sm2-supply = <&some_reg>;
|
||||
vinldo01-supply = <...>;
|
||||
vinldo23-supply = <...>;
|
||||
vinldo4-supply = <...>;
|
||||
vinldo678-supply = <...>;
|
||||
vinldo9-supply = <...>;
|
||||
|
||||
regulators {
|
||||
sys_reg: sys {
|
||||
regulator-name = "vdd_sys";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sm0_reg: sm0 {
|
||||
regulator-min-microvolt = < 725000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sm1_reg: sm1 {
|
||||
regulator-min-microvolt = < 725000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sm2_reg: sm2 {
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <4550000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo0_reg: ldo0 {
|
||||
regulator-name = "PCIE CLK";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
ldo1_reg: ldo1 {
|
||||
regulator-min-microvolt = < 725000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
};
|
||||
|
||||
ldo2_reg: ldo2 {
|
||||
regulator-min-microvolt = < 725000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
};
|
||||
|
||||
ldo3_reg: ldo3 {
|
||||
regulator-min-microvolt = <1250000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
ldo4_reg: ldo4 {
|
||||
regulator-min-microvolt = <1700000>;
|
||||
regulator-max-microvolt = <2475000>;
|
||||
};
|
||||
|
||||
ldo5_reg: ldo5 {
|
||||
regulator-min-microvolt = <1250000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
ldo6_reg: ldo6 {
|
||||
regulator-min-microvolt = <1250000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
ldo7_reg: ldo7 {
|
||||
regulator-min-microvolt = <1250000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
ldo8_reg: ldo8 {
|
||||
regulator-min-microvolt = <1250000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
ldo9_reg: ldo9 {
|
||||
regulator-min-microvolt = <1250000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,67 @@
|
|||
TWL family of regulators
|
||||
|
||||
Required properties:
|
||||
For twl6030 regulators/LDOs
|
||||
- compatible:
|
||||
- "ti,twl6030-vaux1" for VAUX1 LDO
|
||||
- "ti,twl6030-vaux2" for VAUX2 LDO
|
||||
- "ti,twl6030-vaux3" for VAUX3 LDO
|
||||
- "ti,twl6030-vmmc" for VMMC LDO
|
||||
- "ti,twl6030-vpp" for VPP LDO
|
||||
- "ti,twl6030-vusim" for VUSIM LDO
|
||||
- "ti,twl6030-vana" for VANA LDO
|
||||
- "ti,twl6030-vcxio" for VCXIO LDO
|
||||
- "ti,twl6030-vdac" for VDAC LDO
|
||||
- "ti,twl6030-vusb" for VUSB LDO
|
||||
- "ti,twl6030-v1v8" for V1V8 LDO
|
||||
- "ti,twl6030-v2v1" for V2V1 LDO
|
||||
- "ti,twl6030-vdd1" for VDD1 SMPS
|
||||
- "ti,twl6030-vdd2" for VDD2 SMPS
|
||||
- "ti,twl6030-vdd3" for VDD3 SMPS
|
||||
For twl6032 regulators/LDOs
|
||||
- compatible:
|
||||
- "ti,twl6032-ldo1" for LDO1 LDO
|
||||
- "ti,twl6032-ldo2" for LDO2 LDO
|
||||
- "ti,twl6032-ldo3" for LDO3 LDO
|
||||
- "ti,twl6032-ldo4" for LDO4 LDO
|
||||
- "ti,twl6032-ldo5" for LDO5 LDO
|
||||
- "ti,twl6032-ldo6" for LDO6 LDO
|
||||
- "ti,twl6032-ldo7" for LDO7 LDO
|
||||
- "ti,twl6032-ldoln" for LDOLN LDO
|
||||
- "ti,twl6032-ldousb" for LDOUSB LDO
|
||||
- "ti,twl6032-smps3" for SMPS3 SMPS
|
||||
- "ti,twl6032-smps4" for SMPS4 SMPS
|
||||
- "ti,twl6032-vio" for VIO SMPS
|
||||
For twl4030 regulators/LDOs
|
||||
- compatible:
|
||||
- "ti,twl4030-vaux1" for VAUX1 LDO
|
||||
- "ti,twl4030-vaux2" for VAUX2 LDO
|
||||
- "ti,twl5030-vaux2" for VAUX2 LDO
|
||||
- "ti,twl4030-vaux3" for VAUX3 LDO
|
||||
- "ti,twl4030-vaux4" for VAUX4 LDO
|
||||
- "ti,twl4030-vmmc1" for VMMC1 LDO
|
||||
- "ti,twl4030-vmmc2" for VMMC2 LDO
|
||||
- "ti,twl4030-vpll1" for VPLL1 LDO
|
||||
- "ti,twl4030-vpll2" for VPLL2 LDO
|
||||
- "ti,twl4030-vsim" for VSIM LDO
|
||||
- "ti,twl4030-vdac" for VDAC LDO
|
||||
- "ti,twl4030-vintana2" for VINTANA2 LDO
|
||||
- "ti,twl4030-vio" for VIO LDO
|
||||
- "ti,twl4030-vdd1" for VDD1 SMPS
|
||||
- "ti,twl4030-vdd2" for VDD2 SMPS
|
||||
- "ti,twl4030-vintana1" for VINTANA1 LDO
|
||||
- "ti,twl4030-vintdig" for VINTDIG LDO
|
||||
- "ti,twl4030-vusb1v5" for VUSB1V5 LDO
|
||||
- "ti,twl4030-vusb1v8" for VUSB1V8 LDO
|
||||
- "ti,twl4030-vusb3v1" for VUSB3V1 LDO
|
||||
|
||||
Optional properties:
|
||||
- Any optional property defined in bindings/regulator/regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
xyz: regulator@0 {
|
||||
compatible = "ti,twl6030-vaux1";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
};
|
32
Documentation/devicetree/bindings/regulator/vexpress.txt
Normal file
32
Documentation/devicetree/bindings/regulator/vexpress.txt
Normal file
|
@ -0,0 +1,32 @@
|
|||
Versatile Express voltage regulators
|
||||
------------------------------------
|
||||
|
||||
Requires node properties:
|
||||
- "compatible" value: "arm,vexpress-volt"
|
||||
- "arm,vexpress-sysreg,func" when controlled via vexpress-sysreg
|
||||
(see Documentation/devicetree/bindings/arm/vexpress-sysreg.txt
|
||||
for more details)
|
||||
|
||||
Required regulator properties:
|
||||
- "regulator-name"
|
||||
- "regulator-always-on"
|
||||
|
||||
Optional regulator properties:
|
||||
- "regulator-min-microvolt"
|
||||
- "regulator-max-microvolt"
|
||||
|
||||
See Documentation/devicetree/bindings/regulator/regulator.txt
|
||||
for more details about the regulator properties.
|
||||
|
||||
When no "regulator-[min|max]-microvolt" properties are defined,
|
||||
the device is treated as fixed (or rather "read-only") regulator.
|
||||
|
||||
Example:
|
||||
volt@0 {
|
||||
compatible = "arm,vexpress-volt";
|
||||
arm,vexpress-sysreg,func = <2 0>;
|
||||
regulator-name = "Cores";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-always-on;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue