mirror-linux/include/linux/mfd
Linus Torvalds 6093a688a0 Char/Misc/IIO/Binder changes for 6.18-rc1
Here is the big set of char/misc/iio and other driver subsystem changes
 for 6.18-rc1.  Loads of different stuff in here, it was a busy
 development cycle in lots of different subsystems, with over 27k new
 lines added to the tree.  Included in here are:
   - IIO updates including new drivers, reworking of existing apis, and
     other goodness in the sensor subsystems
   - MEI driver updates and additions
   - NVMEM driver updates
   - slimbus removal for an unused driver and some other minor
     updates
   - coresight driver updates and additions
   - MHI driver updates
   - comedi driver updates and fixes
   - extcon driver updates
   - interconnect driver additions
   - eeprom driver updates and fixes
   - minor UIO driver updates
   - tiny W1 driver updates
 
 But the majority of new code is in the rust bindings and additions,
 which includes:
   - misc driver rust binding updates for read/write support, we can now
     write "normal" misc drivers in rust fully, and the sample driver
     shows how this can be done.
   - Initial framework for USB driver rust bindings, which are disabled
     for now in the build, due to limited support, but coming in through
     this tree due to dependencies on other rust binding changes that
     were in here.  I'll be enabling these back on in the build in the
     usb.git tree after -rc1 is out so that developers can continue to
     work on these in linux-next over the next development cycle.
   - Android Binder driver implemented in Rust.  This is the big one, and
     was driving a huge majority of the rust binding work over the past
     years.  Right now there are 2 binder drivers in the kernel, selected
     only at build time as to which one to use as binder wants to be
     included in the system at boot time.  The binder C maintainers all
     agreed on this, as eventually, they want the C code to be removed from
     the tree, but it will take a few releases to get there while both
     are maintained to ensure that the rust implementation is fully
     stable and compliant with the existing userspace apis.
 
 All of these have been in linux-next for a while, with only minor merge
 issues showing up (you will hit them as well.)  Just accept both sides
 of the merge, it's just some header and include file lines, nothing
 major.
 
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 -----BEGIN PGP SIGNATURE-----
 
 iG0EABECAC0WIQT0tgzFv3jCIUoxPcsxR9QN2y37KQUCaOEffA8cZ3JlZ0Brcm9h
 aC5jb20ACgkQMUfUDdst+ynI/wCgjLFWH9B+huZI5JQb06NShggZod4AnjFFJ4ID
 macHNv5/SjpAh7H5ssBU
 =cjWS
 -----END PGP SIGNATURE-----

Merge tag 'char-misc-6.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc

Pull Char/Misc/IIO/Binder updates from Greg KH:
 "Here is the big set of char/misc/iio and other driver subsystem
  changes for 6.18-rc1.

  Loads of different stuff in here, it was a busy development cycle in
  lots of different subsystems, with over 27k new lines added to the
  tree.

  Included in here are:

   - IIO updates including new drivers, reworking of existing apis, and
     other goodness in the sensor subsystems

   - MEI driver updates and additions

   - NVMEM driver updates

   - slimbus removal for an unused driver and some other minor updates

   - coresight driver updates and additions

   - MHI driver updates

   - comedi driver updates and fixes

   - extcon driver updates

   - interconnect driver additions

   - eeprom driver updates and fixes

   - minor UIO driver updates

   - tiny W1 driver updates

  But the majority of new code is in the rust bindings and additions,
  which includes:

   - misc driver rust binding updates for read/write support, we can now
     write "normal" misc drivers in rust fully, and the sample driver
     shows how this can be done.

   - Initial framework for USB driver rust bindings, which are disabled
     for now in the build, due to limited support, but coming in through
     this tree due to dependencies on other rust binding changes that
     were in here. I'll be enabling these back on in the build in the
     usb.git tree after -rc1 is out so that developers can continue to
     work on these in linux-next over the next development cycle.

   - Android Binder driver implemented in Rust.

     This is the big one, and was driving a huge majority of the rust
     binding work over the past years. Right now there are two binder
     drivers in the kernel, selected only at build time as to which one
     to use as binder wants to be included in the system at boot time.

     The binder C maintainers all agreed on this, as eventually, they
     want the C code to be removed from the tree, but it will take a few
     releases to get there while both are maintained to ensure that the
     rust implementation is fully stable and compliant with the existing
     userspace apis.

  All of these have been in linux-next for a while"

* tag 'char-misc-6.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (320 commits)
  rust: usb: keep usb::Device private for now
  rust: usb: don't retain device context for the interface parent
  USB: disable rust bindings from the build for now
  samples: rust: add a USB driver sample
  rust: usb: add basic USB abstractions
  coresight: Add label sysfs node support
  dt-bindings: arm: Add label in the coresight components
  coresight: tnoc: add new AMBA ID to support Trace Noc V2
  coresight: Fix incorrect handling for return value of devm_kzalloc
  coresight: tpda: fix the logic to setup the element size
  coresight: trbe: Return NULL pointer for allocation failures
  coresight: Refactor runtime PM
  coresight: Make clock sequence consistent
  coresight: Refactor driver data allocation
  coresight: Consolidate clock enabling
  coresight: Avoid enable programming clock duplicately
  coresight: Appropriately disable trace bus clocks
  coresight: Appropriately disable programming clocks
  coresight: etm4x: Support atclk
  coresight: catu: Support atclk
  ...
2025-10-04 16:26:32 -07:00
..
abx500 mfd: ab8500: Remove non-existent configuration "#ifdef CONFIG_AB8500_DEBUG" 2023-11-01 10:02:11 +00:00
arizona mfd: arizona: Make legacy gpiolib interface optional 2025-10-01 10:28:24 +01:00
atc260x
da9052 mfd: da9052: Store result from fault_log 2024-12-17 13:17:25 +00:00
da9055 regulator: da9055: Fully convert to GPIO descriptors 2024-02-26 13:46:34 +00:00
da9062
da9063 watchdog: da9063: Do not use a global variable 2024-11-05 10:04:40 +01:00
da9150
madera mfd: madera: Don't use "proxy" headers 2025-07-24 11:27:14 +01:00
mt6323
mt6328 mfd: mt6397: Add initial support for MT6328 2024-10-31 16:25:03 +00:00
mt6331
mt6332
mt6357
mt6358 regulator: mt6358: Add missing regulators for MT6366 2023-10-02 19:43:49 +01:00
mt6359
mt6359p
mt6397 rtc: mt6397: drop unused defines 2025-04-01 12:03:39 +02:00
samsung mfd: sec: Change device_type to int 2025-05-23 08:48:44 +01:00
syscon mfd: syscon: atmel-smc: Don't use "proxy" headers 2025-07-24 11:27:15 +01:00
wcd934x
wm831x
wm8350 mfd: wm8350-core: Don't use "proxy" headers 2025-07-24 11:27:13 +01:00
wm8994
88pm80x.h mfd: 88pm80x: Constify read-only regmap structs 2024-08-30 09:40:11 +01:00
88pm860x.h mfd: 88pm860x: Remove unused extern declarations 2023-08-18 21:48:05 +01:00
88pm886.h iio: adc: Add driver for Marvell 88PM886 PMIC ADC 2025-09-13 14:47:14 +01:00
aat2870.h mfd: aat2870: Use per-client debugfs directory 2025-05-22 15:49:58 +01:00
abx500.h
ac100.h
adp5520.h
adp5585.h gpio: adp5585: support gpi events 2025-07-01 21:50:51 +01:00
altera-a10sr.h
altera-sysmgr.h
as3711.h
as3722.h
atmel-hlcdc.h drm: atmel-hlcdc: Define XLCDC specific registers 2024-05-30 15:44:05 +02:00
axp20x.h mfd: axp20x: AXP717: Add AXP717_TS_PIN_CFG to writeable regs 2025-02-20 16:05:09 +00:00
bcm590xx.h mfd: bcm590xx: Drop unused "id" member of bcm590xx struct 2025-05-23 08:48:08 +01:00
bcm2835-pm.h
bd9571mwv.h
bq257xx.h mfd: bq257xx: Add support for BQ25703A core driver 2025-09-11 15:54:43 +01:00
cgbc.h mfd: Add Congatec Board Controller driver 2024-10-09 16:31:48 +01:00
core.h mfd: core: Make platform_data pointer const in struct mfd_cell 2024-12-17 13:14:21 +00:00
cs40l50.h mfd: cs40l50: Add support for CS40L50 core driver 2024-06-28 15:36:05 +01:00
cs42l43-regs.h mfd: cs42l43: Add support for cs42l43 core driver 2023-08-17 12:06:11 +01:00
cs42l43.h mfd: cs42l43: Tidy up header includes 2024-02-23 14:58:01 +00:00
da8xx-cfgchip.h
da903x.h
davinci_voicecodec.h mfd: davinci_voicecodec: Don't use "proxy" headers 2025-07-24 11:27:11 +01:00
db8500-prcmu.h
dbx500-prcmu.h arm: Handle KCOV __init vs inline mismatches 2025-07-21 21:43:39 -07:00
dln2.h
ezx-pcap.h mfd: ezx-pcap: Remove unused pcap_adc_sync 2025-03-14 08:59:07 +00:00
gsc.h
hi655x-pmic.h mfd: hi655x-pmic: Convert to devm_platform_ioremap_resource() 2023-08-18 21:48:00 +01:00
hi6421-pmic.h
idt8a340_reg.h mfd: idt8a340_reg: Start comments with '/*' 2024-07-04 17:08:01 +01:00
idt82p33_reg.h
idtRC38xxx_reg.h ptp: add FemtoClock3 Wireless as ptp hardware clock 2024-01-29 13:00:23 +00:00
imx25-tsadc.h
ingenic-tcu.h
intel-m10-bmc.h mfd: intel-m10-bmc: Change staging size to a variable 2024-05-10 15:39:16 +01:00
intel_pmc_bxt.h
intel_soc_pmic.h mfd: intel_soc_pmic_chtwc: Add Lenovo Yoga Tab 3 X90F to intel_cht_wc_models 2023-02-04 13:03:27 +00:00
intel_soc_pmic_bxtwc.h
intel_soc_pmic_mrfld.h
ipaq-micro.h
iqs62x.h
janz.h
kempld.h
khadas-mcu.h
lm3533.h mfd: lm3533: Move to new GPIO descriptor-based APIs 2024-07-04 17:38:40 +01:00
lochnagar.h
lochnagar1_regs.h
lochnagar2_regs.h
loongson-se.h mfd: Add support for Loongson Security Engine chip controller 2025-09-02 12:29:57 +01:00
lp873x.h
lp3943.h mfd: lp3943: Drop #include <linux/pwm.h> from header 2025-03-14 08:59:06 +00:00
lp8788-isink.h
lp8788.h backlight: lp8788: Drop support for platform data 2024-05-10 15:44:28 +01:00
lp87565.h
lpc_ich.h mfd: lpc_ich: Move APL GPIO resources to a custom structure 2023-11-01 10:02:13 +00:00
macsmc.h mfd: Add Apple Silicon System Management Controller 2025-07-24 09:47:33 +01:00
max5970.h regulator: max5970: Drop unused structs 2024-10-10 12:16:58 +01:00
max7360.h mfd: Add max7360 support 2025-09-16 15:24:48 +01:00
max8907.h
max8925.h
max8997-private.h mfd: maxim: Correct Samsung "Electronics" spelling in headers 2025-06-03 09:46:40 +01:00
max8997.h mfd: maxim: Correct Samsung "Electronics" spelling in copyright headers 2025-06-03 09:46:41 +01:00
max8998-private.h mfd: maxim: Correct Samsung "Electronics" spelling in headers 2025-06-03 09:46:40 +01:00
max8998.h mfd: maxim: Correct Samsung "Electronics" spelling in headers 2025-06-03 09:46:40 +01:00
max14577-private.h mfd: maxim: Correct Samsung "Electronics" spelling in copyright headers 2025-06-03 09:46:41 +01:00
max14577.h mfd: maxim: Correct Samsung "Electronics" spelling in copyright headers 2025-06-03 09:46:41 +01:00
max77541.h mfd: max77541: Add ADI MAX77541/MAX77540 PMIC Support 2023-06-21 18:16:18 +01:00
max77620.h
max77650.h
max77686-private.h mfd: maxim: Correct Samsung "Electronics" spelling in copyright headers 2025-06-03 09:46:41 +01:00
max77686.h mfd: maxim: Correct Samsung "Electronics" spelling in copyright headers 2025-06-03 09:46:41 +01:00
max77693-common.h mfd: Add new driver for MAX77705 PMIC 2025-02-20 16:37:40 +00:00
max77693-private.h mfd: maxim: Correct Samsung "Electronics" spelling in copyright headers 2025-06-03 09:46:41 +01:00
max77693.h mfd: maxim: Correct Samsung "Electronics" spelling in copyright headers 2025-06-03 09:46:41 +01:00
max77705-private.h leds: max77705: Add LEDs support 2025-02-20 16:38:37 +00:00
max77714.h
max77759.h mfd: max77759: Add Maxim MAX77759 core driver 2025-05-09 15:22:30 +01:00
max77843-private.h mfd: Fix a few spelling mistakes in PMIC header file comments 2023-12-07 13:50:30 +00:00
mc13xxx.h mfd: input: rtc: mc13783: Remove deprecated mc13xxx_irq_ack() 2025-09-11 11:39:31 +01:00
mc13783.h
mc13892.h
mcp.h
menelaus.h
motorola-cpcap.h
mp2629.h
mxs-lradc.h
nct6694.h mfd: Add core driver for Nuvoton NCT6694 2025-09-16 14:41:57 +01:00
ntxec.h mfd: ntxec: Add version number for EC in Tolino Vision 2023-02-22 11:42:29 +00:00
ocelot.h mfd: ocelot: Add helper to get regmap from a resource 2022-09-09 07:54:25 +01:00
palmas.h mfd: palmas: Constify strings with regulator names 2024-10-16 09:04:09 +01:00
qcom_rpm.h
qnap-mcu.h mfd: qnap-mcu: Include linux/types.h in qnap-mcu.h shared header 2025-10-01 10:28:13 +01:00
rave-sp.h
rc5t583.h
rdc321x.h
retu.h
rk808.h mfd: rk8xx-core: Allow to customize RK806 reset mode 2025-07-24 11:27:17 +01:00
rn5t618.h watchdog: rn5t618: add support for read out bootstatus 2022-11-19 15:30:40 +01:00
rohm-bd718x7.h
rohm-bd957x.h
rohm-bd71815.h
rohm-bd71828.h mfd: bd71828, bd71815: Prepare for power-supply support 2025-10-01 10:28:47 +01:00
rohm-bd96801.h mfd: rohm-bd96801: Support ROHM BD96802 2025-04-24 14:52:57 +01:00
rohm-bd96802.h mfd: rohm-bd96801: Support ROHM BD96802 2025-04-24 14:52:57 +01:00
rohm-generic.h mfd: bd96801: Support ROHM BD96806 2025-04-24 14:53:13 +01:00
rohm-shared.h
rsmu.h mfd: rsmu: Support 32-bit address space 2023-04-26 11:40:34 +01:00
rt5033-private.h mfd: rt5033: Apply preparatory changes before adding rt5033-charger driver 2023-06-08 18:16:57 +01:00
rt5033.h power: supply: rt5033_battery: Move struct rt5033_battery to battery driver 2023-06-08 18:17:38 +01:00
rz-mtu3.h mfd: rz-mtu3: Link time dependencies 2023-08-18 21:48:04 +01:00
sc27xx-pmic.h
si476x-core.h
si476x-platform.h mfd: Fix a few spelling mistakes in PMIC header file comments 2023-12-07 13:50:30 +00:00
si476x-reports.h
sky81452.h
stm32-lptimer.h mfd: stm32-lptimer: Add support for stm32mp25 2025-05-13 11:12:52 +01:00
stm32-timers.h mfd: stm32-timers: Add support for stm32mp25 2025-03-14 08:59:05 +00:00
stmfx.h mfd: stmfx: Remove #ifdef guards for PM related functions 2022-12-07 13:28:13 +00:00
stmpe.h
stpmic1.h mfd: stpmic1: Fixup main control register and bits naming 2023-06-15 09:19:39 +01:00
stw481x.h
sun4i-gpadc.h mfd: sun4i-gpadc: Correct specified GPADC interrupt numbers 2024-02-23 14:58:00 +00:00
sy7636a.h
syscon.h mfd: syscon: Add of_syscon_register_regmap() API 2024-06-26 16:46:50 +01:00
tc3589x.h
ti-lmu-register.h
ti-lmu.h
ti_am335x_tscadc.h
tps6105x.h
tps6507x.h
tps6586x.h
tps6594.h mfd: tps6594: Add TI TPS652G1 support 2025-07-10 09:58:01 +01:00
tps65010.h ARM/mfd/gpio: Fixup TPS65010 regression on OMAP1 OSK1 2023-05-24 15:01:22 +02:00
tps65086.h regulator: tps65086: Select dedicated regulator config for chip variant 2023-08-18 22:06:52 +01:00
tps65090.h
tps65217.h
tps65218.h
tps65219.h mfd: tps65219: Remove another unused field from 'struct tps65219' 2025-07-24 11:27:09 +01:00
tps65910.h mfd: Fix a few spelling mistakes in PMIC header file comments 2023-12-07 13:50:30 +00:00
tps65912.h mfd: tps65912: Use devm helper functions to simplify probe 2024-07-04 17:38:40 +01:00
tps68470.h
twl.h mfd: twl6030-irq: Remove unused twl6030_mmc_card_detect* 2025-07-24 11:27:00 +01:00
twl4030-audio.h
twl6040.h mfd: twl6040: Drop twl6040_platform_data and associated definitions 2022-12-07 13:28:07 +00:00
ucb1x00.h gpiolib: split linux/gpio/driver.h out of linux/gpio.h 2023-03-06 12:33:01 +02:00
upboard-fpga.h mfd: Add support for AAEON UP board FPGA 2024-12-17 13:17:26 +00:00
viperboard.h
wl1273-core.h
wm97xx.h
wm8400-audio.h
wm8400-private.h
wm8400.h