mirror-linux/drivers/regulator
Linus Torvalds b4918003cf MFD for v6.18
This round of updates contains a fair amount of new device support, a couple of fixes and
 some refactoring.  The most notable additions include new drivers for Loongson's Security
 Engine, RNG and TPM, new drivers for TI's TPS6594 Power Button and BQ257xx Charger ICs.
 
 The rest of the set provides a return value check fix and a refactoring to use a more modern
 GPIO API for the VEXPRESS sysreg driver, the removal of a deprecated IRQ ACK function from the
 MC13xxx RTC driver and a new DT binding for the aforementioned TI BQ257xx charger.
 
 New Support & Features
 - Add a suite of drivers for the Loongson Security Engine, including the core controller, a
   Random Number Generator (RNG) and Trusted Platform Module (TPM) support.
 - Introduce support for the TI TPS6594 PMIC's power button, including the input driver, MFD
   cell registration, and a system power-off handler.
 - Add comprehensive support for the TI BQ257xx series of charger ICs, including the core MFD
   driver and a power supply driver for the charger functionality.
 
 Improvements & Fixes
 - Check the return value of devm_gpiochip_add_data() in the VEXPRESS sysreg driver to prevent
   potential silent failures.
 
 Cleanups & Refactoring
 - Add a MAINTAINERS entry for the new Loongson Security Engine drivers.
 - Convert the VEXPRESS sysreg driver to use the modern generic GPIO chip API.
 
 Removals
 - Remove the deprecated and unused mc13xxx_irq_ack() function from the MC13xxx RTC, input and
   touchscreen drivers.
 
 Device Tree Bindings Updates
 - Add device tree bindings for the TI BQ25703A charger.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdrbJNaO+IJqU8IdIUa+KL4f8d2EFAmjdMogACgkQUa+KL4f8
 d2FYEA/+J3U3bzH0JdjGVscQD1vLq+PjT0MsYoNLHSNG55H0Q9FhEv2SVmnRG8LR
 DPvYXqpLHcHTGpPdCK7RX6FhSmXMFqXiWFbn9/lQE/+MX41U0B9E7rbRVCH8m+Vw
 TAOvR86DEcTZFq3BEPDfjc4Q0ZPHKpyo/HOW739frmwC/a66K6G70vKmO+LJlqMk
 asBAZUfRs14iaZte8LDKfcYcvC4NrJqtLD9lxPiuGxapMCGvJ+uReo+44A0F+wb8
 UNq+cwdFK2rqPAur5ehe8C6s9IsANF4+OmAbbmqxfkbroiSYR7I2SeUhgxU/b8Om
 9v+NqfC7Xsb8lcTJ/c0qCW8NfBtOlqer1lEHGTU91fTCAhACb4j7OuJtnTusp9Nk
 W9Z9QcfOv/Mt7I/SUw9n8SQdHgPt9tQa6iqcGrYGp3enm8BISeb2jTTgrkDcCkKb
 UTH8xVmxFgda08RCmPDPvrK0ebQ6gQzdq4g5vN3or1tFIKQHplorbvaAQtCBK02h
 8ef33KrQ4HLV/NjijYrnFhrhj0WYBwmRb8vr43t4wvUdvlOSuK+VswKGIMhQabT3
 uU+YjtCt19siOIx47XZVpj1gKTr24OoK2B+U8zy5oHj7abrRNkseZ8NMeu0vGzCn
 p+ThEq+dxGD0mskaufdbJhejjumgCFaYNElWNHJQUGhMxHM5vQE=
 =h21C
 -----END PGP SIGNATURE-----

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

Pull MFD updates from Lee Jones:
 "This round of updates contains a fair amount of new device support, a
  couple of fixes and some refactoring. The most notable additions
  include new drivers for Loongson's Security Engine, RNG and TPM, new
  drivers for TI's TPS6594 Power Button and BQ257xx Charger ICs.

  The rest of the set provides a return value check fix and a
  refactoring to use a more modern GPIO API for the VEXPRESS sysreg
  driver, the removal of a deprecated IRQ ACK function from the MC13xxx
  RTC driver and a new DT binding for the aforementioned TI BQ257xx
  charger.

  New Support & Features:
   - Add a suite of drivers for the Loongson Security Engine, including
     the core controller, a Random Number Generator (RNG) and Trusted
     Platform Module (TPM) support.
   - Introduce support for the TI TPS6594 PMIC's power button, including
     the input driver, MFD cell registration, and a system power-off
     handler.
   - Add comprehensive support for the TI BQ257xx series of charger ICs,
     including the core MFD driver and a power supply driver for the
     charger functionality.

  Improvements & Fixes:
   - Check the return value of devm_gpiochip_add_data() in the VEXPRESS
     sysreg driver to prevent potential silent failures.

  Cleanups & Refactoring:
   - Add a MAINTAINERS entry for the new Loongson Security Engine
     drivers.
   - Convert the VEXPRESS sysreg driver to use the modern generic GPIO
     chip API.

  Removals:
   - Remove the deprecated and unused mc13xxx_irq_ack() function from
     the MC13xxx RTC, input and touchscreen drivers.

  Device Tree Bindings Updates:
   - Add device tree bindings for the TI BQ25703A charger"

* tag 'mfd-next-6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (69 commits)
  mfd: simple-mfd-i2c: Add compatible string for LX2160ARDB
  mfd: simple-mfd-i2c: Keep compatible strings in alphabetical order
  dt-bindings: mfd: twl: Add missing sub-nodes for TWL4030 & TWL603x
  dt-bindings: watchdog: Add SMARC-sAM67 support
  dt-bindings: mfd: tps6594: Allow gpio-line-names
  mfd: intel-lpss: Add Intel Wildcat Lake LPSS PCI IDs
  mfd: 88pm886: Add GPADC cell
  mfd: vexpress-sysreg: Use more common syntax for compound literals
  mfd: rz-mtu3: Fix MTU5 NFCR register offset
  mfd: max77705: Setup the core driver as an interrupt controller
  mfd: cs42l43: Remove IRQ masking in suspend
  mfd: cs42l43: Move IRQ enable/disable to encompass force suspend
  mfd: ls2kbmc: Add Loongson-2K BMC reset function support
  mfd: ls2kbmc: Introduce Loongson-2K BMC core driver
  mfd: bd71828, bd71815: Prepare for power-supply support
  dt-bindings: mfd: aspeed: Add AST2700 SCU compatibles
  dt-bindings: mfd: Convert aspeed,ast2400-p2a-ctrl to DT schema
  dt-bindings: mfd: fsl,mc13xxx: Add buttons node
  dt-bindings: mfd: fsl,mc13xxx: Convert txt to DT schema
  mfd: macsmc: Add "apple,t8103-smc" compatible
  ...
2025-10-01 12:04:12 -07:00
..
88pg86x.c
88pm800-regulator.c
88pm886-regulator.c
88pm8607.c
Kconfig MFD for v6.18 2025-10-01 12:04:12 -07:00
Makefile MFD for v6.18 2025-10-01 12:04:12 -07:00
aat2870-regulator.c
ab8500-ext.c
ab8500.c
act8865-regulator.c regulator: act8865-regulator: switch psy_cfg from of_node to fwnode 2025-06-22 01:39:51 +02:00
act8945a-regulator.c
ad5398.c regulator: ad5398: Fix incorrect power down bit mask 2025-02-06 11:27:24 +00:00
adp5055-regulator.c regulator: adp5055: Remove unneeded semicolon 2025-04-14 11:22:40 +01:00
anatop-regulator.c
arizona-ldo1.c regulator: Switch back to struct platform_driver::remove() 2024-11-12 13:08:35 +00:00
arizona-micsupp.c
as3711-regulator.c
as3722-regulator.c
atc260x-regulator.c
aw37503-regulator.c
axp20x-regulator.c regulator: axp20x: AXP717: dcdc4 doesn't have delay 2025-03-19 12:28:26 +00:00
bcm590xx-regulator.c regulator: bcm590xx: Add support for BCM59054 regulators 2025-05-22 10:57:46 +01:00
bd718x7-regulator.c regulator: bd718x7: Use kcalloc() instead of kzalloc() 2025-08-18 13:12:17 +01:00
bd9571mwv-regulator.c regulator: Switch back to struct platform_driver::remove() 2024-11-12 13:08:35 +00:00
bd9576-regulator.c
bd71815-regulator.c
bd71828-regulator.c
bd96801-regulator.c regulator: bd96801: Support ROHM BD96806 PMIC 2025-04-24 14:53:18 +01:00
bq257xx-regulator.c regulator: bq257xx: Add bq257xx boost regulator driver 2025-09-11 15:55:41 +01:00
core.c regulator: core: Remove redundant ternary operators 2025-08-28 16:02:51 +02:00
cpcap-regulator.c
cros-ec-regulator.c regulator: cros-ec: use devm_kmemdup_array() 2025-02-28 14:01:07 +00:00
da903x-regulator.c
da9052-regulator.c
da9055-regulator.c
da9062-regulator.c
da9063-regulator.c
da9121-regulator.c regulator: da9121: Fix Wvoid-pointer-to-enum-cast warning 2025-05-10 23:58:04 +09:00
da9121-regulator.h
da9210-regulator.c
da9210-regulator.h
da9211-regulator.c
da9211-regulator.h
db8500-prcmu.c regulator: Switch back to struct platform_driver::remove() 2024-11-12 13:08:35 +00:00
dbx500-prcmu.c
dbx500-prcmu.h
devres.c Convert regulator drivers to use 2025-02-28 16:33:32 +00:00
dummy.c regulator: dummy: convert to use the faux device interface 2025-03-14 09:10:29 +01:00
dummy.h
event.c
fan53555.c regulator: fan53555: add enable_time support and soft-start times 2025-06-16 13:26:23 +01:00
fan53880.c
fixed-helper.c
fixed.c
gpio-regulator.c regulator: gpio: Fix the out-of-bounds access to drvdata::gpiods 2025-07-03 12:22:35 +01:00
helpers.c
hi655x-regulator.c
hi6421-regulator.c
hi6421v530-regulator.c
hi6421v600-regulator.c
internal.h
irq_helpers.c regulator: allow user configuration of hardware protection action 2025-03-16 23:24:14 -07:00
isl6271a-regulator.c
isl9305.c
lm363x-regulator.c
lochnagar-regulator.c
lp872x.c
lp873x-regulator.c
lp3971.c
lp3972.c
lp8755.c
lp8788-buck.c
lp8788-ldo.c
lp87565-regulator.c
ltc3589.c
ltc3676.c
max1586.c
max5970-regulator.c
max8649.c
max8660.c
max8893.c
max8907-regulator.c
max8925-regulator.c
max8952.c
max8973-regulator.c
max8997-regulator.c
max8998.c
max14577-regulator.c regulator: max14577: Add error check for max14577_read_reg() 2025-05-26 14:01:29 +01:00
max20086-regulator.c regulator: max20086: Fix refcount leak in max20086_parse_regulators_dt() 2025-06-08 23:29:48 +01:00
max20411-regulator.c
max77503-regulator.c
max77541-regulator.c
max77620-regulator.c
max77650-regulator.c
max77686-regulator.c
max77693-regulator.c
max77802-regulator.c
max77826-regulator.c
max77838-regulator.c regulator: max77838: add max77838 regulator driver 2025-09-15 19:27:50 +01:00
max77857-regulator.c
mc13xxx-regulator-core.c
mc13xxx.h
mc13783-regulator.c
mc13892-regulator.c
mcp16502.c
mp886x.c regulator: mp886x: Fix ID table driver_data 2025-06-30 16:06:40 +01:00
mp5416.c
mp8859.c
mpq7920.c
mpq7920.h
mt6311-regulator.c
mt6311-regulator.h
mt6315-regulator.c
mt6323-regulator.c
mt6331-regulator.c
mt6332-regulator.c
mt6357-regulator.c
mt6358-regulator.c
mt6359-regulator.c
mt6360-regulator.c
mt6370-regulator.c regulator: mt6370: Fix spelling mistake in mt6370_regualtor_register 2025-07-24 18:04:38 +01:00
mt6380-regulator.c
mt6397-regulator.c
mtk-dvfsrc-regulator.c regulator: mtk-dvfsrc: Add support for MediaTek MT8196 DVFSRC 2025-06-23 13:12:31 +01:00
of_regulator.c regulator: Add (devm_)of_regulator_get() 2025-02-24 15:26:08 +00:00
palmas-regulator.c
pbias-regulator.c
pca9450-regulator.c regulator: pca9450: Use devm_register_sys_off_handler 2025-08-18 13:09:51 +01:00
pcap-regulator.c
pf8x00-regulator.c
pf530x-regulator.c regulator: pf530x: Add a driver for the NXP PF5300 Regulator 2025-09-05 14:20:37 +01:00
pf0900-regulator.c regulator: pf0900: Add PMIC PF0900 support 2025-08-10 21:09:45 +01:00
pf9453-regulator.c regulator: pf9453: convert to use maple tree register cache 2025-04-24 12:56:29 +01:00
pfuze100-regulator.c
pv88060-regulator.c
pv88060-regulator.h
pv88080-regulator.c
pv88080-regulator.h
pv88090-regulator.c
pv88090-regulator.h
pwm-regulator.c
qcom-labibb-regulator.c
qcom-pm8008-regulator.c regulator: pm8008: fix probe failure due to negative voltage selector 2025-08-24 22:41:04 +01:00
qcom-refgen-regulator.c regulator: remove unneeded 'fast_io' parameter in regmap_config 2025-08-13 19:06:29 +01:00
qcom-rpmh-regulator.c regulator: qcom-rpmh: add support for pm7550 regulators 2025-07-13 22:37:09 +01:00
qcom_rpm-regulator.c
qcom_smd-regulator.c
qcom_spmi-regulator.c regulator: qcom_spmi: Constify struct spmi_voltage_range 2025-05-19 11:41:48 +01:00
qcom_usb_vbus-regulator.c
raa215300.c
rc5t583-regulator.c
regnl.h
renesas-usb-vbus-regulator.c
rk808-regulator.c objtool, regulator: rk808: Remove potential undefined behavior in rk806_set_mode_dcdc() 2025-03-25 23:00:29 +01:00
rn5t618-regulator.c
rohm-regulator.c
rpi-panel-attiny-regulator.c treewide: rename GPIO set callbacks back to their original names 2025-08-07 10:07:06 +02:00
rpi-panel-v2-regulator.c regulator: rpi-panel-v2: Add shutdown hook 2025-06-17 12:50:30 +01:00
rt4801-regulator.c
rt4803.c
rt4831-regulator.c
rt5033-regulator.c
rt5120-regulator.c
rt5133-regulator.c regulator: rt5133: Fix IS_ERR() vs NULL bug in rt5133_validate_vendor_info() 2025-08-19 16:52:47 +01:00
rt5190a-regulator.c
rt5739.c regulator: rt5739: Enable REGCACHE_MAPLE 2025-06-30 12:15:38 +01:00
rt5759-regulator.c
rt6160-regulator.c regulator: rt6160: Add rt6166 vout min_uV setting for compatible 2025-07-16 11:15:26 +01:00
rt6190-regulator.c
rt6245-regulator.c
rtmv20-regulator.c
rtq2134-regulator.c
rtq2208-regulator.c regulator: rtq2208: Fix the LDO DVS capability 2025-03-17 12:45:37 +00:00
rtq6752-regulator.c regulator: rtq6752: make const read-only array fault_mask static 2025-03-17 17:35:52 +00:00
s2dos05-regulator.c regulator: add s2dos05 regulator support 2025-08-11 14:08:53 +01:00
s2mpa01.c
s2mps11.c regulator: s2mps11: Add support for S2MPU05 regulators 2025-03-13 12:38:52 +00:00
s5m8767.c regulator: s5m8767: Convert to GPIO descriptors 2025-04-07 12:53:34 +01:00
sc2731-regulator.c
scmi-regulator.c regulator: scmi: Use int type to store negative error codes 2025-09-01 14:04:18 +01:00
sky81452-regulator.c
slg51000-regulator.c
slg51000-regulator.h
spacemit-p1.c regulator: spacemit: support SpacemiT P1 regulators 2025-09-16 14:34:44 +01:00
stm32-booster.c
stm32-pwr.c
stm32-vrefbuf.c regulator: stm32-vrefbuf: Remove redundant pm_runtime_mark_last_busy() calls 2025-07-04 13:09:53 +01:00
stpmic1_regulator.c
stw481x-vmmc.c
sun20i-regulator.c
sy7636a-regulator.c regulator: sy7636a: fix lifecycle of power good gpio 2025-09-08 16:33:24 +01:00
sy8106a-regulator.c
sy8824x.c regulator: sy8824x: Fix ID table driver_data 2025-06-30 16:06:39 +01:00
sy8827n.c regulator: sy8827n: make enable gpio NONEXCLUSIVE 2025-07-07 23:32:39 +01:00
ti-abb-regulator.c
tps6105x-regulator.c
tps6286x-regulator.c regulator: tps6286x-regulator: Fix a copy & paste error 2025-07-14 14:44:05 +01:00
tps6287x-regulator.c regulator: tps6287x-regulator: Enable REGCACHE_MAPLE 2025-06-30 12:15:39 +01:00
tps6507x-regulator.c
tps6524x-regulator.c regulator: tps6524x: Remove unnecessary memset 2025-08-11 14:08:52 +01:00
tps6586x-regulator.c
tps6594-regulator.c regulator: tps6594-regulator: Remove unneeded semicolon 2025-08-11 14:08:51 +01:00
tps51632-regulator.c
tps62360-regulator.c
tps65023-regulator.c
tps65086-regulator.c
tps65090-regulator.c
tps65132-regulator.c
tps65217-regulator.c
tps65218-regulator.c
tps65219-regulator.c regulator: tps65219: regulator: tps65219: Fix error codes in probe() 2025-08-19 16:51:03 +01:00
tps65910-regulator.c
tps65912-regulator.c
tps68470-regulator.c
twl-regulator.c
twl6030-regulator.c
uniphier-regulator.c regulator: Switch back to struct platform_driver::remove() 2024-11-12 13:08:35 +00:00
userspace-consumer.c regulator: Switch back to struct platform_driver::remove() 2024-11-12 13:08:35 +00:00
vctrl-regulator.c
vexpress-regulator.c
virtual.c regulator: Switch back to struct platform_driver::remove() 2024-11-12 13:08:35 +00:00
vqmmc-ipq4019-regulator.c
wm831x-dcdc.c
wm831x-isink.c
wm831x-ldo.c
wm8350-regulator.c regulator: Switch back to struct platform_driver::remove() 2024-11-12 13:08:35 +00:00
wm8400-regulator.c
wm8994-regulator.c