Skip to content

Commit

Permalink
Merge remote-tracking branch 'regulator/topic/vctrl' into regulator-next
Browse files Browse the repository at this point in the history
  • Loading branch information
broonie committed Apr 30, 2017
2 parents 81bc8e3 + a9bbb45 commit ae53b5d
Show file tree
Hide file tree
Showing 4 changed files with 603 additions and 0 deletions.
49 changes: 49 additions & 0 deletions Documentation/devicetree/bindings/regulator/vctrl.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
Bindings for Voltage controlled regulators
==========================================

Required properties:
--------------------
- compatible : must be "vctrl-regulator".
- regulator-min-microvolt : smallest voltage consumers may set
- regulator-max-microvolt : largest voltage consumers may set
- ctrl-supply : The regulator supplying the control voltage.
- ctrl-voltage-range : an array of two integer values describing the range
(min/max) of the control voltage. The values specify
the control voltage needed to generate the corresponding
regulator-min/max-microvolt output voltage.

Optional properties:
--------------------
- ovp-threshold-percent : overvoltage protection (OVP) threshold of the
regulator in percent. Some regulators have an OVP
circuitry which shuts down the regulator when the
actual output voltage deviates beyond a certain
margin from the expected value for a given control
voltage. On larger voltage decreases this can occur
undesiredly since the output voltage does not adjust
inmediately to changes in the control voltage. To
avoid this situation the vctrl driver breaks down
larger voltage decreases into multiple steps, where
each step is within the OVP threshold.
- min-slew-down-rate : Describes how slowly the regulator voltage will decay
down in the worst case (lightest expected load).
Specified in uV / us (like main regulator ramp rate).
This value is required when ovp-threshold-percent is
specified.

Example:

vctrl-reg {
compatible = "vctrl-regulator";
regulator-name = "vctrl_reg";

ctrl-supply = <&ctrl_reg>;

regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1500000>;

ctrl-voltage-range = <200000 500000>;

min-slew-down-rate = <225>;
ovp-threshold-percent = <16>;
};
7 changes: 7 additions & 0 deletions drivers/regulator/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -877,6 +877,13 @@ config REGULATOR_TWL4030
This driver supports the voltage regulators provided by
this family of companion chips.

config REGULATOR_VCTRL
tristate "Voltage controlled regulators"
depends on OF
help
This driver provides support for voltage regulators whose output
voltage is controlled by the voltage of another regulator.

config REGULATOR_VEXPRESS
tristate "Versatile Express regulators"
depends on VEXPRESS_CONFIG
Expand Down
1 change: 1 addition & 0 deletions drivers/regulator/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ obj-$(CONFIG_REGULATOR_TPS65912) += tps65912-regulator.o
obj-$(CONFIG_REGULATOR_TPS80031) += tps80031-regulator.o
obj-$(CONFIG_REGULATOR_TPS65132) += tps65132-regulator.o
obj-$(CONFIG_REGULATOR_TWL4030) += twl-regulator.o twl6030-regulator.o
obj-$(CONFIG_REGULATOR_VCTRL) += vctrl-regulator.o
obj-$(CONFIG_REGULATOR_VEXPRESS) += vexpress-regulator.o
obj-$(CONFIG_REGULATOR_WM831X) += wm831x-dcdc.o
obj-$(CONFIG_REGULATOR_WM831X) += wm831x-isink.o
Expand Down
Loading

0 comments on commit ae53b5d

Please sign in to comment.