Commit da968017 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull regulator updates from Mark Brown:
 "The main updates for this release are around monitoring of regulators,
  largely for error handling purposes. We allow the stream of regulator
  events to be seen by userspace as netlink events and allow system
  integrators to describe individual regulators as system critical with
  information on how long the system is expected to last on error. The
  system level error handling is very much about best effort problem
  mitigation rather than providing something fully robust, the initial
  drive was to provide a mechanism for trying to avoid initiating any
  new writes to flash once we notice the power going out.

  Otherwise it's very quiet, mainly several new Qualcomm devices.

   - Support for marking regulators as system critical and providing
     information on how long the system might last with those regulators
     in a failure state, hooked into the existing critical shutdown
     error handling.

   - Optional support for generating netlink events for events, there
     are use cases for system monitoring UIs and error handling.

   - A command line option to leave unused controllable regulators
     enabled, useful for debugging. We already only disable regulators
     we were explicitly given permission to control.

   - Support for Quacomm MP5496, PM8010 and PM8937"

* tag 'regulator-v6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (31 commits)
  regulator: event: Ensure atomicity for sequence number
  uapi: regulator: Fix typo
  regulator: Reuse LINEAR_RANGE() in REGULATOR_LINEAR_RANGE()
  dt-bindings: regulator: qcom,usb-vbus-regulator: clean up example
  regulator: qcom_smd: Add LDO5 MP5496 regulator
  regulator: qcom-rpmh: add support for pm8010 regulators
  regulator: dt-bindings: qcom,rpmh: add compatible for pm8010
  regulator: qcom-rpmh: extend to support multiple linear voltage ranges
  regulator: wm8350: Convert to platform remove callback returning void
  regulator: virtual: Convert to platform remove callback returning void
  regulator: userspace-consumer: Convert to platform remove callback returning void
  regulator: uniphier: Convert to platform remove callback returning void
  regulator: stm32-vrefbuf: Convert to platform remove callback returning void
  regulator: db8500-prcmu: Convert to platform remove callback returning void
  regulator: bd9571mwv: Convert to platform remove callback returning void
  regulator: arizona-ldo1: Convert to platform remove callback returning void
  regulator: event: Add regulator netlink event support
  regulator: event: Add regulator netlink event support
  regulator: stpmic1: Fix kernel-doc notation warnings
  regulator: palmas: remove redundant initialization of pointer pdata
  ...
parents 83130ff4 1cadc04c
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -5544,6 +5544,13 @@
			print every Nth verbose statement, where N is the value
			specified.

	regulator_ignore_unused
			[REGULATOR]
			Prevents regulator framework from disabling regulators
			that are unused, due no driver claiming them. This may
			be useful for debug and development, but should not be
			needed on a platform with proper driver support.

	relax_domain_level=
			[KNL, SMP] Set scheduler's default relax_domain_level.
			See Documentation/admin-guide/cgroup-v1/cpusets.rst.
+2 −0
Original line number Diff line number Diff line
@@ -105,6 +105,8 @@ properties:
    description:
      Interrupt signaling a critical under-voltage event.

  system-critical-regulator: true

required:
  - compatible
  - regulator-name
+14 −0
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@ description: |
      For PM7325, smps1 - smps8, ldo1 - ldo19
      For PM8005, smps1 - smps4
      For PM8009, smps1 - smps2, ldo1 - ldo7
      For PM8010, ldo1 - ldo7
      For PM8150, smps1 - smps10, ldo1 - ldo18
      For PM8150L, smps1 - smps8, ldo1 - ldo11, bob, flash, rgb
      For PM8350, smps1 - smps12, ldo1 - ldo10
@@ -68,6 +69,7 @@ properties:
      - qcom,pm8005-rpmh-regulators
      - qcom,pm8009-rpmh-regulators
      - qcom,pm8009-1-rpmh-regulators
      - qcom,pm8010-rpmh-regulators
      - qcom,pm8150-rpmh-regulators
      - qcom,pm8150l-rpmh-regulators
      - qcom,pm8350-rpmh-regulators
@@ -238,6 +240,18 @@ allOf:
        "^vdd-l[1-47]-supply$": true
        "^vdd-s[1-2]-supply$": true

  - if:
      properties:
        compatible:
          enum:
            - qcom,pm8010-rpmh-regulators
    then:
      properties:
        vdd-l1-l2-supply: true
        vdd-l3-l4-supply: true
      patternProperties:
        "^vdd-l[5-7]-supply$": true

  - if:
      properties:
        compatible:
+4 −0
Original line number Diff line number Diff line
@@ -47,6 +47,9 @@ description:
  For pm8916, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
  l12, l13, l14, l15, l16, l17, l18

  For pm8937, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10,
  l11, l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23

  For pm8941, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
  l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, lvs1, lvs2,
  lvs3, 5vs1, 5vs2
@@ -92,6 +95,7 @@ properties:
      - qcom,rpm-pm8841-regulators
      - qcom,rpm-pm8909-regulators
      - qcom,rpm-pm8916-regulators
      - qcom,rpm-pm8937-regulators
      - qcom,rpm-pm8941-regulators
      - qcom,rpm-pm8950-regulators
      - qcom,rpm-pm8953-regulators
+19 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ properties:
      - qcom,pm8841-regulators
      - qcom,pm8909-regulators
      - qcom,pm8916-regulators
      - qcom,pm8937-regulators
      - qcom,pm8941-regulators
      - qcom,pm8950-regulators
      - qcom,pm8994-regulators
@@ -291,6 +292,24 @@ allOf:
      patternProperties:
        "^vdd_s[1-3]-supply$": true

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,pm8937-regulators
    then:
      properties:
        vdd_l1_l19-supply: true
        vdd_l20_l21-supply: true
        vdd_l2_l23-supply: true
        vdd_l3-supply: true
        vdd_l4_l5_l6_l7_l16-supply: true
        vdd_l8_l11_l12_l17_l22-supply: true
        vdd_l9_l10_l13_l14_l15_l18-supply: true
      patternProperties:
        "^vdd_s[1-6]-supply$": true

  - if:
      properties:
        compatible:
Loading