Commit 980190a9 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull MFD updates from Lee Jones:
 "Updates:
   - Add Core, Regulator, Onkey and Battery Charger support for the NXP
     PF1550 Power Management IC (PMIC)
   - Introduce __SMC_KEY macro to fix GCC 15.2.1 errors in macsmc
   - Add board definitions for TQMxCU1-HPCM and TQMxCU2-HPCM to the
     tqmx86 driver
   - Add support for Broadcom BCM2712 SoC to the bcm2835-pm driver
   - Hook up the qnap-mcu-eeprom sub-device to qnap-mcu

  Fixes:
   - Enable compile testing for the Altera SOCFPGA System Manager driver
   - Fix device reference leak in altr_sysmgr_regmap_lookup_by_phandle()
   - Reserve the unused second I2C address for DA9063 to prevent
     userspace interference
   - Fix resource leak in da9055_device_init() by calling
     regmap_del_irq_chip() in the error path
   - Fix potential IRQ chip conflict when probing multiple MAX77620
     devices by using devm_kmemdup for regmap_irq_chip
   - Return -EPROBE_DEFER when a syscon devuice is not found to allow
     deferred probing
   - Update email address for the PF1550 PMIC driver in MAINTAINERS
   - Correct file entry for PF1550 MFD driver in MAINTAINERS from
     pfd1550.h to pf1550.h
   - Calculate checksum on the actual number of received bytes in
     qnap-mcu for error messages
   - Use -EPROTO instead of -EIO for checksum errors in qnap-mcu
   - Add proper error handling for command errors (e.g., "@8", "@9") in
     qnap-mcu
   - Fix missing irq_domain_remove() in error path of
     mt63{58,97}_irq_init()

  Cleanups:
   - Mark SMC write buffer arguments as const in apple_smc_write(),
     apple_smc_rw(), and apple_smc_write_atomic()
   - Simplify the error handling path in da9055_device_init() by
     removing a redundant mfd_remove_devices() call
   - Use regmap_reg_range() and a real one-element array for
     pmic_status_range in rohm-bd718x7 for cleaner initialization
   - Remove select I2C_K1 from MFD_SPACEMIT_P1 to avoid build failures
     when I2C_K1's dependencies are disabled
   - Remove unneeded semicolon from ls2k_bmc_recover_pci_data()
   - Drop OF dependency for MFD_MAX5970 in Kconfig to allow wider
     compile testing and non-OF systems
   - Make OF ID table style consistent in simple-mfd-i2c driver
   - Update header inclusions in simple-mfd-i2c to follow IWYU (Include
     What You Use) principle
   - Move checksum verification logic to a separate function in qnap-mcu
   - Use chained IRQs for S2MPG10 in the Samsung SEC driver to simplify
     interrupt handling
   - Drop a stray semicolon from sec-irq.c

  Removals:
   - Remove the unused TI WL1273 FM radio core driver
   - Remove the unused wl1273-core.h header and tidy up its reference in
     documentation

  Device tree bindings:
   - Add Device Tree binding for the NXP PF1550 PMIC
   - Add missing GPIO pins and supply properties to the Silergy SY7636A
     PMIC binding
   - Add interrupt-controller property to the Maxim MAX77705 binding for
     sub-device interrupt source determination
   - Add Device Tree binding for the Renesas R2A11302FT PMIC
   - Allow the wakeup-source property in the Dialog DA9063 binding
   - Make interrupt-related properties optional in the TI TPS65910 PMIC
     binding
   - Document the Qualcomm PMIV0104 PMIC compatible string
   - Document the Qualcomm PM7550 PMIC compatible string
   - Enable power button subnode for TWL603x in the TI TWL binding
   - Convert the Dialog DA9052/53 I2C binding from .txt to .yaml format,
     including compatible string fallback and interrupt properties
   - Document control-scb and sysreg-scb syscons on pic64gx with
     fallback compatibles
   - Document sama7g5-sfrbu and sama7d65-sfrbu syscons with fallback to
     atmel,sama5d2-sfrbu
   - Fix LEDs node schema in fsl,mc13xxx binding by adding led@ child
     nodes and missing properties
   - Add mt7981-topmisc compatible string to the syscon binding"

* tag 'mfd-next-6.19' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (42 commits)
  mfd: sec: Drop a stray semicolon
  mfd: qnap-mcu: Hook up the EEPROM sub-device
  dt-bindings: mfd: syscon: Add mt7981-topmisc
  dt-bindings: mfd: fsl,mc13xxx: Fix LEDs node schema
  mfd: mt6358-irq: Fix missing irq_domain_remove() in error path
  mfd: mt6397-irq: Fix missing irq_domain_remove() in error path
  dt-bindings: mfd: Document syscons falling back to atmel,sama5d2-sfrbu
  dt-bindings: mfd: Document control-scb and sysreg-scb on pic64gx
  dt-bindings: mfd: Convert dlg,da9052-i2c.txt to yaml format
  mfd: sec: Use chained IRQs for s2mpg10
  mfd: qnap-mcu: Add proper error handling for command errors
  mfd: qnap-mcu: Move checksum verification to its own function
  mfd: qnap-mcu: Use EPROTO in stead of EIO on checksum errors
  mfd: qnap-mcu: Calculate the checksum on the actual number of bytes received
  mfd: simple-mfd-i2c: Don't use "proxy" headers
  mfd: simple-mfd-i2c: Make ID table style consistent
  mfd: Kconfig: Drop OF dependency on MFD_MAX5970
  mfd: ls2kbmc: Remove unneeded semicolon from ls2k_bmc_recover_pci_data()
  dt-bindings: mfd: twl: Enable power button also for TWL603X
  MAINTAINERS: Adjust file entry in NXP PF1550 PMIC MFD DRIVER
  ...
parents aa833fc3 44c603f3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -696,6 +696,7 @@ Sakari Ailus <sakari.ailus@linux.intel.com> <sakari.ailus@iki.fi>
Sam Protsenko <semen.protsenko@linaro.org>
Sam Protsenko <semen.protsenko@linaro.org> <semen.protsenko@globallogic.com>
Sam Ravnborg <sam@mars.ravnborg.org>
Samuel Kayode <samkay014@gmail.com> <samuel.kayode@savoirfairelinux.com>
Sankeerth Billakanti <quic_sbillaka@quicinc.com> <sbillaka@codeaurora.org>
Santosh Shilimkar <santosh.shilimkar@oracle.org>
Santosh Shilimkar <ssantosh@kernel.org>
+0 −1
Original line number Diff line number Diff line
@@ -30,7 +30,6 @@ radio-terratec TerraTec ActiveRadio ISA Standalone
radio-timb             Enable the Timberdale radio driver
radio-trust            Trust FM radio card
radio-typhoon          Typhoon Radio (a.k.a. EcoRadio)
radio-wl1273           Texas Instruments WL1273 I2C FM Radio
fm_drv                 ISA radio devices
fm_drv                 ISA radio devices
radio-zoltrix          Zoltrix Radio
+0 −67
Original line number Diff line number Diff line
* Dialog DA9052/53 Power Management Integrated Circuit (PMIC)

Required properties:
- compatible : Should be "dlg,da9052", "dlg,da9053-aa",
			 "dlg,da9053-ab", or "dlg,da9053-bb"

Optional properties:
- dlg,tsi-as-adc : Boolean, if set the X+, X-, Y+, Y- touchscreen
                    input lines are used as general purpose analogue
					input.
- tsiref-supply: Phandle to the regulator, which provides the reference
                 voltage for the TSIREF pin. Must be provided when the
			     touchscreen pins are used for ADC purposes.

Sub-nodes:
- regulators : Contain the regulator nodes. The DA9052/53 regulators are
  bound using their names as listed below:

    buck1     : regulator BUCK CORE
    buck2     : regulator BUCK PRO
    buck3     : regulator BUCK MEM
    buck4     : regulator BUCK PERI
    ldo1      : regulator LDO1
    ldo2      : regulator LDO2
    ldo3      : regulator LDO3
    ldo4      : regulator LDO4
    ldo5      : regulator LDO5
    ldo6      : regulator LDO6
    ldo7      : regulator LDO7
    ldo8      : regulator LDO8
    ldo9      : regulator LDO9
    ldo10     : regulator LDO10

  The bindings details of individual regulator device can be found in:
  Documentation/devicetree/bindings/regulator/regulator.txt

Examples:

i2c@63fc8000 { /* I2C1 */

	pmic: dialog@48 {
		compatible = "dlg,da9053-aa";
		reg = <0x48>;

		regulators {
			buck1 {
				regulator-min-microvolt = <500000>;
				regulator-max-microvolt = <2075000>;
			};

			buck2 {
				regulator-min-microvolt = <500000>;
				regulator-max-microvolt = <2075000>;
			};

			buck3 {
				regulator-min-microvolt = <925000>;
				regulator-max-microvolt = <2500000>;
			};

			buck4 {
				regulator-min-microvolt = <925000>;
				regulator-max-microvolt = <2500000>;
			};
		};
	};
};
+89 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/dlg,da9052.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Dialog DA9052/53 Power Management Integrated Circuit (PMIC)

maintainers:
  - Frank Li <Frank.Li@nxp.com>

properties:
  compatible:
    oneOf:
      - enum:
          - dlg,da9053-aa
          - dlg,da9053-ab
          - dlg,da9053-bb
          - dlg,da9053-bc
          - dlg,da9052

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  dlg,tsi-as-adc:
    type: boolean
    description:
      if set the X+, X-, Y+, Y- touchscreen input lines are used as general
      purpose analogue input.

  tsiref-supply:
    description: The reference voltage for the TSIREF pin.

  regulators:
    type: object
    additionalProperties: false

    patternProperties:
      "^(ldo([1-9]|10)|buck[1-4])$":
        type: object
        $ref: /schemas/regulator/regulator.yaml#
        unevaluatedProperties: false

required:
  - compatible
  - reg
  - regulators

allOf:
  - $ref: /schemas/spi/spi-peripheral-props.yaml#

unevaluatedProperties: false

examples:
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        pmic@48 {
            compatible = "dlg,da9053-aa";
            reg = <0x48>;

            regulators {
                buck1 {
                    regulator-min-microvolt = <500000>;
                    regulator-max-microvolt = <2075000>;
                };

                buck2 {
                    regulator-min-microvolt = <500000>;
                    regulator-max-microvolt = <2075000>;
                };

                buck3 {
                    regulator-min-microvolt = <925000>;
                    regulator-max-microvolt = <2500000>;
                };

                buck4 {
                    regulator-min-microvolt = <925000>;
                    regulator-max-microvolt = <2500000>;
                };
            };
        };
    };
+2 −0
Original line number Diff line number Diff line
@@ -81,6 +81,8 @@ properties:
  watchdog:
    $ref: /schemas/watchdog/dlg,da9062-watchdog.yaml

  wakeup-source: true

patternProperties:
  "^(.+-hog(-[0-9]+)?)$":
    type: object
Loading