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

Commit 32c0ac3a authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull regulator updates from Mark Brown:
 "The bulk of the standout changes in this release are cleanups, with
  the core work being a combination of factoring out common code into
  helpers and the completion of the conversion of the core to use GPIO
  descriptors.

  Summary:

   - Addition of helper functions for current limits and conversion of
     drivers to use them by Axel Lin.

   - Lots and lots of cleanups from Axel Lin.

   - Conversion of the core to use GPIO descriptors rather than numbers
     by Linus Walleij.

   - New drivers for Maxim MAX77650 and ROHM BD70528"

* tag 'regulator-v5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (131 commits)
  regulator: mc13xxx: Constify regulator_ops variables
  regulator: palmas: Constify palmas_smps_ramp_delay array
  regulator: wm831x-dcdc: Convert to use regulator_set/get_current_limit_regmap
  regulator: pv88090: Convert to use regulator_set/get_current_limit_regmap
  regulator: pv88080: Convert to use regulator_set/get_current_limit_regmap
  regulator: pv88060: Convert to use regulator_set/get_current_limit_regmap
  regulator: max77650: Convert to use regulator_set/get_current_limit_regmap
  regulator: lp873x: Convert to use regulator_set/get_current_limit_regmap
  regulator: lp872x: Convert to use regulator_set/get_current_limit_regmap
  regulator: da9210: Convert to use regulator_set/get_current_limit_regmap
  regulator: da9055: Convert to use regulator_set/get_current_limit_regmap
  regulator: core: Add set/get_current_limit helpers for regmap users
  regulator: Fix comment for csel_reg and csel_mask
  regulator: stm32-vrefbuf: add power management support
  regulator: 88pm8607: Remove unused fields from struct pm8607_regulator_info
  regulator: 88pm8607: Simplify pm8607_list_voltage implementation
  regulator: cpcap: Constify omap4_regulators and xoom_regulators
  regulator: cpcap: Remove unused vsel_shift from struct cpcap_regulator
  dt-bindings: regulator: tps65218: rectify units of LS3
  dt-bindings: regulator: add LS2 load switch documentation
  ...
parents e48b044e 88f268a5
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -123,6 +123,7 @@ Mark Brown <broonie@sirena.org.uk>
Mark Yao <markyao0591@gmail.com> <mark.yao@rock-chips.com>
Martin Kepplinger <martink@posteo.de> <martin.kepplinger@theobroma-systems.com>
Martin Kepplinger <martink@posteo.de> <martin.kepplinger@ginzinger.com>
Mathieu Othacehe <m.othacehe@gmail.com>
Matthew Wilcox <willy@infradead.org> <matthew.r.wilcox@intel.com>
Matthew Wilcox <willy@infradead.org> <matthew@wil.cx>
Matthew Wilcox <willy@infradead.org> <mawilcox@linuxonhyperv.com>
+17 −0
Original line number Diff line number Diff line
@@ -23,6 +23,20 @@ Required properties:

Optional properties:
- clock-output-names	: Should contain name for output clock.
- rohm,reset-snvs-powered : Transfer BD718x7 to SNVS state at reset.

The BD718x7 supports two different HW states as reset target states. States
are called as SNVS and READY. At READY state all the PMIC power outputs go
down and OTP is reload. At the SNVS state all other logic and external
devices apart from the SNVS power domain are shut off. Please refer to NXP
i.MX8 documentation for further information regarding SNVS state. When a
reset is done via SNVS state the PMIC OTP data is not reload. This causes
power outputs that have been under SW control to stay down when reset has
switched power state to SNVS. If reset is done via READY state the power
outputs will be returned to HW control by OTP loading. Thus the reset
target state is set to READY by default. If SNVS state is used the boot
crucial regulators must have the regulator-always-on and regulator-boot-on
properties set in regulator node.

Example:

@@ -43,6 +57,7 @@ Example:
		#clock-cells = <0>;
		clocks = <&osc 0>;
		clock-output-names = "bd71837-32k-out";
		rohm,reset-snvs-powered;

		regulators {
			buck1: BUCK1 {
@@ -50,8 +65,10 @@ Example:
				regulator-min-microvolt = <700000>;
				regulator-max-microvolt = <1300000>;
				regulator-boot-on;
				regulator-always-on;
				regulator-ramp-delay = <1250>;
			};
			// [...]
		};
	};

+2 −1
Original line number Diff line number Diff line
Binding for Fairchild FAN53555 regulators

Required properties:
  - compatible: one of "fcs,fan53555", "silergy,syr827", "silergy,syr828"
  - compatible: one of "fcs,fan53555", "fcs,fan53526", "silergy,syr827" or
		"silergy,syr828"
  - reg: I2C address

Optional properties:
+0 −35
Original line number Diff line number Diff line
Fixed Voltage regulators

Required properties:
- compatible: Must be "regulator-fixed";
- regulator-name: Defined in regulator.txt as optional, but required here.

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>;
	};
+67 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/fixed-regulator.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Fixed Voltage regulators

maintainers:
  - Liam Girdwood <lgirdwood@gmail.com>
  - Mark Brown <broonie@kernel.org>

description:
  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.

properties:
  compatible:
    const: regulator-fixed

  regulator-name: true

  gpio:
    description: gpio to use for enable control
    maxItems: 1

  startup-delay-us:
    description: startup time in microseconds
    $ref: /schemas/types.yaml#/definitions/uint32

  enable-active-high:
    description:
      Polarity of GPIO is Active high. If this property is missing,
      the default assumed is Active low.
    type: boolean

  gpio-open-drain:
    description:
      GPIO is open drain type. If this property is missing then default
      assumption is false.
    type: boolean

  vin-supply:
    description: Input supply phandle.
    $ref: /schemas/types.yaml#/definitions/phandle

required:
  - compatible
  - regulator-name

examples:
  - |
    reg_1v8: regulator-1v8 {
      compatible = "regulator-fixed";
      regulator-name = "1v8";
      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>;
    };
...
Loading