Skip to content

Commit

Permalink
Merge tag 'regulator-v3.18' of git://git.kernel.org/pub/scm/linux/ker…
Browse files Browse the repository at this point in the history
…nel/git/broonie/regulator

Pull regulator updates from Mark Brown:
 "This time around most of the changes are a lot of new drivers along
  with the standard set of fixes and cleanups (thanks again largely to
  Axel Lin).  We do have one nice new feature in the core which factors
  out the disappointingly tricky code around DT parsing, only a couple
  of drivers have been converted so far:

   - Factor out the code for parsing the standard bindings for a set of
     regulators out of DT, making the probe part of a lot of drivers
     simplier.
   - New drivers for Dialog DA9213, HiSilicon HI6420, Intersil
     ISL9305/H, Ricoh RN5T618, Rockchip RK808, Skyworks SKY81452,
     Silergy SYR82x, and Qualcomm RPM"

* tag 'regulator-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (71 commits)
  regulator: da9211: Fix a bug in update of mask bit
  regulator: pwm-regulator: add devicetree bindings for pwm regulator
  regulator: pwm-regulator: get voltage and duty table from dts
  regulator: qcom_rpm: Fix FORCE_MODE_IS_2_BITS macro
  regulator: qcom_rpm: Don't explicitly initialise the first field of config
  regulator: ltc3589: fix broken voltage transitions
  regulator: qcom-rpm: Regulator driver for the Qualcomm RPM
  regulator: axp20x: Use parent device as regulator configuration device
  regulator: fan53555: Fix null pointer dereference
  regulator: fan53555: Fixup report wrong vendor message
  regulator: fan53555: fix wrong cast in probe
  regulator: fan53555: add support for Silergy SYR82x regulators
  regulator: fan53555: add devicetree support
  regulator: add devicetree bindings for Fairchild FAN53555 regulators
  regulator: rk808: Add function for ramp delay for buck1/buck2
  regulator: fan53555: use set_ramp_delay to set the ramp up slew rate
  regulator: fan53555: enable vin supply
  regulator: rk808: Fix missing of_node_put
  regulator: rk808: Remove unused variables
  regulator: of: Add stub OF match function for !OF case
  ...
  • Loading branch information
torvalds committed Oct 8, 2014
2 parents c831dd7 + ad21edc commit 81e29b7
Show file tree
Hide file tree
Showing 46 changed files with 4,320 additions and 770 deletions.
63 changes: 63 additions & 0 deletions Documentation/devicetree/bindings/regulator/da9211.txt
Original file line number Diff line number Diff line change
@@ -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 changes: 23 additions & 0 deletions Documentation/devicetree/bindings/regulator/fan53555.txt
Original file line number Diff line number Diff line change
@@ -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>;
};
36 changes: 36 additions & 0 deletions Documentation/devicetree/bindings/regulator/isl9305.txt
Original file line number Diff line number Diff line change
@@ -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;
};
};
};
28 changes: 28 additions & 0 deletions Documentation/devicetree/bindings/regulator/max1586-regulator.txt
Original file line number Diff line number Diff line change
@@ -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 changes: 53 additions & 0 deletions Documentation/devicetree/bindings/regulator/max77802.txt
Original file line number Diff line number Diff line change
@@ -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;
};
};
27 changes: 27 additions & 0 deletions Documentation/devicetree/bindings/regulator/pwm-regulator.txt
Original file line number Diff line number Diff line change
@@ -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";
};
16 changes: 16 additions & 0 deletions Documentation/devicetree/bindings/regulator/sky81452-regulator.txt
Original file line number Diff line number Diff line change
@@ -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>;
};
2 changes: 2 additions & 0 deletions Documentation/devicetree/bindings/vendor-prefixes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ epson Seiko Epson Corp.
est ESTeem Wireless Modems
eukrea Eukréa Electromatique
excito Excito
fcs Fairchild Semiconductor
fsl Freescale Semiconductor
GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc.
gef GE Fanuc Intelligent Platforms Embedded Systems, Inc.
Expand Down Expand Up @@ -124,6 +125,7 @@ sil Silicon Image
silabs Silicon Laboratories
simtek
sii Seiko Instruments, Inc.
silergy Silergy Corp.
sirf SiRF Technology, Inc.
smsc Standard Microsystems Corporation
snps Synopsys, Inc.
Expand Down
1 change: 1 addition & 0 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -9895,6 +9895,7 @@ F: drivers/scsi/vmw_pvscsi.h
VOLTAGE AND CURRENT REGULATOR FRAMEWORK
M: Liam Girdwood <[email protected]>
M: Mark Brown <[email protected]>
L: [email protected]
W: http://opensource.wolfsonmicro.com/node/15
W: http://www.slimlogic.co.uk/?p=48
T: git git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git
Expand Down
Loading

0 comments on commit 81e29b7

Please sign in to comment.