linux/drivers/nvmem
Greg Kroah-Hartman 10c833da4d More than a handful of changes for SPMI. I'm bringing on Abel
Vesa to help maintain SPMI so the tree may change in the future
 but we'll probably continue to send patches when the pile is
 small.
 
 The big change here is that we gained a new function
 spmi_subdevice_alloc_and_add() to support complex PMICs that have
 different devices spread throughout the SPMI address. We've grown
 subdevice drivers that use OF APIs directly to figure out some
 base address to add to all their register read/write operations
 which is tightly coupling our parent/child drivers. This change
 allows us to clean all those drivers up to use standard device
 APIs and their own regmap instead of relying on a parent SPMI
 driver to do all the heavy lifting. The series also updated
 drivers that could use the new API and I picked those all up
 because they were acked by maintainers.
 
 Beyond that we have some minor fixes to the Qualcomm and Mediatek
 SPMI drivers for bugs in software and hardware and a couple
 maintainer updates as stated earlier.
 -----BEGIN PGP SIGNATURE-----
 
 iQJIBAABCAAyFiEE9L57QeeUxqYDyoaDrQKIl8bklSUFAmrUXP4UHHN3Ym95ZEBj
 aHJvbWl1bS5vcmcACgkQrQKIl8bklSVZ4A/+P0bQBgIiAjklv1cKSm89t8G4uGM1
 it0eqGzmL4BLVtXnwdv+dRsIRe+T3oBRxf45aEvbCvGby0s+UsRIvg3dX+cnDogQ
 jvr6a1/wfkjoe44cdhgizfZJaURAUsSTdWhfXlAkAovtEAyBHVUOmIDBz/9BD0ni
 KrCVWaKEdbKu5IbPcEkIrGVJ+RCLTy0Ke0MbQS2+bmRVul6frfLf5RHMqu9dlgWz
 irU4560aL1tsPKjXIHVC3vIdhowltInfOmtf0DLF3ExF6bJc5D8cXcCz3036WEvu
 1bzrjxLbYFatCtKXdUM9SrUGp1gXaQruccaNEr3ze9PV7jt3XV6ehsWaolOcWrGz
 /B1e0wG0XAMETZ34IrAI7l/DAPJdTY/brMATOQq3qXYMzwmyziD32ZdlxTV5b6wJ
 tRfX3hxls/42Ii4UEPiHXzaacO4tpywJOmMa0MY9QumjfbqksIuzGGZsTfYrgLdg
 X1RRcm+VqrMCE+ylFNrwBPybVkjLb5p5HEGdC0IedKw8PcqzVQ4M3ea5X2gdaFh4
 i8xZHfF3XifDNBbQLg4E3qNriAQhrz7Ax8qSAP/JLGRgNRijAFWVOPeGPsWLRIhY
 3Sq6KX4T5RKHg3N2ertmIyPM/eTj43iJT+kQSdhaerJ+Q79olBlhh3LdgeW9zhoq
 kXK4GqNlFeIx+aI=
 =1IIa
 -----END PGP SIGNATURE-----

Merge tag 'spmi-for-next' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/sboyd/spmi into char-misc-next

Stephen writes:

More than a handful of changes for SPMI. I'm bringing on Abel
Vesa to help maintain SPMI so the tree may change in the future
but we'll probably continue to send patches when the pile is
small.

The big change here is that we gained a new function
spmi_subdevice_alloc_and_add() to support complex PMICs that have
different devices spread throughout the SPMI address. We've grown
subdevice drivers that use OF APIs directly to figure out some
base address to add to all their register read/write operations
which is tightly coupling our parent/child drivers. This change
allows us to clean all those drivers up to use standard device
APIs and their own regmap instead of relying on a parent SPMI
driver to do all the heavy lifting. The series also updated
drivers that could use the new API and I picked those all up
because they were acked by maintainers.

Beyond that we have some minor fixes to the Qualcomm and Mediatek
SPMI drivers for bugs in software and hardware and a couple
maintainer updates as stated earlier.

* tag 'spmi-for-next' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/sboyd/spmi:
  MAINTAINERS: Add Abel as SPMI co-maintainer
  spmi: mtk-pmif: Fix clock reference leak in mtk_spmi_bus_probe()
  iio: adc: qcom-spmi-iadc: Remove regmap R/W wrapper functions
  iio: adc: qcom-spmi-iadc: Migrate to devm_spmi_subdevice_alloc_and_add()
  misc: qcom-coincell: Migrate to devm_spmi_subdevice_alloc_and_add()
  phy: qualcomm: eusb2-repeater: Migrate to devm_spmi_subdevice_alloc_and_add()
  power: reset: qcom-pon: Migrate to devm_spmi_subdevice_alloc_and_add()
  nvmem: qcom-spmi-sdam: Migrate to devm_spmi_subdevice_alloc_and_add()
  spmi: Add helper to get a parent SPMI device
  spmi: Implement spmi_subdevice_alloc_and_add() and devm variant
  spmi: Remove unneeded goto in spmi_device_add() error path
  spmi: Print error status with %pe format
  spmi: Remove redundant dev_name() print in spmi_device_add()
  spmi: Fix potential use-after-free by grabbing of_node reference
  spmi: mtk-pmif: Add workaround for FSM lockup/error in read operation
  MAINTAINERS: Add Qualcomm SPMI controller entry
  spmi: pmic-arb: return 0 in spmi_pmic_arb_register_buses() on success
2026-10-18 10:01:56 +02:00
..
layouts nvmem: layouts: onie-tlv: fix device_node reference leak in error path 2026-10-09 16:27:11 +02:00
airoha-smc-efuses.c nvmem: airoha: Add support for SMC eFUSE 2026-07-17 14:55:46 +02:00
an8855-efuse.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
apple-efuses.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
apple-spmi-nvmem.c nvmem: apple-spmi-nvmem: wrap regmap calls to satisfy CFI 2026-07-31 11:00:13 +02:00
at24.c eeprom: move nvmem EEPROM drivers to drivers/nvmem/ 2026-07-31 14:15:53 +02:00
at25.c eeprom: move nvmem EEPROM drivers to drivers/nvmem/ 2026-07-31 14:15:53 +02:00
bcm-ocotp.c
brcm_nvram.c nvmem: brcm_nvram: fix out-of-bounds access on malformed flash data 2026-07-31 14:15:54 +02:00
core.c nvmem: core: Fix OOB read for bit offsets of more than one byte 2026-10-09 16:27:11 +02:00
ee1004.c eeprom: move nvmem EEPROM drivers to drivers/nvmem/ 2026-07-31 14:15:53 +02:00
eeprom_93xx46.c eeprom: move nvmem EEPROM drivers to drivers/nvmem/ 2026-07-31 14:15:53 +02:00
imx-iim.c
imx-ocotp-ele.c
imx-ocotp-scu.c
imx-ocotp.c
internals.h nvmem: protect nvmem_device::ops with SRCU 2026-10-02 13:11:00 +02:00
jz4780-efuse.c
Kconfig More than a handful of changes for SPMI. I'm bringing on Abel 2026-10-18 10:01:56 +02:00
lan9662-otpc.c nvmem: lan9662-otp: add support for LAN969x 2026-07-17 14:55:46 +02:00
layerscape-sfp.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
layouts.c nvmem: layouts: Support fixed-layout as the nvmem device node itself 2026-10-02 13:10:59 +02:00
lpc18xx_eeprom.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
lpc18xx_otp.c
m24lr.c eeprom: move nvmem EEPROM drivers to drivers/nvmem/ 2026-07-31 14:15:53 +02:00
Makefile nvmem: add mt6323 PMIC EFUSE driver 2026-10-02 13:10:59 +02:00
max77759-nvmem.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
meson-efuse.c
meson-mx-efuse.c
microchip-otpc.c
mt6323-efuse.c nvmem: add mt6323 PMIC EFUSE driver 2026-10-02 13:10:59 +02:00
mtk-efuse.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
mxs-ocotp.c
nintendo-otp.c nvmem: nintendo-otp: Use of_device_get_match_data() 2026-07-17 14:55:46 +02:00
qcom-spmi-sdam.c nvmem: qcom-spmi-sdam: Migrate to devm_spmi_subdevice_alloc_and_add() 2026-10-14 20:03:58 -07:00
qfprom.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
qnap-mcu-eeprom.c
qoriq-efuse.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
rave-sp-eeprom.c
rcar-efuse.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
rmem.c
rockchip-efuse.c
rockchip-otp.c nvmem: rockchip-otp: Serialize reads 2026-10-09 16:27:11 +02:00
s32g-ocotp-nvmem.c
sc27xx-efuse.c
sec-qfprom.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
snvs_lpgpr.c
sprd-efuse.c
stm32-bsec-optee-ta.c
stm32-bsec-optee-ta.h
stm32-romem.c
sunplus-ocotp.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
sunxi_sid.c
u-boot-env.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
uniphier-efuse.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
vf610-ocotp.c
zynqmp_nvmem.c