projects/linux·commit 27bc0782

Merge tag 'mfd-next-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd

27bc0782 · Linus Torvalds <[email protected]> · 2023-11-02 14:40:51 -10:00

Pull MFD updates from Lee Jones:
 "Core Frameworks:
   - Allow all MFD Cell properties to be filled in dynamically at
     runtime
   - Skip disabled device nodes and continue to look for subsequent
     devices

  New Device Support:
   - Add support for Lunar Lake-M PCI to Intel LPSS PCI
   - Add support for Denverton to Intel ICH LPC

  New Functionality:
   - Add support for Clocks to Texas Instruments TWL* Core
   - Add support for Interrupts to STMicroelectronics STM32 Timers

  Fix-ups:
   - Convert to new devm-* (managed) power-off API
   - Remove superfluous code
   - Bunch of Device Tree additions, conversions and adaptions
   - Simplify obtaining resources (memory, device data) using unified
     API helpers
   - Trivial coding-style / spelling type clean-ups
   - Constify / staticify changes
   - Expand or edit on existing documentation
   - Convert some Regmap configurations to use the Maple Tree cache
   - Apply new __counted_by() annotation to several data structures
     containing flexible arrays
   - Replace strncpy() with strscpy()

  Bug Fixes:
   - Remove double put creating reference imbalances
   - Ensure headphone/lineout detection gets set when booting with ACPI"

* tag 'mfd-next-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (73 commits)
  mfd: lpc_ich: Mark *_gpio_offsets data with const
  spmi: rename spmi device lookup helper
  spmi: document spmi_device_from_of() refcounting
  dt-bindings: mfd: armltd: Move Arm board syscon's to separate schema
  mfd: rk8xx: Add support for RK806 power off
  mfd: rk8xx: Add support for standard system-power-controller property
  dt-bindings: mfd: rk806: Allow system-power-controller property
  dt-bindings: mfd: rk8xx: Deprecate rockchip,system-power-controller
  dt-bindings: mfd: max8925: Convert to DT schema format
  mfd: Use i2c_get_match_data() in a selection of drivers
  mfd: Use device_get_match_data() in a bunch of drivers
  mfd: mc13xxx-spi/wm831x-spi: Use spi_get_device_match_data()
  mfd: motorola-cpcap: Drop unnecessary of_match_device() call
  mfd: arizona-spi: Set pdata.hpdet_channel for ACPI enumerated devs
  mfd: qcom-spmi-pmic: Switch to EXPORT_SYMBOL_GPL()
  mfd: qcom-spmi-pmic: Fix revid implementation
  mfd: qcom-spmi-pmic: Fix reference leaks in revid helper
  mfd: intel-m10-bmc: Change contact for ABI docs
  mfd: max8907: Convert to use maple tree register cache
  mfd: max77686: Convert to use maple tree register cache
  ...
Commit
27bc0782ef8ec26ed94b9fa16c75c11fdb3cd78b
Parents
edd8e84a · 2b481822

Merge commit. Changes below are compared with the first parent: edd8e84a.

Changes

86 files changed · +1159 −730

FileStatusAddDelContent
Documentation/ABI/testing/sysfs-driver-intel-m10-bmcmodified+2−2View file
Documentation/devicetree/bindings/arm/arm,integrator.yamlmodified+0−39View file
Documentation/devicetree/bindings/arm/arm,realview.yamlmodified+0−37View file
Documentation/devicetree/bindings/arm/arm,versatile.yamlmodified+8−32View file
Documentation/devicetree/bindings/input/twl4030-pwrbutton.txtmodified+1−1View file
Documentation/devicetree/bindings/leds/backlight/max8925-backlight.txtdeleted+0−10View before deletion
Documentation/devicetree/bindings/leds/register-bit-led.yamlmodified+1−1View file
Documentation/devicetree/bindings/mfd/arm,dev-platforms-syscon.yamladded+67−0View file
Documentation/devicetree/bindings/mfd/max8925.txtdeleted+0−64View before deletion
Documentation/devicetree/bindings/mfd/max8998.txtdeleted+0−125View before deletion
Documentation/devicetree/bindings/mfd/maxim,max5970.yamlmodified+5−0View file
Documentation/devicetree/bindings/mfd/maxim,max8925.yamladded+145−0View file
Documentation/devicetree/bindings/mfd/maxim,max8998.yamladded+324−0View file
Documentation/devicetree/bindings/mfd/mediatek,mt6357.yamlmodified+2−0View file
Documentation/devicetree/bindings/mfd/mt6397.txtmodified+3−1View file
Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yamlmodified+8−3View file
Documentation/devicetree/bindings/mfd/qcom,tcsr.yamlmodified+1−0View file
Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yamlmodified+25−1View file
Documentation/devicetree/bindings/mfd/rockchip,rk805.yamlmodified+4−0View file
Documentation/devicetree/bindings/mfd/rockchip,rk806.yamlmodified+2−0View file
Documentation/devicetree/bindings/mfd/rockchip,rk808.yamlmodified+4−0View file
Documentation/devicetree/bindings/mfd/rockchip,rk809.yamlmodified+5−1View file
Documentation/devicetree/bindings/mfd/rockchip,rk817.yamlmodified+3−0View file
Documentation/devicetree/bindings/mfd/rockchip,rk818.yamlmodified+4−0View file
Documentation/devicetree/bindings/mfd/stericsson,db8500-prcmu.yamlmodified+1−1View file
Documentation/devicetree/bindings/mfd/syscon.yamlmodified+2−0View file
Documentation/devicetree/bindings/mfd/ti,lp87524-q1.yamlmodified+1−0View file
Documentation/devicetree/bindings/mfd/ti,lp87561-q1.yamlmodified+1−0View file
Documentation/devicetree/bindings/mfd/ti,lp87565-q1.yamlmodified+1−0View file
Documentation/devicetree/bindings/mfd/ti,twl.yamladded+67−0View file
Documentation/devicetree/bindings/mfd/twl-family.txtdeleted+0−46View before deletion
Documentation/devicetree/bindings/mfd/x-powers,axp152.yamlmodified+4−1View file
Documentation/devicetree/bindings/power/supply/max8925_battery.txtdeleted+0−18View before deletion
drivers/i2c/i2c-core.hmodified+1−1View file
drivers/mfd/arizona-i2c.cmodified+2−9View file
drivers/mfd/arizona-spi.cmodified+3−0View file
drivers/mfd/atmel-hlcdc.cmodified+1−0View file
drivers/mfd/axp20x.cmodified+27−39View file
drivers/mfd/db8500-prcmu.cmodified+2−2View file
drivers/mfd/dln2.cmodified+0−1View file
drivers/mfd/hi6421-pmic-core.cmodified+3−6View file
drivers/mfd/intel-lpss-pci.cmodified+13−0View file
drivers/mfd/iqs62x.cmodified+1−1View file
drivers/mfd/lochnagar-i2c.cmodified+2−7View file
drivers/mfd/lp87565.cmodified+3−6View file
drivers/mfd/lpc_ich.cmodified+103−24View file
drivers/mfd/madera-i2c.cmodified+1−8View file
drivers/mfd/max14577.cmodified+3−11View file
drivers/mfd/max77541.cmodified+1−5View file
drivers/mfd/max77620.cmodified+3−3View file
drivers/mfd/max77686.cmodified+1−1View file
drivers/mfd/max8907.cmodified+2−2View file
drivers/mfd/max8997.cmodified+1−11View file
drivers/mfd/max8998.cmodified+1−11View file
drivers/mfd/mc13xxx-spi.cmodified+2−12View file
drivers/mfd/mfd-core.cmodified+12−5View file
drivers/mfd/motorola-cpcap.cmodified+1−6View file
drivers/mfd/mxs-lradc.cmodified+2−7View file
drivers/mfd/palmas.cmodified+23−37View file
drivers/mfd/qcom-spmi-pmic.cmodified+77−32View file
drivers/mfd/qcom_rpm.cmodified+4−4View file
drivers/mfd/rk8xx-core.cmodified+6−1View file
drivers/mfd/rk8xx-i2c.cmodified+3−3View file
drivers/mfd/rn5t618.cmodified+2−9View file
drivers/mfd/stm32-timers.cmodified+46−0View file
drivers/mfd/tps65086.cmodified+1−1View file
drivers/mfd/tps65090.cmodified+1−1View file
drivers/mfd/tps65218.cmodified+1−1View file
drivers/mfd/tps6586x.cmodified+43−9View file
drivers/mfd/tps65910.cmodified+3−10View file
drivers/mfd/tps65912-core.cmodified+1−1View file
drivers/mfd/twl-core.cmodified+17−1View file
drivers/mfd/twl4030-power.cmodified+3−6View file
drivers/mfd/twl6030-irq.cmodified+5−5View file
drivers/mfd/wcd934x.cmodified+1−1View file
drivers/mfd/wm831x-i2c.cmodified+4−12View file
drivers/mfd/wm831x-spi.cmodified+4−12View file
drivers/mfd/wm8994-core.cmodified+1−10View file
drivers/spmi/spmi.cmodified+6−3View file
include/linux/mfd/abx500/ab8500.hmodified+0−6View file
include/linux/mfd/core.hmodified+1−1View file
include/linux/mfd/lpc_ich.hmodified+5−2View file
include/linux/mfd/stm32-timers.hmodified+11−0View file
include/linux/reboot.hmodified+3−0View file
include/linux/spmi.hmodified+1−1View file
kernel/reboot.cmodified+4−0View file

Only the first 600 diff lines are shown. Download the complete patch.

Documentation/ABI/testing/sysfs-driver-intel-m10-bmc

View file
diff --git a/Documentation/ABI/testing/sysfs-driver-intel-m10-bmc b/Documentation/ABI/testing/sysfs-driver-intel-m10-bmc
index a8ab580..c12316d 100644
--- a/Documentation/ABI/testing/sysfs-driver-intel-m10-bmc
+++ b/Documentation/ABI/testing/sysfs-driver-intel-m10-bmc
@@ -17,7 +17,7 @@ Description: Read only. Returns the firmware version of Intel MAX10
What: /sys/bus/.../drivers/intel-m10-bmc/.../mac_address
Date: January 2021
KernelVersion: 5.12
-Contact: Russ Weight <[email protected]>
+Contact: Peter Colberg <[email protected]>
Description: Read only. Returns the first MAC address in a block
of sequential MAC addresses assigned to the board
that is managed by the Intel MAX10 BMC. It is stored in
@@ -28,7 +28,7 @@ Description: Read only. Returns the first MAC address in a block
What: /sys/bus/.../drivers/intel-m10-bmc/.../mac_count
Date: January 2021
KernelVersion: 5.12
-Contact: Russ Weight <[email protected]>
+Contact: Peter Colberg <[email protected]>
Description: Read only. Returns the number of sequential MAC
addresses assigned to the board managed by the Intel
MAX10 BMC. This value is stored in FLASH and is mirrored

Documentation/devicetree/bindings/arm/arm,integrator.yaml

View file
diff --git a/Documentation/devicetree/bindings/arm/arm,integrator.yaml b/Documentation/devicetree/bindings/arm/arm,integrator.yaml
index 98ff569..1bdbd1b 100644
--- a/Documentation/devicetree/bindings/arm/arm,integrator.yaml
+++ b/Documentation/devicetree/bindings/arm/arm,integrator.yaml
@@ -40,45 +40,6 @@ properties:
items:
- const: arm,integrator-sp
- core-module@10000000:
- type: object
- description: the root node in the Integrator platforms must contain
- a core module child node. They are always at physical address
- 0x10000000 in all the Integrator variants.
- properties:
- compatible:
- items:
- - const: arm,core-module-integrator
- - const: syscon
- - const: simple-mfd
- reg:
- maxItems: 1
-
- required:
- - compatible
- - reg
-
-patternProperties:
- "^syscon@[0-9a-f]+$":
- description: All Integrator boards must provide a system controller as a
- node in the root of the device tree.
- type: object
- properties:
- compatible:
- items:
- - enum:
- - arm,integrator-ap-syscon
- - arm,integrator-cp-syscon
- - arm,integrator-sp-syscon
- - const: syscon
- reg:
- maxItems: 1
-
- required:
- - compatible
- - reg
-
-
required:
- compatible
- core-module@10000000

Documentation/devicetree/bindings/arm/arm,realview.yaml

View file
diff --git a/Documentation/devicetree/bindings/arm/arm,realview.yaml b/Documentation/devicetree/bindings/arm/arm,realview.yaml
index 8d3ed2e..d1bdee9 100644
--- a/Documentation/devicetree/bindings/arm/arm,realview.yaml
+++ b/Documentation/devicetree/bindings/arm/arm,realview.yaml
@@ -75,43 +75,6 @@ properties:
type: object
description: All RealView boards must provide a syscon system controller
node inside the soc node.
- properties:
- compatible:
- oneOf:
- - items:
- - const: arm,realview-eb11mp-revb-syscon
- - const: arm,realview-eb-syscon
- - const: syscon
- - const: simple-mfd
- - items:
- - const: arm,realview-eb11mp-revc-syscon
- - const: arm,realview-eb-syscon
- - const: syscon
- - const: simple-mfd
- - items:
- - const: arm,realview-eb-syscon
- - const: syscon
- - const: simple-mfd
- - items:
- - const: arm,realview-pb1176-syscon
- - const: syscon
- - const: simple-mfd
- - items:
- - const: arm,realview-pb11mp-syscon
- - const: syscon
- - const: simple-mfd
- - items:
- - const: arm,realview-pba8-syscon
- - const: syscon
- - const: simple-mfd
- - items:
- - const: arm,realview-pbx-syscon
- - const: syscon
- - const: simple-mfd
-
- required:
- - compatible
- - reg
required:
- compatible

Documentation/devicetree/bindings/arm/arm,versatile.yaml

View file
diff --git a/Documentation/devicetree/bindings/arm/arm,versatile.yaml b/Documentation/devicetree/bindings/arm/arm,versatile.yaml
index 13e52ba..7a3caf6 100644
--- a/Documentation/devicetree/bindings/arm/arm,versatile.yaml
+++ b/Documentation/devicetree/bindings/arm/arm,versatile.yaml
@@ -14,6 +14,14 @@ description: |+
with various pluggable interface boards, in essence the Versatile PB version
is a superset of the Versatile AB version.
+ The root node in the Versatile platforms must contain a core module child
+ node. They are always at physical address 0x10000000 in all the Versatile
+ variants.
+
+ When fitted with the IB2 Interface Board, the Versatile AB will present an
+ optional system controller node which controls the extra peripherals on the
+ interface board.
+
properties:
$nodename:
const: '/'
@@ -32,38 +40,6 @@ properties:
items:
- const: arm,versatile-pb
- core-module@10000000:
- type: object
- description: the root node in the Versatile platforms must contain
- a core module child node. They are always at physical address
- 0x10000000 in all the Versatile variants.
- properties:
- compatible:
- items:
- - const: arm,core-module-versatile
- - const: syscon
- - const: simple-mfd
- reg:
- maxItems: 1
-
- required:
- - compatible
- - reg
-
-patternProperties:
- "^syscon@[0-9a-f]+$":
- type: object
- description: When fitted with the IB2 Interface Board, the Versatile
- AB will present an optional system controller node which controls the
- extra peripherals on the interface board.
- properties:
- compatible:
- contains:
- const: arm,versatile-ib2-syscon
- required:
- - compatible
- - reg
-
required:
- compatible
- core-module@10000000

Documentation/devicetree/bindings/input/twl4030-pwrbutton.txt

View file
diff --git a/Documentation/devicetree/bindings/input/twl4030-pwrbutton.txt b/Documentation/devicetree/bindings/input/twl4030-pwrbutton.txt
index f502121..6c201a2 100644
--- a/Documentation/devicetree/bindings/input/twl4030-pwrbutton.txt
+++ b/Documentation/devicetree/bindings/input/twl4030-pwrbutton.txt
@@ -1,7 +1,7 @@
Texas Instruments TWL family (twl4030) pwrbutton module
This module is part of the TWL4030. For more details about the whole
-chip see Documentation/devicetree/bindings/mfd/twl-family.txt.
+chip see Documentation/devicetree/bindings/mfd/ti,twl.yaml.
This module provides a simple power button event via an Interrupt.

Documentation/devicetree/bindings/leds/backlight/max8925-backlight.txt

View before deletion
diff --git a/Documentation/devicetree/bindings/leds/backlight/max8925-backlight.txt b/Documentation/devicetree/bindings/leds/backlight/max8925-backlight.txt
deleted file mode 100644
index b4cffda..0000000
--- a/Documentation/devicetree/bindings/leds/backlight/max8925-backlight.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-88pm860x-backlight bindings
-
-Optional properties:
- - maxim,max8925-dual-string: whether support dual string
-
-Example:
-
- backlights {
- maxim,max8925-dual-string = <0>;
- };

Documentation/devicetree/bindings/leds/register-bit-led.yaml

View file
diff --git a/Documentation/devicetree/bindings/leds/register-bit-led.yaml b/Documentation/devicetree/bindings/leds/register-bit-led.yaml
index ed26ec1..20930d3 100644
--- a/Documentation/devicetree/bindings/leds/register-bit-led.yaml
+++ b/Documentation/devicetree/bindings/leds/register-bit-led.yaml
@@ -60,7 +60,7 @@ examples:
- |
syscon@10000000 {
- compatible = "arm,realview-pb1176-syscon", "syscon";
+ compatible = "arm,realview-pb1176-syscon", "syscon", "simple-mfd";
reg = <0x10000000 0x1000>;
#address-cells = <1>;
#size-cells = <1>;

Documentation/devicetree/bindings/mfd/arm,dev-platforms-syscon.yaml

View file
diff --git a/Documentation/devicetree/bindings/mfd/arm,dev-platforms-syscon.yaml b/Documentation/devicetree/bindings/mfd/arm,dev-platforms-syscon.yaml
new file mode 100644
index 0000000..46b164a
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/arm,dev-platforms-syscon.yaml
@@ -0,0 +1,67 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/arm,dev-platforms-syscon.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Arm Ltd Developer Platforms System Controllers
+
+maintainers:
+ - Linus Walleij <[email protected]>
+
+description:
+ The Arm Ltd Integrator, Realview, and Versatile families of developer
+ platforms are contain various system controller blocks. Often these blocks
+ are part of a daughterboard or motherboard module.
+
+properties:
+ compatible:
+ oneOf:
+ - items:
+ - enum:
+ - arm,integrator-ap-syscon
+ - arm,integrator-cp-syscon
+ - arm,integrator-sp-syscon
+ - arm,im-pd1-syscon
+ - const: syscon
+ - items:
+ - enum:
+ - arm,core-module-integrator
+ - arm,integrator-ap-syscon
+ - arm,integrator-cp-syscon
+ - arm,integrator-sp-syscon
+ - arm,realview-eb-syscon
+ - arm,realview-pb1176-syscon
+ - arm,realview-pb11mp-syscon
+ - arm,realview-pba8-syscon
+ - arm,realview-pbx-syscon
+ - arm,versatile-ib2-syscon
+ - const: syscon
+ - const: simple-mfd
+ - items:
+ - enum:
+ - arm,realview-eb11mp-revb-syscon
+ - arm,realview-eb11mp-revc-syscon
+ - const: arm,realview-eb-syscon
+ - const: syscon
+ - const: simple-mfd
+
+ reg:
+ maxItems: 1
+
+ ranges: true
+
+ '#address-cells':
+ const: 1
+
+ '#size-cells':
+ const: 1
+
+required:
+ - compatible
+ - reg
+
+additionalProperties:
+ type: object
+
+...

Documentation/devicetree/bindings/mfd/max8925.txt

View before deletion
diff --git a/Documentation/devicetree/bindings/mfd/max8925.txt b/Documentation/devicetree/bindings/mfd/max8925.txt
deleted file mode 100644
index 4f0dc66..0000000
--- a/Documentation/devicetree/bindings/mfd/max8925.txt
+++ /dev/null
@@ -1,64 +0,0 @@
-* Maxim max8925 Power Management IC
-
-Required parent device properties:
-- compatible : "maxim,max8925"
-- reg : the I2C slave address for the max8925 chip
-- interrupts : IRQ line for the max8925 chip
-- interrupt-controller: describes the max8925 as an interrupt
- controller (has its own domain)
-- #interrupt-cells : should be 1.
- - The cell is the max8925 local IRQ number
-
-Optional parent device properties:
-- maxim,tsc-irq: there are 2 IRQ lines for max8925, one is indicated in
- interrupts property, the other is indicated here.
-
-max8925 consists of a large and varied group of sub-devices:
-
-Device Supply Names Description
------- ------------ -----------
-max8925-onkey : : On key
-max8925-rtc : : RTC
-max8925-regulator : : Regulators
-max8925-backlight : : Backlight
-max8925-touch : : Touchscreen
-max8925-power : : Charger
-
-Example:
-
- pmic: max8925@3c {
- compatible = "maxim,max8925";
- reg = <0x3c>;
- interrupts = <1>;
- interrupt-parent = <&intcmux4>;
- interrupt-controller;
- #interrupt-cells = <1>;
- maxim,tsc-irq = <0>;
-
- regulators {
- SDV1 {
- regulator-min-microvolt = <637500>;
- regulator-max-microvolt = <1425000>;
- regulator-boot-on;
- regulator-always-on;
- };
-
- LDO1 {
- regulator-min-microvolt = <750000>;
- regulator-max-microvolt = <3900000>;
- regulator-boot-on;
- regulator-always-on;
- };
-
- };
- backlight {
- maxim,max8925-dual-string = <0>;
- };
- charger {
- batt-detect = <0>;
- topoff-threshold = <1>;
- fast-charge = <7>;
- no-temp-support = <0>;
- no-insert-detect = <0>;
- };
- };

Documentation/devicetree/bindings/mfd/max8998.txt

View before deletion
diff --git a/Documentation/devicetree/bindings/mfd/max8998.txt b/Documentation/devicetree/bindings/mfd/max8998.txt
deleted file mode 100644
index 4ed5218..0000000
--- a/Documentation/devicetree/bindings/mfd/max8998.txt
+++ /dev/null
@@ -1,125 +0,0 @@
-* Maxim MAX8998, National/TI LP3974 multi-function device
-
-The Maxim MAX8998 is a multi-function device which includes voltage/current
-regulators, real time clock, battery charging controller and several
-other sub-blocks. It is interfaced using an I2C interface. Each sub-block
-is addressed by the host system using different i2c slave address.
-
-PMIC sub-block
---------------
-
-The PMIC sub-block contains a number of voltage and current regulators,
-with controllable parameters and dynamic voltage scaling capability.
-In addition, it includes a real time clock and battery charging controller
-as well. It is accessible at I2C address 0x66.
-
-Required properties:
-- compatible: Should be one of the following:
- - "maxim,max8998" for Maxim MAX8998
- - "national,lp3974" or "ti,lp3974" for National/TI LP3974.
-- reg: Specifies the i2c slave address of the pmic block. It should be 0x66.
-
-Optional properties:
-- interrupts: Interrupt specifiers for two interrupt sources.
- - First interrupt specifier is for main interrupt.
- - Second interrupt specifier is for power-on/-off interrupt.
-- max8998,pmic-buck1-dvs-gpios: GPIO specifiers for two host gpios used
- for buck 1 dvs. The format of the gpio specifier depends on the gpio
- controller.
-- max8998,pmic-buck2-dvs-gpio: GPIO specifier for host gpio used
- for buck 2 dvs. The format of the gpio specifier depends on the gpio
- controller.
-- max8998,pmic-buck1-default-dvs-idx: Default voltage setting selected from
- the possible 4 options selectable by the dvs gpios. The value of this
- property should be 0, 1, 2 or 3. If not specified or out of range,
- a default value of 0 is taken.
-- max8998,pmic-buck2-default-dvs-idx: Default voltage setting selected from
- the possible 2 options selectable by the dvs gpios. The value of this
- property should be 0 or 1. If not specified or out of range, a default
- value of 0 is taken.
-- max8998,pmic-buck-voltage-lock: If present, disallows changing of
- preprogrammed buck dvfs voltages.
-
-Additional properties required if max8998,pmic-buck1-dvs-gpios is defined:
-- max8998,pmic-buck1-dvs-voltage: An array of 4 voltage values in microvolts
- for buck1 regulator that can be selected using dvs gpio.
-
-Additional properties required if max8998,pmic-buck2-dvs-gpio is defined:
-- max8998,pmic-buck2-dvs-voltage: An array of 2 voltage values in microvolts
- for buck2 regulator that can be selected using dvs gpio.
-
-Regulators: All the regulators of MAX8998 to be instantiated shall be
-listed in a child node named 'regulators'. Each regulator is represented
-by a child node of the 'regulators' node.
-
- regulator-name {
- /* standard regulator bindings here */
- };
-
-Following regulators of the MAX8998 PMIC block are supported. Note that
-the 'n' in regulator name, as in LDOn or BUCKn, represents the LDO or BUCK
-number as described in MAX8998 datasheet.
-
- - LDOn
- - valid values for n are 2 to 17
- - Example: LDO2, LDO10, LDO17
- - BUCKn
- - valid values for n are 1 to 4.
- - Example: BUCK1, BUCK2, BUCK3, BUCK4
-
- - ENVICHG: Battery Charging Current Monitor Output. This is a fixed
- voltage type regulator
-
- - ESAFEOUT1: (ldo19)
- - ESAFEOUT2: (ld020)
-
- - CHARGER: main battery charger current control
-
-Standard regulator bindings are used inside regulator subnodes. Check
- Documentation/devicetree/bindings/regulator/regulator.txt
-for more details.
-
-Example:
-
- pmic@66 {
- compatible = "maxim,max8998-pmic";
- reg = <0x66>;
- interrupt-parent = <&wakeup_eint>;
- interrupts = <4 0>, <3 0>;
-
- /* Buck 1 DVS settings */
- max8998,pmic-buck1-default-dvs-idx = <0>;
- max8998,pmic-buck1-dvs-gpios = <&gpx0 0 1 0 0>, /* SET1 */
- <&gpx0 1 1 0 0>; /* SET2 */
- max8998,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
- <1000000>, <950000>;
-
- /* Buck 2 DVS settings */
- max8998,pmic-buck2-default-dvs-idx = <0>;
- max8998,pmic-buck2-dvs-gpio = <&gpx0 0 3 0 0>; /* SET3 */
- max8998,pmic-buck2-dvs-voltage = <1350000>, <1300000>;
-
- /* Regulators to instantiate */
- regulators {
- ldo2_reg: LDO2 {
- regulator-name = "VDD_ALIVE_1.1V";
- regulator-min-microvolt = <1100000>;
- regulator-max-microvolt = <1100000>;
- regulator-always-on;
- };
-
- buck1_reg: BUCK1 {
- regulator-name = "VDD_ARM_1.2V";
- regulator-min-microvolt = <950000>;
- regulator-max-microvolt = <1350000>;
- regulator-always-on;
- regulator-boot-on;
- };
-
- charger_reg: CHARGER {
- regulator-name = "CHARGER";
- regulator-min-microamp = <90000>;
- regulator-max-microamp = <800000>;
- };
- };
- };

Documentation/devicetree/bindings/mfd/maxim,max5970.yaml

View file
diff --git a/Documentation/devicetree/bindings/mfd/maxim,max5970.yaml b/Documentation/devicetree/bindings/mfd/maxim,max5970.yaml
index da67742..0da5cae 100644
--- a/Documentation/devicetree/bindings/mfd/maxim,max5970.yaml
+++ b/Documentation/devicetree/bindings/mfd/maxim,max5970.yaml
@@ -45,8 +45,13 @@ properties:
patternProperties:
"^led@[0-3]$":
$ref: /schemas/leds/common.yaml#
+ unevaluatedProperties: false
type: object
+ properties:
+ reg:
+ maximum: 3
+
additionalProperties: false
vss1-supply:

Documentation/devicetree/bindings/mfd/maxim,max8925.yaml

View file
diff --git a/Documentation/devicetree/bindings/mfd/maxim,max8925.yaml b/Documentation/devicetree/bindings/mfd/maxim,max8925.yaml
new file mode 100644
index 0000000..86dd810
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/maxim,max8925.yaml
@@ -0,0 +1,145 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/maxim,max8925.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MAX8925 PMIC from Maxim Integrated.
+
+maintainers:
+ - Lee Jones <[email protected]>
+
+properties:
+ compatible:
+ const: maxim,max8925
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ interrupt-controller: true
+
+ "#interrupt-cells":
+ const: 1
+ description:
+ The cell is the IRQ number
+
+ maxim,tsc-irq:
+ description: second interrupt from max8925
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ regulators:
+ type: object
+
+ patternProperties:
+ "^SDV[1-3]$|^LDO[1-9]$|^LDO1[0-9]$|^LDO20$":
+ description: regulator configuration for SDV1-3 and LDO1-20
+ $ref: /schemas/regulator/regulator.yaml
+ unevaluatedProperties: false
+
+ additionalProperties: false
+
+ backlight:
+ type: object
+ properties:
+ maxim,max8925-dual-string:
+ description: set to 1 to support dual string
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum: [0, 1]
+ default: 0
+
+ additionalProperties: false
+
+ charger:
+ type: object
+ properties:
+ batt-detect:
+ description: set to 1 if battery detection via ID pin is supported
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum: [0, 1]
+ default: 0
+
+ topoff-threshold:
+ description: charging current in topoff mode, configures bits 5-6 in CHG_CNTL1
+ $ref: /schemas/types.yaml#/definitions/uint32
+ minimum: 0
+ maximum: 3
+ default: 0
+
+ fast-charge:
+ description: set charging current in fast mode, configures bits 0-3 in CHG_CNTL1
+ $ref: /schemas/types.yaml#/definitions/uint32
+ minimum: 0
+ maximum: 7
+ default: 0
+
+ no-temp-support:
+ description: set to 1 if temperature sensing is not supported
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum: [0, 1]
+ default: 0

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/maxim,max8998.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/mediatek,mt6357.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/mt6397.txt

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/rockchip,rk805.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/rockchip,rk806.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/rockchip,rk808.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/rockchip,rk809.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/rockchip,rk817.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/rockchip,rk818.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/stericsson,db8500-prcmu.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/syscon.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/ti,lp87524-q1.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/ti,lp87561-q1.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/ti,lp87565-q1.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/ti,twl.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/twl-family.txt

View before deletion

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/mfd/x-powers,axp152.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/power/supply/max8925_battery.txt

View before deletion

This diff is incomplete. Download the complete patch.

drivers/i2c/i2c-core.h

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/arizona-i2c.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/arizona-spi.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/atmel-hlcdc.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/axp20x.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/db8500-prcmu.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/dln2.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/hi6421-pmic-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/intel-lpss-pci.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/iqs62x.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/lochnagar-i2c.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/lp87565.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/lpc_ich.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/madera-i2c.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/max14577.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/max77541.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/max77620.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/max77686.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/max8907.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/max8997.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/max8998.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/mc13xxx-spi.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/mfd-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/motorola-cpcap.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/mxs-lradc.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/palmas.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/qcom-spmi-pmic.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/qcom_rpm.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/rk8xx-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/rk8xx-i2c.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/rn5t618.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/stm32-timers.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/tps65086.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/tps65090.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/tps65218.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/tps6586x.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/tps65910.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/tps65912-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/twl-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/twl4030-power.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/twl6030-irq.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/wcd934x.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/wm831x-i2c.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/wm831x-spi.c

View file

This diff is incomplete. Download the complete patch.

drivers/mfd/wm8994-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/spmi/spmi.c

View file

This diff is incomplete. Download the complete patch.

include/linux/mfd/abx500/ab8500.h

View file

This diff is incomplete. Download the complete patch.

include/linux/mfd/core.h

View file

This diff is incomplete. Download the complete patch.

include/linux/mfd/lpc_ich.h

View file

This diff is incomplete. Download the complete patch.

include/linux/mfd/stm32-timers.h

View file

This diff is incomplete. Download the complete patch.

include/linux/reboot.h

View file

This diff is incomplete. Download the complete patch.

include/linux/spmi.h

View file

This diff is incomplete. Download the complete patch.

kernel/reboot.c

View file

This diff is incomplete. Download the complete patch.