Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc407334 authored by Laxman Dewangan's avatar Laxman Dewangan Committed by Mark Brown
Browse files

regulator: as3722: add regulator driver for AMS AS3722



The AMS AS3722 is a compact system PMU suitable for mobile phones,
tablets etc. It has 4 DCDC step down regulators, 3 DCDC step down
controller, 11 LDOs.

Add a driver to support accessing the DCDC/LDOs found on the AMS
AS3722 PMIC using regulators.

Signed-off-by: default avatarLaxman Dewangan <ldewangan@nvidia.com>
Signed-off-by: default avatarFlorian Lobmaier <florian.lobmaier@ams.com>
Signed-off-by: default avatarMark Brown <broonie@linaro.org>
parent 272b98c6
Loading
Loading
Loading
Loading
+91 −0
Original line number Diff line number Diff line
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;
			};
			....
		};
	};
+8 −0
Original line number Diff line number Diff line
@@ -133,6 +133,14 @@ config REGULATOR_AS3711
	  This driver provides support for the voltage regulators on the
	  AS3711 PMIC

config REGULATOR_AS3722
	tristate "AMS AS3722 PMIC Regulators"
	depends on MFD_AS3722
	help
	  This driver provides support for the voltage regulators on the
	  AS3722 PMIC. This will enable support for all the software
	  controllable DCDC/LDO regulators.

config REGULATOR_DA903X
	tristate "Dialog Semiconductor DA9030/DA9034 regulators"
	depends on PMIC_DA903X
+1 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ obj-$(CONFIG_REGULATOR_AD5398) += ad5398.o
obj-$(CONFIG_REGULATOR_ANATOP) += anatop-regulator.o
obj-$(CONFIG_REGULATOR_ARIZONA) += arizona-micsupp.o arizona-ldo1.o
obj-$(CONFIG_REGULATOR_AS3711) += as3711-regulator.o
obj-$(CONFIG_REGULATOR_AS3722) += as3722-regulator.o
obj-$(CONFIG_REGULATOR_DA903X)	+= da903x.o
obj-$(CONFIG_REGULATOR_DA9052)	+= da9052-regulator.o
obj-$(CONFIG_REGULATOR_DA9055)	+= da9055-regulator.o
+917 −0

File added.

Preview size limit exceeded, changes collapsed.