linux/Documentation/devicetree/bindings/mfd
Linus Torvalds 4668c4831f MFD for v6.20
- New Support & Features
   * Add comprehensive support for the ROHM BD72720 PMIC, including core MFD, regulator, GPIO,
     clock gate, RTC, and power-supply drivers.
   * Add support for the Rockchip RK801 PMIC, including core MFD and regulator drivers.
   * Add support for the ROHM BD73900 PMIC by leveraging existing common drivers.
   * Wire up RTC, hwmon, and input sub-devices for the Apple SMC (macsmc) driver.
   * Add support for the Delta Networks TN48M switch CPLD via the simple-mfd-i2c driver.
   * Add support for the TS133 variant to the QNAP MCU driver.
   * Provide support for the sama7d65 XLCD controller in the Atmel HLCDC driver.
   * Add backlight sub-device support to the Congatec Board Controller (cgbc).
   * Add Intel Nova Lake-S (NVL-S) PCI IDs to the Intel LPSS driver.
 
 - Improvements & Fixes
   * Implement a "wrapper regmap" for the ROHM BD72720 to handle dual I2C slave addresses (0x4b and
     0x4c) transparently for child devices.
   * Introduce mutex locking around 'mfd_of_node_list' in the MFD core to ensure safe concurrent
     access.
   * Fix a potential regulator resource leak in the Arizona core driver during boot sequence
     failures.
   * Resolve child device duplication issues on driver rebind for Qualcomm PM8xxx and OMAP USB host
     drivers by using of_platform_depopulate().
   * Fix IRQ domain name duplication for the Samsung S2MPG10 by adding a unique domain suffix.
   * Implement LOCK register handling for the TI TPS65214 variant to unlock registers at probe
     time.
   * Fully convert the Loongson-2K BMC driver to use managed resources (pcim) and the standard PCI
     resource API.
   * Ensure the Apple SMC mutex is correctly initialized during probe to prevent NULL pointer
     dereferences.
   * Expand the ROHM BD71828 power-supply driver to support 9-bit register addresses.
   * Simplify the Samsung S5M RTC driver by querying platform device IRQ resources directly.
   * Revert an incorrect read-to-write mask change in the DA9052 SPI driver to restore default OTP
     behavior.
   * Fix kernel-doc warnings in the TI TPS6105x driver.
 
 - Cleanups & Refactoring
   * Simplify the MFD core by utilizing the scoped for_each_child_of_node_scoped() macro and
     streamlining device_node storage.
   * Rename ROHM BD71828 IC-specific entities to use consistent prefixes for better extensibility.
   * Refactor ROHM BD71828 regmap definitions using the regmap_reg_range() macro.
   * Update the ROHM BD71828 driver to use standard C-style comment headers.
   * Remove the now unused 'irq_data' field from the Samsung SEC core structure.
   * Drop unnecessary use of irqd_get_trigger_type() in the Maxim MAX77759 driver.
   * Default MFD_SPACEMIT_P1 to 'm' if ARCH_SPACEMIT is selected.
   * Add missing charger-related registers to the ROHM BD71828 core header and Type-C CC registers
     to the AXP717.
 
 - Device Tree Binding Updates
   * Add new bindings for the ROHM BD72720 PMIC, Rockchip RK801 PMIC, Bitmain BM1880 System
     Controller, and NXP LPC32xx System Control Block.
   * Clarify trickle-charge terminology and add properties for voltage drop (VDR) correction and
     upper charge limits to the generic battery binding.
   * Document GPR syscon for NXP S32 SoCs and the smp-memram subnode for Aspeed SCU.
   * Document numerous new Qualcomm SPMI PMIC compatibles (pmcx0102, pmh0101, pmk8850, etc.).
   * Add compatibles for the sama7d65 XLCD (Atmel), LAN9691 Flexcom (Microchip), and various
     MediaTek SCPSYS and regulator components.
   * Fix a dead link to the audio codec binding in the DA9055 documentation.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdrbJNaO+IJqU8IdIUa+KL4f8d2EFAmmN1SgACgkQUa+KL4f8
 d2FmCg//dSaWBfdNSIibUQg08g/hUUx+TTZ3RsRdBqGym0/+n6cTRqxSRM9LwWmC
 4jAq+fdqBhWEdTvB28aJT/UxFkDuKTsXtoycwLVvX0Vfb5zvE8SjAIycS4/PMRqZ
 qYyZ3fblfwx/bm+/1+0yVsi4TVtjLZdiRQEpKAXN/FNd9/6mHD8x4VNjtB5jj0nR
 tcCXKevmgRcCqXi2OfAWQ20VO/N04rkRj0r07UI4+u+lC3iet5XMmWaPc+QbQ0Be
 EkTCHBvfqtC6+C6aZtGjCOx8OA08I3MZAmS5eNly4T3GuVTHVtzobZEM7lEk4ScQ
 mzdXnhNBxxJzLXcv5B7FuDlaEcBya1tf5fe2lPgyD5Mp4khPynBZWQdDQe5Zv0TV
 9EhdGazltNdYXUcTX5yhgQOpFgdGBb59AczRG5j/EMpLVJSwyUJQC7HMf3OyirCo
 d4ZtCVXAp9KlUuEAvkLIgq6ZU/8fY5LVWK07tO0QJDHz7vEhEzZ7us5kvHQ9gFzu
 ihE3EKMBrAnjx/ZJ6pHFcfiEpPxO1rRhIFMCg5SGFVeJWKhvBycz5CjFs26GQzX6
 OTREzRbcOtuIAwBow4yafozUh0z2HWlpMNPbeuyz1h4jg5RbcYWmKG+eO5dKQXU0
 8UGTJelPzMvfx3NJ/LC9pImLrGh+twz42aqwv8LakH0y/zuT1dw=
 =BxGL
 -----END PGP SIGNATURE-----

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

Pull MFD updates from Lee Jones:
 "New Support & Features:
   - Add comprehensive support for the ROHM BD72720 PMIC, including core
     MFD, regulator, GPIO, clock gate, RTC, and power-supply drivers
   - Add support for the Rockchip RK801 PMIC, including core MFD and
     regulator drivers
   - Add support for the ROHM BD73900 PMIC by leveraging existing common
     drivers
   - Wire up RTC, hwmon, and input sub-devices for the Apple SMC
     (macsmc) driver
   - Add support for the Delta Networks TN48M switch CPLD via the
     simple-mfd-i2c driver
   - Add support for the TS133 variant to the QNAP MCU driver
   - Provide support for the sama7d65 XLCD controller in the Atmel HLCDC
     driver
   - Add backlight sub-device support to the Congatec Board Controller
     (cgbc)
   - Add Intel Nova Lake-S (NVL-S) PCI IDs to the Intel LPSS driver

  Improvements & Fixes:
   - Implement a "wrapper regmap" for the ROHM BD72720 to handle dual
     I2C slave addresses (0x4b and 0x4c) transparently for child devices
   - Introduce mutex locking around 'mfd_of_node_list' in the MFD core
     to ensure safe concurrent access
   - Fix a potential regulator resource leak in the Arizona core driver
     during boot sequence failures
   - Resolve child device duplication issues on driver rebind for
     Qualcomm PM8xxx and OMAP USB host drivers by using
     of_platform_depopulate()
   - Fix IRQ domain name duplication for the Samsung S2MPG10 by adding a
     unique domain suffix
   - Implement LOCK register handling for the TI TPS65214 variant to
     unlock registers at probe time
   - Fully convert the Loongson-2K BMC driver to use managed resources
     (pcim) and the standard PCI resource API
   - Ensure the Apple SMC mutex is correctly initialized during probe to
     prevent NULL pointer dereferences
   - Expand the ROHM BD71828 power-supply driver to support 9-bit
     register addresses
   - Simplify the Samsung S5M RTC driver by querying platform device IRQ
     resources directly
   - Revert an incorrect read-to-write mask change in the DA9052 SPI
     driver to restore default OTP behavior
   - Fix kernel-doc warnings in the TI TPS6105x driver

- Cleanups & Refactoring
   - Simplify the MFD core by utilizing the scoped
     for_each_child_of_node_scoped() macro and streamlining device_node
     storage
   - Rename ROHM BD71828 IC-specific entities to use consistent prefixes
     for better extensibility
   - Refactor ROHM BD71828 regmap definitions using the
     regmap_reg_range() macro
   - Update the ROHM BD71828 driver to use standard C-style comment
     headers
   - Remove the now unused 'irq_data' field from the Samsung SEC core
     structure
   - Drop unnecessary use of irqd_get_trigger_type() in the Maxim
     MAX77759 driver
   - Default MFD_SPACEMIT_P1 to 'm' if ARCH_SPACEMIT is selected
   - Add missing charger-related registers to the ROHM BD71828 core
     header and Type-C CC registers to the AXP717

  Device Tree Binding Updates:
   - Add new bindings for the ROHM BD72720 PMIC, Rockchip RK801 PMIC,
     Bitmain BM1880 System Controller, and NXP LPC32xx System Control
     Block
   - Clarify trickle-charge terminology and add properties for voltage
     drop (VDR) correction and upper charge limits to the generic
     battery binding
   - Document GPR syscon for NXP S32 SoCs and the smp-memram subnode for
     Aspeed SCU
   - Document numerous new Qualcomm SPMI PMIC compatibles (pmcx0102,
     pmh0101, pmk8850, etc)
   - Add compatibles for the sama7d65 XLCD (Atmel), LAN9691 Flexcom
     (Microchip), and various MediaTek SCPSYS and regulator components
   - Fix a dead link to the audio codec binding in the DA9055
     documentation"

* tag 'mfd-next-6.20' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (41 commits)
  dt-bindings: mfd: da9055: Fix dead link to codec binding
  mfd: cgbc: Add support for backlight
  dt-bindings: mfd: qcom,spmi-pmic: Document PMICs present on Glymur and Kaanapali
  dt-bindings: mfd: Document smp-memram subnode for aspeed,ast2x00-scu
  mfd: intel-lpss: Add Intel Nova Lake-S PCI IDs
  mfd: ls2kbmc: Use PCI API instead of direct accesses
  mfd: ls2kbmc: Fully convert to use managed resources
  dt-bindings: mfd: mediatek: mt6397: Add missing MT6331 regulator compat
  dt-bindings: mfd: mediatek,mt8195-scpsys: Add mediatek,mt6795-scpsys
  dt-bindings: mfd: atmel,sama5d2-flexcom: Add microchip,lan9691-flexcom
  mfd: omap-usb-host: Fix OF populate on driver rebind
  mfd: qcom-pm8xxx: Fix OF populate on driver rebind
  dt-bindings: mfd: syscon: Allow syscon compatible for mediatek,mt7981-topmisc
  mfd: qnap-mcu: Add driver data for TS133 variant
  dt-bindings: mfd: qnap,ts433-mcu: Add qnap,ts133-mcu compatible
  mfd: sec: Fix IRQ domain names duplication
  mfd: simple-mfd-i2c: Add Delta TN48M CPLD support
  mfd: macsmc: Initialize mutex
  dt-bindings: mfd: nxp: Add NXP LPC32xx System Control Block
  mfd: Kconfig: Default MFD_SPACEMIT_P1 to 'm' if ARCH_SPACEMIT
  ...
2026-02-16 11:05:44 -08:00
..
88pm860x.txt
actions,atc260x.yaml
adi,adp5585.yaml
adi,max77541.yaml
airoha,en7581-gpio-sysctl.yaml
allwinner,sun4i-a10-ts.yaml
allwinner,sun6i-a31-prcm.yaml
allwinner,sun8i-a23-prcm.yaml
altera-a10sr.txt
ampere,smpro.yaml
ams,as3711.yaml
apple,smc.yaml
arm,dev-platforms-syscon.yaml
as3722.txt
aspeed,ast2x00-scu.yaml
aspeed-lpc.yaml
atmel,at91sam9260-gpbr.yaml
atmel,at91sam9260-matrix.yaml
atmel,hlcdc.yaml
atmel,sama5d2-flexcom.yaml
atmel-smc.txt
bfticu.txt
bitmain,bm1880-sctrl.yaml
brcm,bcm6318-gpio-sysctl.yaml
brcm,bcm6328-gpio-sysctl.yaml
brcm,bcm6358-gpio-sysctl.yaml
brcm,bcm6362-gpio-sysctl.yaml
brcm,bcm6368-gpio-sysctl.yaml
brcm,bcm59056.yaml
brcm,bcm63268-gpio-sysctl.yaml
brcm,cru.yaml
brcm,misc.yaml
brcm,twd.yaml
canaan,k210-sysctl.yaml
cirrus,lochnagar.yaml
cirrus,madera.yaml
da9055.txt
da9150.txt
delta,tn48m-cpld.yaml
dlg,da9052.yaml
dlg,da9063.yaml
ene-kb930.yaml
ene-kb3930.yaml
fsl,mc13xxx.yaml
fsl,mcu-mpc8349emitx.yaml
fsl-imx25-tsadc.txt
hi6421.txt
hisilicon,hi655x.txt
hisilicon,hi6421-spmi-pmic.yaml
iei,wt61p803-puzzle.yaml
iqs62x.yaml
khadas,mcu.yaml
lp3943.txt
marvell,88pm886-a1.yaml
max77620.txt
max77650.yaml
maxim,max5970.yaml
maxim,max7360.yaml
maxim,max8925.yaml
maxim,max8998.yaml
maxim,max14577.yaml
maxim,max77686.yaml
maxim,max77693.yaml
maxim,max77705.yaml
maxim,max77714.yaml
maxim,max77759.yaml
maxim,max77802.yaml
maxim,max77843.yaml
mediatek,mt6357.yaml
mediatek,mt6360.yaml
mediatek,mt6370.yaml
mediatek,mt6397.yaml
mediatek,mt8195-scpsys.yaml
mfd.txt
motorola-cpcap.txt
mps,mp2629.yaml
mscc,ocelot.yaml
mxs-lradc.yaml
netronix,ntxec.yaml
nxp,bbnsm.yaml
nxp,lpc1850-creg.yaml
nxp,lpc3220-scb.yaml
nxp,pf1550.yaml
omap-usb-host.txt
omap-usb-tll.txt
palmas.txt
qcom,pm8008.yaml
qcom,spmi-pmic.yaml
qcom,tcsr.yaml
qcom-pm8xxx.yaml
qnap,ts433-mcu.yaml
qriox.txt
realtek,rtd1xxx.yaml
renesas,r2a11302ft.yaml
retu.txt
richtek,rt4831.yaml
richtek,rt5033.yaml
richtek,rt5120.yaml
ricoh,rn5t618.yaml
rockchip,rk801.yaml
rockchip,rk805.yaml
rockchip,rk806.yaml
rockchip,rk808.yaml
rockchip,rk816.yaml
rockchip,rk817.yaml
rockchip,rk818.yaml
rohm,bd9571mwv.yaml
rohm,bd9576-pmic.yaml
rohm,bd71815-pmic.yaml
rohm,bd71828-pmic.yaml
rohm,bd71837-pmic.yaml
rohm,bd71847-pmic.yaml
rohm,bd72720-pmic.yaml
rohm,bd96801-pmic.yaml
rohm,bd96802-pmic.yaml
samsung,exynos5433-lpass.yaml
samsung,s2dos05.yaml
samsung,s2mpa01.yaml
samsung,s2mpg10-pmic.yaml
samsung,s2mpg11-pmic.yaml
samsung,s2mps11.yaml
samsung,s5m8767.yaml
silergy,sy7636a.yaml
sky81452.txt
spacemit,p1.yaml
sprd,sc2731.yaml
sprd,ums512-glbreg.yaml
st,stm32-lptimer.yaml
st,stm32-timers.yaml
st,stmfx.yaml
st,stmpe.yaml
st,stpmic1.yaml
stericsson,ab8500.yaml
stericsson,db8500-prcmu.yaml
syscon-common.yaml
syscon.yaml
tc3589x.txt
ti,am3359-tscadc.yaml
ti,bq25703a.yaml
ti,lp8732.yaml
ti,lp87524-q1.yaml
ti,lp87561-q1.yaml
ti,lp87565-q1.yaml
ti,nspire-misc.yaml
ti,tps6594.yaml
ti,tps65086.yaml
ti,tps65910.yaml
ti,twl.yaml
ti-keystone-devctrl.txt
ti-lmu.txt
tps6105x.txt
tps6507x.txt
tps65912.txt
twl6040.txt
wlf,arizona.yaml
wm831x.txt
x-powers,ac100.yaml
x-powers,axp152.yaml
xylon,logicvc.yaml
zii,rave-sp.yaml