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

Commit 3e683126 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branches 'regulator/topic/mt6311',...

Merge remote-tracking branches 'regulator/topic/mt6311', 'regulator/topic/ocp', 'regulator/topic/owner', 'regulator/topic/pfuze100' and 'regulator/topic/pwm' into regulator-next
Loading
Loading
Loading
Loading
+35 −0
Original line number Original line Diff line number Diff line
Mediatek MT6311 Regulator Driver

Required properties:
- compatible: "mediatek,mt6311-regulator"
- reg: I2C slave address, usually 0x6b.
- regulators: List of regulators provided by this controller. It is named
  to VDVFS and VBIASN.
  The definition for each of these nodes is defined using the standard binding
  for regulators at Documentation/devicetree/bindings/regulator/regulator.txt.

The valid names for regulators are:
BUCK:
  VDVFS
LDO:
  VBIASN

Example:
	mt6311: pmic@6b {
		compatible = "mediatek,mt6311-regulator";
		reg = <0x6b>;

		regulators {
			mt6311_vcpu_reg: VDVFS {
				regulator-name = "VDVFS";
				regulator-min-microvolt = < 600000>;
				regulator-max-microvolt = <1400000>;
				regulator-ramp-delay = <10000>;
			};
			mt6311_ldo_reg: VBIASN {
				regulator-name = "VBIASN";
				regulator-min-microvolt = <200000>;
				regulator-max-microvolt = <800000>;
			};
		};
	};
+53 −12
Original line number Original line Diff line number Diff line
pwm regulator bindings
Bindings for the Generic PWM Regulator
======================================

Currently supports 2 modes of operation:

Voltage Table:		When in this mode, a voltage table (See below) of
			predefined voltage <=> duty-cycle values must be
			provided via DT. Limitations are that the regulator can
			only operate at the voltages supplied in the table.
			Intermediary duty-cycle values which would normally
			allow finer grained voltage selection are ignored and
			rendered useless.  Although more control is given to
			the user if the assumptions made in continuous-voltage
			mode do not reign true.

Continuous Voltage:	This mode uses the regulator's maximum and minimum
			supplied voltages specified in the
			regulator-{min,max}-microvolt properties to calculate
			appropriate duty-cycle values.  This allows for a much
			more fine grained solution when compared with
			voltage-table mode above.  This solution does make an
			assumption that a %50 duty-cycle value will cause the
			regulator voltage to run at half way between the
			supplied max_uV and min_uV values.


Required properties:
Required properties:
--------------------
- compatible:		Should be "pwm-regulator"
- 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
- pwms:			PWM specification (See: ../pwm/pwm.txt)
regulator.txt can also be used.

Only required for Voltage Table Mode:
- voltage-table: 	Voltage and Duty-Cycle table consisting of 2 cells
			    First cell is voltage in microvolts (uV)
			    Second cell is duty-cycle in percent (%)

NB: To be clear, if voltage-table is provided, then the device will be used
in Voltage Table Mode.  If no voltage-table is provided, then the device will
be used in Continuous Voltage Mode.

Any property defined as part of the core regulator binding can also be used.
(See: ../regulator/regulator.txt)


Example:
Continuous Voltage Example:
	pwm_regulator {
	pwm_regulator {
		compatible = "pwm-regulator;
		compatible = "pwm-regulator;
		pwms = <&pwm1 0 8448 0>;
		pwms = <&pwm1 0 8448 0>;
		regulator-min-microvolt = <1016000>;
		regulator-max-microvolt = <1114000>;
		regulator-name = "vdd_logic";
	};


Voltage Table Example:
	pwm_regulator {
		compatible = "pwm-regulator;
		pwms = <&pwm1 0 8448 0>;
		regulator-min-microvolt = <1016000>;
		regulator-max-microvolt = <1114000>;
		regulator-name = "vdd_logic";

			      /* Voltage Duty-Cycle */
		voltage-table = <1114000 0>,
		voltage-table = <1114000 0>,
				<1095000 10>,
				<1095000 10>,
				<1076000 20>,
				<1076000 20>,
				<1056000 30>,
				<1056000 30>,
				<1036000 40>,
				<1036000 40>,
				<1016000 50>;
				<1016000 50>;

		regulator-min-microvolt = <1016000>;
		regulator-max-microvolt = <1114000>;
		regulator-name = "vdd_logic";
	};
	};
+1 −0
Original line number Original line Diff line number Diff line
@@ -42,6 +42,7 @@ Optional properties:
- regulator-system-load: Load in uA present on regulator that is not captured by
- regulator-system-load: Load in uA present on regulator that is not captured by
  any consumer request.
  any consumer request.
- regulator-pull-down: Enable pull down resistor when the regulator is disabled.
- regulator-pull-down: Enable pull down resistor when the regulator is disabled.
- regulator-over-current-protection: Enable over current protection.


Deprecated properties:
Deprecated properties:
- regulator-compatible: If a regulator chip contains multiple
- regulator-compatible: If a regulator chip contains multiple
+9 −0
Original line number Original line Diff line number Diff line
@@ -443,6 +443,15 @@ config REGULATOR_MC13892
	  Say y here to support the regulators found on the Freescale MC13892
	  Say y here to support the regulators found on the Freescale MC13892
	  PMIC.
	  PMIC.


config REGULATOR_MT6311
	tristate "MediaTek MT6311 PMIC"
	depends on I2C
	help
	  Say y here to select this option to enable the power regulator of
	  MediaTek MT6311 PMIC.
	  This driver supports the control of different power rails of device
	  through regulator interface.

config REGULATOR_MT6397
config REGULATOR_MT6397
	tristate "MediaTek MT6397 PMIC"
	tristate "MediaTek MT6397 PMIC"
	depends on MFD_MT6397
	depends on MFD_MT6397
+1 −0
Original line number Original line Diff line number Diff line
@@ -59,6 +59,7 @@ obj-$(CONFIG_REGULATOR_MAX77802) += max77802.o
obj-$(CONFIG_REGULATOR_MC13783) += mc13783-regulator.o
obj-$(CONFIG_REGULATOR_MC13783) += mc13783-regulator.o
obj-$(CONFIG_REGULATOR_MC13892) += mc13892-regulator.o
obj-$(CONFIG_REGULATOR_MC13892) += mc13892-regulator.o
obj-$(CONFIG_REGULATOR_MC13XXX_CORE) +=  mc13xxx-regulator-core.o
obj-$(CONFIG_REGULATOR_MC13XXX_CORE) +=  mc13xxx-regulator-core.o
obj-$(CONFIG_REGULATOR_MT6311) += mt6311-regulator.o
obj-$(CONFIG_REGULATOR_MT6397)	+= mt6397-regulator.o
obj-$(CONFIG_REGULATOR_MT6397)	+= mt6397-regulator.o
obj-$(CONFIG_REGULATOR_QCOM_RPM) += qcom_rpm-regulator.o
obj-$(CONFIG_REGULATOR_QCOM_RPM) += qcom_rpm-regulator.o
obj-$(CONFIG_REGULATOR_QCOM_SPMI) += qcom_spmi-regulator.o
obj-$(CONFIG_REGULATOR_QCOM_SPMI) += qcom_spmi-regulator.o
Loading