linux/drivers/iio/dac
Greg Kroah-Hartman 14c4dc8bb6 IIO: 2nd set of new device support, features and cleanup for 6.11
The big one here is we finally have Paul Cercueil's (and others)
 DMA buffer support for IIO devices enabling high speed zero
 copy transfer of data to and from sensors supported by IIO (and for
 example USB).  This should aid with upstream support of a range of
 higher performance ADCs and DACs.
 
 Two merges from other trees
 - spi/spi_devm_optimize used for simplification in ad7944.
 - dmaengine/topic_dma_vec to enable the DMABUF series.
 
 One feature with impact outside IIO.
 - Richer set of dev_err_probe() like helpers to cover ERR_PTR() cases.
 
 New device support
 ==================
 adi,ad7173
 - Add support for AD4111, AD4112, AD4114, AD4115 and ADC4116 pseudo
   differential ADCs. Major driver rework was needed to enabled these.
 adi,ad7944
 - Use devm_spi_optimize_message() to avoid a local devm cleanup
   callback. This is the example case from the patch set, others will
   follow.
 mediatek,mt6359-auxadc
 - New driver for this ADC IP found in MT6357, MT6358 and MT6359 PMICs.
 st,accel
 - Add support for the LIS2DS12 accelerometer
 ti,ads1119
 - New driver for this 16 bit 2-differential or 4-single ended channel
   ADC.
 
 Features
 ========
 dt-bindings
 - Introduce new common-mode-channel property to help handle pseudo
   differential ADCs where we have something that looks like one side
   of differential input, but which is only suited for use with a
   slow moving reference.
 adi,adf4350
 - Support use as a clock provider.
 iio-hmwon
 - Support reading of labels from IIO devices by their consumers and
   use this in the hwmon bridge.
 
 Cleanup and minor fixes
 =======================
 Treewide
 - Use regmap_clear_bits() / regmap_set_bits() to simplify open coded
   equivalents.
 - Use devm_regulator_get_enable_read_voltage() to replace equivalent
   opencoded boilerplate. In some cases enabled complete conversion to
   devm handling and removal of explicit remove() callbacks.
 - Introduce dev_err_ptr_probe() and other variants and make use of
   of them in a couple of examples driver cleanups. Will find use in
   many more drivers soon.
 adi,ad7192
 - Introduce local struct device *dev and use dev_err_probe() to give
   more readable code.
 adi,adi-axi-adc/dac
 - Improved consistency of messages using dev_err_probe()
 adi,adis
 - Split the trigger handling into cases that needed paging and those that
   don't resulting in more readable code.
 - Use cleanup.h to simplify error paths via scoped cleanup.
 - Add adis specific lock helpers and make use of them in a number of drivers.
 adi,ad7192
 - Update maintainer (Alisa-Dariana Roman)
 adi,ad7606
 - dt-binding cleanup.
 avago,apds9306
 - Add a maintainer entry (Subhajit Ghosh)
 linear,ltc2309
 - Fix a wrong endian type.
 st,stm32-dfsdm
 - Fix a missing port property in the dt-binding.
 st,sensors
 - Relax whoami match failure to a warning print rather than probe failure.
   This enables fallback compatibles to existing parts from those that don't
   necessarily even exit yet.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEbilms4eEBlKRJoGxVIU0mcT0FogFAmaEXkQRHGppYzIzQGtl
 cm5lbC5vcmcACgkQVIU0mcT0FojAVBAAnaPB1CCyh61JkMQx815wn87looa+JRi3
 v8J/NsM64gYEwG6aNLLxrHAMFECw4GVrL4rHA5bCJFlSYioSKgs0VB7ltOJ/2258
 CsnSxgJ+4fN0468oZz63WuvrmxBsLGbPRGdE/6pkLMJiGHC0Bb/v3ngrJ/LUbAt6
 j0zAFZ2lb5+iuM8MW5vUE0AcwoQakZEg75N4jD6vHSiLvk6dAduj+R8k6z4OlER9
 MaotfjIqYieQ/4SplMcJEd63IxodKjBJacZHFu7uN8d7VWkDhNPyPrJ388GoeXP6
 CK1cTQWO7ZD2yCdY5LjXJYCAejgtiCIMtM7ghe0ZU/OuDBOFgmoaHrmi48pceF9o
 h8KeOsZIa9oF8SSZuKROTQWAwh33F6elf+IoUWYp61hJwft1BQF060rTsGfm7Qq5
 bFOPwMn+BJASC3ARtjNAI/posdAyS4Tb7fBBsDZ9bMW1Y02X/jlhDvDby1WNAcSY
 LEttjsA/naCfquXy4ng+T9sNB+sy2x92FwgEv1Z9MrnMKp5T+mX6XWQ/xhHplGGa
 VAohB/31EatglJqPS0U9mLr1cmUsBS7ItHG9bDB5mOE9wQA5yAqhEqTbe2P3sWWO
 OW43UVaS1VTd10XbY3l0Jjpwe3qsMZNt6M+JaCSizUCLQiEc0h06THcB/xgxdbad
 sTmopNgIR3Y=
 =+9tp
 -----END PGP SIGNATURE-----

Merge tag 'iio-for-6.11b' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio into char-misc-next

Jonathan writes:

IIO: 2nd set of new device support, features and cleanup for 6.11

The big one here is we finally have Paul Cercueil's (and others)
DMA buffer support for IIO devices enabling high speed zero
copy transfer of data to and from sensors supported by IIO (and for
example USB).  This should aid with upstream support of a range of
higher performance ADCs and DACs.

Two merges from other trees
- spi/spi_devm_optimize used for simplification in ad7944.
- dmaengine/topic_dma_vec to enable the DMABUF series.

One feature with impact outside IIO.
- Richer set of dev_err_probe() like helpers to cover ERR_PTR() cases.

New device support
==================
adi,ad7173
- Add support for AD4111, AD4112, AD4114, AD4115 and ADC4116 pseudo
  differential ADCs. Major driver rework was needed to enabled these.
adi,ad7944
- Use devm_spi_optimize_message() to avoid a local devm cleanup
  callback. This is the example case from the patch set, others will
  follow.
mediatek,mt6359-auxadc
- New driver for this ADC IP found in MT6357, MT6358 and MT6359 PMICs.
st,accel
- Add support for the LIS2DS12 accelerometer
ti,ads1119
- New driver for this 16 bit 2-differential or 4-single ended channel
  ADC.

Features
========
dt-bindings
- Introduce new common-mode-channel property to help handle pseudo
  differential ADCs where we have something that looks like one side
  of differential input, but which is only suited for use with a
  slow moving reference.
adi,adf4350
- Support use as a clock provider.
iio-hmwon
- Support reading of labels from IIO devices by their consumers and
  use this in the hwmon bridge.

Cleanup and minor fixes
=======================
Treewide
- Use regmap_clear_bits() / regmap_set_bits() to simplify open coded
  equivalents.
- Use devm_regulator_get_enable_read_voltage() to replace equivalent
  opencoded boilerplate. In some cases enabled complete conversion to
  devm handling and removal of explicit remove() callbacks.
- Introduce dev_err_ptr_probe() and other variants and make use of
  of them in a couple of examples driver cleanups. Will find use in
  many more drivers soon.
adi,ad7192
- Introduce local struct device *dev and use dev_err_probe() to give
  more readable code.
adi,adi-axi-adc/dac
- Improved consistency of messages using dev_err_probe()
adi,adis
- Split the trigger handling into cases that needed paging and those that
  don't resulting in more readable code.
- Use cleanup.h to simplify error paths via scoped cleanup.
- Add adis specific lock helpers and make use of them in a number of drivers.
adi,ad7192
- Update maintainer (Alisa-Dariana Roman)
adi,ad7606
- dt-binding cleanup.
avago,apds9306
- Add a maintainer entry (Subhajit Ghosh)
linear,ltc2309
- Fix a wrong endian type.
st,stm32-dfsdm
- Fix a missing port property in the dt-binding.
st,sensors
- Relax whoami match failure to a warning print rather than probe failure.
  This enables fallback compatibles to existing parts from those that don't
  necessarily even exit yet.

* tag 'iio-for-6.11b' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (112 commits)
  iio: adc: ad7173: Fix uninitialized symbol is_current_chan
  iio: adc: Add support for MediaTek MT6357/8/9 Auxiliary ADC
  math.h: Add unsigned 8 bits fractional numbers type
  dt-bindings: iio: adc: Add MediaTek MT6359 PMIC AUXADC
  iio: common: scmi_iio: convert to dev_err_probe()
  iio: backend: make use of dev_err_cast_probe()
  iio: temperature: ltc2983: convert to dev_err_probe()
  dev_printk: add new dev_err_probe() helpers
  iio: xilinx-ams: Add labels
  iio: adc: ad7944: use devm_spi_optimize_message()
  Documentation: iio: Document high-speed DMABUF based API
  iio: buffer-dmaengine: Support new DMABUF based userspace API
  iio: buffer-dma: Enable support for DMABUFs
  iio: core: Add new DMABUF interface infrastructure
  MAINTAINERS: Update AD7192 driver maintainer
  iio: adc: ad7192: use devm_regulator_get_enable_read_voltage
  iio: st_sensors: relax WhoAmI check in st_sensors_verify_id()
  MAINTAINERS: Add AVAGO APDS9306
  dt-bindings: iio: adc: adi,ad7606: comment and sort the compatible names
  dt-bindings: iio: adc: adi,ad7606: add missing datasheet link
  ...
2024-07-04 11:04:20 +02:00
..
ad3552r.c iio: dac: ad3552r: use devm_regulator_get_enable_read_voltage() 2024-06-25 21:04:51 +01:00
ad5064.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
ad5360.c iio: dac: ad5360: Fix alignment for DMA safety 2022-06-14 11:53:15 +01:00
ad5380.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
ad5421.c iio: dac: ad5421: Fix alignment for DMA safety 2022-06-14 11:53:15 +01:00
ad5446.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
ad5449.c iio: dac: ad5449: Fix alignment for DMA safety 2022-06-14 11:53:15 +01:00
ad5504.c iio: dac: ad5504: Fix alignment for DMA safety 2022-06-14 11:53:16 +01:00
ad5592r-base.c iio: dac: ad5592r: fix temperature channel scaling value 2024-05-27 09:49:20 +01:00
ad5592r-base.h iio: dac: ad5592r: Fix alignment for DMA safety 2022-06-14 11:53:16 +01:00
ad5592r.c Char/Misc and other driver updates for 5.18-rc1 2022-03-28 12:27:35 -07:00
ad5593r.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
ad5624r_spi.c iio: Replace strtobool() with kstrtobool() 2022-04-28 19:22:54 +01:00
ad5624r.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 2019-05-30 11:29:19 -07:00
ad5686-spi.c Char/Misc and other driver updates for 5.18-rc1 2022-03-28 12:27:35 -07:00
ad5686.c iio: dac: ad5686: Add support for AD5337 2022-12-28 17:19:45 +00:00
ad5686.h iio: dac: ad5686: Add support for AD5337 2022-12-28 17:19:45 +00:00
ad5696-i2c.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
ad5755.c iio: dac: ad5755: make use of of_device_id table 2024-04-13 18:12:14 +01:00
ad5758.c iio:dac:ad5758: Drop unused of specific headers. 2021-12-12 17:12:34 +00:00
ad5761.c iio: dac: ad5761: Fix alignment for DMA safety 2022-06-14 11:53:16 +01:00
ad5764.c iio: dac: ad5764: Fix alignment for DMA safety 2022-06-14 11:53:16 +01:00
ad5766.c iio: dac: ad5766: Fix alignment for DMA safety 2022-06-14 11:53:16 +01:00
ad5770r.c iio: dac: ad5770r: Use device_for_each_child_node_scoped() 2024-04-06 11:18:51 +01:00
ad5791.c iio: dac: ad5791: Add support for controlling RBUF via devicetree 2023-12-04 13:19:48 +00:00
ad7293.c iio: dac: ad7293: Fix alignment for DMA safety 2022-06-14 11:53:16 +01:00
ad7303.c iio: dac: ad7303: Fix alignment for DMA safety 2022-06-14 11:53:16 +01:00
ad8801.c iio: dac: ad8801: Fix alignment for DMA safety 2022-06-14 11:53:17 +01:00
ad9739a.c iio: dac: ad9739a: write complete MU_CNT1 register during lock 2024-04-29 21:11:12 +01:00
adi-axi-dac.c iio: dac: adi-axi-dac: improve probe() error messaging 2024-06-25 21:04:48 +01:00
cio-dac.c 1st set of IIO new device support, features and cleanups for the 6.4 cycle. 2023-04-12 09:45:34 +02:00
dpot-dac.c iio: dac: dpot-dac: Convert to platform remove callback returning void 2023-09-23 15:06:55 +01:00
ds4424.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
Kconfig Merge 6.10-rc6 into char-misc-next 2024-07-01 13:55:39 +02:00
lpc18xx_dac.c iio: dac: lpc18xx_dac: Convert to platform remove callback returning void 2023-09-23 15:06:55 +01:00
ltc1660.c iio: dac: ltc1660: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() 2022-07-18 18:48:18 +01:00
ltc2632.c iio: dac: ltc2632: Make use of device properties 2022-04-28 19:34:10 +01:00
ltc2688.c iio: dac: ltc2688: make use of regmap_set_bits() 2024-06-25 21:04:46 +01:00
m62332.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
Makefile iio: dac: support the ad9739a RF DAC 2024-04-20 15:41:32 +01:00
max517.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
max5522.c iio: dac: max5522: simplify with spi_get_device_match_data() 2024-06-13 19:19:24 +01:00
max5821.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
mcp4725.c iio: dac: mcp4725: Add dac_reg_offset to struct mcp4725_chip_info 2023-09-12 10:42:04 +01:00
mcp4728.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
mcp4821.c iio: dac: mcp4821: Switch to including mod_devicetable.h for struct of_device_id definition. 2024-02-28 19:26:35 +00:00
mcp4922.c iio: dac: mcp4922: add support to mcp4921 2022-07-01 11:19:08 +01:00
stm32-dac-core.c iio: dac: stm32-dac-core: make use of regmap_set_bits() 2024-06-25 21:04:46 +01:00
stm32-dac-core.h iio: stm32: Adopt SPDX identifier 2018-01-08 16:03:41 +01:00
stm32-dac.c iio: dac: stm32-dac: Convert to platform remove callback returning void 2023-09-23 15:06:55 +01:00
ti-dac082s085.c iio: dac: ti-dac082s085: Fix alignment for DMA safety 2022-06-14 11:53:17 +01:00
ti-dac5571.c iio: dac: ti-dac5571: Add DAC081C081 support 2024-03-28 13:22:15 +00:00
ti-dac7311.c iio: dac: ti-dac7311: Fix alignment for DMA safety 2022-06-14 11:53:17 +01:00
ti-dac7612.c iio: dac: ti-dac7612: Fix alignment for DMA safety 2022-06-14 11:53:17 +01:00
vf610_dac.c iio: dac: vf610: Convert to platform remove callback returning void 2023-09-23 15:06:55 +01:00