Commit bf977a9a authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull regulator updates from Mark Brown:
 "The big change in this release is the addition of Rust bindings from
  Daniel Almeida, allowing fairly basic consumer use with support for
  enable and voltage setting operations. This should be good for the
  vast majority of consumers.

  Otherwise it's been quite quiet, a few new devices supported, plus
  some cleanups and fixes.

  Summary:

   - Basic Rust bindings

   - A fix for making large voltage changes on regulators where we limit
     the size of voltage change we will do in one step, previously we
     just got as close as we could in one step

   - Cleanups of our usage of the PM autosuspend functions, this pulls
     in some PM core changes on a shared tag

   - Mode setting support for PCA9450

   - Support for Mediatek MT6893 and MT8196 DVFSRC, Qualcomm PM7550 and
     PMR735B, Raspberry Pi displays and TI TPS652G1

  The TI driver pulls in the MFD portion of the support for the device
  and the pinctrl driver which was in the same tag"

* tag 'regulator-v6.17' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (40 commits)
  regulator: mt6370: Fix spelling mistake in mt6370_regualtor_register
  regulator: Kconfig: Fix spelling mistake "regualtor" -> "regulator"
  regulator: core: repeat voltage setting request for stepped regulators
  regulator: rt6160: Add rt6166 vout min_uV setting for compatible
  MAINTAINERS: add regulator.rs to the regulator API entry
  rust: regulator: add a bare minimum regulator abstraction
  regulator: tps6286x-regulator: Fix a copy & paste error
  regulator: qcom-rpmh: add support for pm7550 regulators
  regulator: qcom-rpmh: add support for pmr735b regulators
  regulator: dt-bindings: qcom,rpmh: Add PMR735B compatible
  regulator: dt-bindings: qcom,rpmh: Add PM7550 compatible
  regulator: tps6594-regulator: Add TI TPS652G1 PMIC regulators
  regulator: tps6594-regulator: refactor variant descriptions
  regulator: tps6594-regulator: remove hardcoded buck config
  regulator: tps6594-regulator: remove interrupt_count
  dt-bindings: mfd: ti,tps6594: Add TI TPS652G1 PMIC
  pinctrl: pinctrl-tps6594: Add TPS652G1 PMIC pinctrl and GPIO
  misc: tps6594-pfsm: Add TI TPS652G1 PMIC PFSM
  mfd: tps6594: Add TI TPS652G1 support
  regulator: sy8827n: make enable gpio NONEXCLUSIVE
  ...
parents 5339a2ae 0bd042ae
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ properties:
      - ti,tps6593-q1
      - ti,tps6594-q1
      - ti,tps65224-q1
      - ti,tps652g1

  reg:
    description: I2C slave address or SPI chip select number.
+2 −0
Original line number Diff line number Diff line
@@ -17,9 +17,11 @@ properties:
  compatible:
    enum:
      - mediatek,mt6873-dvfsrc-regulator
      - mediatek,mt6893-dvfsrc-regulator
      - mediatek,mt8183-dvfsrc-regulator
      - mediatek,mt8192-dvfsrc-regulator
      - mediatek,mt8195-dvfsrc-regulator
      - mediatek,mt8196-dvfsrc-regulator

  dvfsrc-vcore:
    description: DVFSRC-controlled SoC Vcore regulator
+14 −0
Original line number Diff line number Diff line
@@ -100,6 +100,15 @@ properties:
              PMIC default "STANDBY" state voltage in uV. Only Buck1~3 have such
              dvs(dynamic voltage scaling) property.

          regulator-allowed-modes:
            description: |
              Buck regulator operating modes allowed. Valid values below.
              Users should use the macros from dt-bindings/regulator/nxp,pca9450-regulator.h
                0 (PCA9450_BUCK_MODE_AUTO): Auto PFM/PWM mode
                1 (PCA9450_BUCK_MODE_FORCE_PWM): Forced PWM mode
            items:
              enum: [ 0, 1 ]

        unevaluatedProperties: false

    additionalProperties: false
@@ -143,6 +152,7 @@ allOf:
examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/regulator/nxp,pca9450-regulator.h>

    i2c {
        #address-cells = <1>;
@@ -179,6 +189,8 @@ examples:
                    regulator-max-microvolt = <3400000>;
                    regulator-boot-on;
                    regulator-always-on;
                    regulator-initial-mode = <PCA9450_BUCK_MODE_FORCE_PWM>;
                    regulator-allowed-modes = <PCA9450_BUCK_MODE_FORCE_PWM>;
                };
                buck5: BUCK5 {
                    regulator-name = "BUCK5";
@@ -186,6 +198,8 @@ examples:
                    regulator-max-microvolt = <3400000>;
                    regulator-boot-on;
                    regulator-always-on;
                    regulator-allowed-modes = <PCA9450_BUCK_MODE_AUTO
                                               PCA9450_BUCK_MODE_FORCE_PWM>;
                };
                buck6: BUCK6 {
                    regulator-name = "BUCK6";
+35 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ description: |
      For PM660, smps1 - smps6, ldo1 - ldo3, ldo5 - ldo19
      For PM660L, smps1 - smps3, smps5, ldo1 - ldo8, bob
      For PM7325, smps1 - smps8, ldo1 - ldo19
      For PM7550, smps1 - smps6, ldo1 - ldo23, bob
      For PM8005, smps1 - smps4
      For PM8009, smps1 - smps2, ldo1 - ldo7
      For PM8010, ldo1 - ldo7
@@ -53,6 +54,7 @@ description: |
      For PMI8998, bob
      For PMC8380, smps1 - smps8, ldo1 - lodo3
      For PMR735A, smps1 - smps3, ldo1 - ldo7
      For PMR735B, ldo1 - ldo12
      For PMX55, smps1 - smps7, ldo1 - ldo16
      For PMX65, smps1 - smps8, ldo1 - ldo21
      For PMX75, smps1 - smps10, ldo1 - ldo21
@@ -66,6 +68,7 @@ properties:
      - qcom,pm660-rpmh-regulators
      - qcom,pm660l-rpmh-regulators
      - qcom,pm7325-rpmh-regulators
      - qcom,pm7550-rpmh-regulators
      - qcom,pm8005-rpmh-regulators
      - qcom,pm8009-rpmh-regulators
      - qcom,pm8009-1-rpmh-regulators
@@ -87,6 +90,7 @@ properties:
      - qcom,pmm8155au-rpmh-regulators
      - qcom,pmm8654au-rpmh-regulators
      - qcom,pmr735a-rpmh-regulators
      - qcom,pmr735b-rpmh-regulators
      - qcom,pmx55-rpmh-regulators
      - qcom,pmx65-rpmh-regulators
      - qcom,pmx75-rpmh-regulators
@@ -218,6 +222,25 @@ allOf:
        "^vdd-l[358]-supply$": true
        "^vdd-s[1-8]-supply$": true

  - if:
      properties:
        compatible:
          enum:
            - qcom,pm7550-rpmh-regulators
    then:
      properties:
        vdd-bob-supply:
          description: BOB regulator parent supply phandle.
        vdd-l2-l3-supply: true
        vdd-l4-l5-supply: true
        vdd-l9-l10-supply: true
        vdd-l12-l14-supply: true
        vdd-l13-l16-supply: true
        vdd-l15-l17-l18-l19-l20-l21-l22-l23-supply: true
      patternProperties:
        "^vdd-l(1|[6-8]|11)-supply$": true
        "^vdd-s[1-6]-supply$": true

  - if:
      properties:
        compatible:
@@ -424,6 +447,18 @@ allOf:
      patternProperties:
        "^vdd-s[1-3]-supply$": true

  - if:
      properties:
        compatible:
          enum:
            - qcom,pmr735b-rpmh-regulators
    then:
      properties:
        vdd-l1-l2-supply: true
        vdd-l7-l8-supply: true
      patternProperties:
        "^vdd-l([3-6]|9|1[0-2])-supply$": true

  - if:
      properties:
        compatible:
+5 −2
Original line number Diff line number Diff line
@@ -12,14 +12,17 @@ maintainers:
description: |
  The RaspberryPi 7" display has an ATTINY88-based regulator/backlight
  controller on the PCB, which is used to turn the display unit on/off
  and control the backlight.
  and control the backlight. The V2 supports 5" and 7" panels and also
  offers PWM backlight control.

allOf:
  - $ref: regulator.yaml#

properties:
  compatible:
    const: raspberrypi,7inch-touchscreen-panel-regulator
    enum:
      - raspberrypi,7inch-touchscreen-panel-regulator
      - raspberrypi,touchscreen-panel-regulator-v2

  reg:
    maxItems: 1
Loading