Re: [PULL] IIO: First set of new device support, features and cleanup for 6.9

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 22 Feb 2024 19:06:23 +0000
Jonathan Cameron <jic23@xxxxxxxxxx> wrote:

> The following changes since commit 6613476e225e090cc9aad49be7fa504e290dd33d:
> 
>   Linux 6.8-rc1 (2024-01-21 14:11:32 -0800)
> 
> are available in the Git repository at:
> 
>   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git tags/iio-for-6.9a
> 
> for you to fetch changes up to 3cc5ebd3a2d6247aeba81873d6b040d5d87f7db1:
> 
>   iio: imu: bmi323: Add ACPI Match Table (2024-02-19 19:34:44 +0000)
> 
Hi Greg,

There is a small conflict in here due to racing with a fix that went
through the dt tree.

Stephen has been carrying a fix up in linux-next which resolves it as expected.

https://lore.kernel.org/linux-next/20240219143945.1460f25f@xxxxxxxxxxxxxxxx/

Thanks,

Jonathan

> ----------------------------------------------------------------
> IIO: 1st set of new device support, features and cleanup for 6.9
> 
> IIO Backend support
> ===================
> 
> New approach from Nuno Sa to the problem of reuse of drivers with
> IIO devices that are actually the combination of a highspeed chip
> and an FPGA core handling the data capture and flows. It will hopefully
> also apply to some other split designs. The ad9467 and axi-adi drivers
> are converted over to this framework.
> 
> New device support
> ==================
> 
> adi,admfm2000
> - New driver for this dual microwave down converter.
> ams,as73211
> - Add support for as7331 UV sensor.
> richtek,rtq6056
> - Add support for related parts RTQ6053 and RTQ6059
> st,lsm6dsx
> - Add ASM330LHHXG1 accelerometer and gyro support (mainly IDs)
> ti,ads1298
> - New driver for this medical ADC.
> 
> Features
> ========
> 
> tests
> - Unit tests for the gain-time-scale helper library.
> bosch,bmi088
> - I2C support.
> bosh,bmi160
> - Add 10EC5280 ACPI ID. Used in a number of devices that won't get fixed.
>   The ID is actually a PCI ID belonging to realtech. No response was received
>   to earlier attempts to notify them of this.
>   The manufacturers of some devices have replied to say they will not fix
>   this incorrect ID. Add the ID and hope it isn't a problem.
> bosch,bmi323
> - Add BOSC0200 ACPI ID. Note this is a duplicate of one in the bmc150
>   driver (it appears these parts share a windows driver).
>   Both drivers perform an ID check that is safe on the other part before
>   successfully probing.
> hid-sensors-als
> - Add color temperature and chromaticity support. Note this is a replacement
>   for the series reverted in 6.8 that correctly handles all the potential
>   channel combinations.
> honeywell,hsc030pa
> - Triggered buffer support (after driver cleanup).
> honeywell,mprls00025pa
> - Improved error handling.
> - New DT binding to allow use of part number triplet as provided in data sheet
>   to specify equivalent of most of the binding more efficiently.
> - SPI support.
> memsic,mxc4005
> - ACPI ID MDA6655 as seen in the Chuwi Minibook X 2023
> ti,hdc3020
> - Add threshold event support (after some driver cleanup)
> veml,vcnl4000
> - Switch to high resolution proximity measurement.
> 
> Cleanup
> =======
> Various minor typo fixes and better use of defines etc.
> 
> Treewide
> - Stop using ACPI_PTR(). The savings in space are small and not worth
>   the complexity of __maybe_unused of ifdef guards.  To avoid use in
>   new IIO drivers based on copy and paste, clean it out.
> - cleanup.h based handling of iio_device_claim_direct_mode()/
>   iio_device_release_direct_mode() using scope_cond_guard().
>   In many drivers this is combined with other automated cleanup
>   to give maximum simplifications.
>   An initial set of drivers are converted over to this infrastructure.
> 
> Tools
> - Use rewinddir() instead of seekdir() to return to start of file.
> 
> core
> - Make iio_bus_type constant.
> 
> adi,ad16475
> - Use irq_get_trigger_type() instead of opencoding.
> adi,ad16480
> - Use irq_get_trigger_type() instead of opencoding.
> adi,ad-sigma-delta
> - Avoid overwriting IRQ flags if provided by firmware.
> ams,as73211
> - Use IIO_VAL_FRACTIONAL for scales to simplify the code and potentially
>   improve accuracy.
> gts-library
> - Use a div64_u64() instead of a loop to do a division.
> honeywell,mprls00025pa
> - Clean up dt-binding doc.
> - Drop defaults when DT binding not providing values. Very unlikely
>   these were useful given they were wrong for vast majority of supported
>   devices.
> - Whitespace cleanup
> miramems,da280
> - Use i2c_get_match_data() to replace hand rolled ACPI matching code.
> semtech,sx9324
> - Avoid unnecessary copying of property strings.
> st,lsm6dsx
> - Improve docs, particularly wrt to making addition of new device
>   support less noisy.
> st,lsm9ds0
> - Use dev_err_probe() in all probe() error handling.
> - Improved header includes.
> - Tidy up termination of ID tables.
> ti,ads1014
> - Correct upper bound on PGA (wrong value had no actual impact)
> ti,afe4403/4404
> - devm_ useage to simplify error handling in probe() and allow() remove to
>   be dropped.
> voltage-divider
> - Add dt-binding for io-channel-cells to allow such a device to be both
>   an IIO consumer and IIO producer at the same time.
> 
> ----------------------------------------------------------------
> Amit Dhingra (1):
>       MAINTAINERS: correct file entry for AD7091R
> 
> Andrew Davis (4):
>       iio: health: afe4403: Use devm action helper for regulator disable
>       iio: health: afe4403: Use devm IIO helpers
>       iio: health: afe4404: Use devm action helper for regulator disable
>       iio: health: afe4404: Use devm IIO helpers
> 
> Basavaraj Natikar (2):
>       iio: hid-sensor-als: Add light color temperature support
>       iio: hid-sensor-als: Add light chromaticity support
> 
> ChiYuan Huang (2):
>       dt-bindings: iio: adc: rtq6056: add support for the whole RTQ6056 family
>       iio: adc: rtq6056: Add support for the whole RTQ6056 family
> 
> Colin Ian King (1):
>       iio: invensense: remove redundant initialization of variable period
> 
> David Lechner (1):
>       iio: core: use INDIO_ALL_BUFFER_MODES in iio_buffer_enabled()
> 
> Dimitri Fedrau (3):
>       iio: humidity: hdc3020: switch to 16bit register defines
>       dt-bindings: iio: humidity: hdc3020: add interrupt bindings in example
>       iio: humidity: hdc3020: add threshold events support
> 
> Hans de Goede (1):
>       iio: accel: da280: Simplify id-matching
> 
> Javier Carrasco (3):
>       iio: light: as73211: use IIO_VAL_FRACTIONAL for intensity scales
>       dt-bindings: iio: light: as73211: add support for as7331
>       iio: light: as73211: add support for as7331
> 
> Jesus Gonzalez (1):
>       Add 10EC5280 to bmi160_i2c ACPI IDs to allow binding on some devices
> 
> Jonathan Cameron (34):
>       iio: accel: da280: Stop using ACPI_PTR()
>       iio: accel: kxcjk-1013: Move acpi_device_id table under ifdef CONFIG_ACPI
>       iio: accel: mma9551: Drop ACPI_PTR() usage
>       iio: accel: mma9553: Drop ACPI_PTR() usage
>       iio: accel: mxc4005: Drop ACPI_PTR() usage
>       iio: accel: mxc6255: Drop ACPI_PTR() usage
>       iio: accel: stk8ba50: Drop ACPI_PTR() usage
>       iio: accel: bmc150: Drop ACPI_PTR()
>       iio: gyro: bmg160: Drop ACPI_PTR() usage
>       iio: humidity: hts221: Drop ACPI_PTR() usage
>       iio: imu: fxos8700: Drop ACPI_PTR() usage
>       iio: imu: kmx61: Drop ACPI_PTR() usage
>       iio: light: jsa1212: Drop ACPI_PTR() usage
>       iio: light: ltr501: Drop ACPI_PTR() usage
>       iio: light: rpr0521: Drop ACPI_PTR() usage
>       iio: light: stk3310: Drop ACPI_PTR() usage
>       iio: light: us5182d: Drop ACPI_PTR() usage
>       iio: magnetometer: bmc150: Drop ACPI_PTR() usage
>       iio: magnetometer: mmc35240: Drop ACPI_PTR() usage
>       iio: potentiometer: max5487: Drop ACPI_PTR() usage
>       iio: st_sensors: drop ACPI_PTR() and CONFIG_ACPI guards
>       iio: pressure: hp206c: drop ACPI_PTR() and CONFIG_ACPI guards
>       iio: light: max44000: drop ACPI_PTR() and CONFIG_ACPI guards
>       iio: adc: ti-adc109s102: drop ACPI_PTR() and CONFIG_ACPI guards
>       iio: locking: introduce __cleanup() based direct mode claiming infrastructure
>       iio: dummy: Use automatic lock and direct mode cleanup.
>       iio: accel: adxl367: Use automated cleanup for locks and iio direct mode.
>       iio: imu: bmi323: Use cleanup handling for iio_device_claim_direct_mode()
>       iio: adc: max1363: Use automatic cleanup for locks and iio mode claiming.
>       iio: proximity: sx9360: Use automated cleanup for locks and IIO mode claiming.
>       iio: proximity: sx9324: Use automated cleanup for locks and IIO mode claiming.
>       iio: proximity: sx9310: Use automated cleanup for locks and IIO mode claiming.
>       iio: adc: ad4130: Use automatic cleanup of locks and direct mode.
>       iio: adc: ad7091r-base: Use auto cleanup of locks.
> 
> Jonathan LoBue (2):
>       iio: accel: bmc150: Document duplicate ACPI entries with bmi323 driver
>       iio: imu: bmi323: Add ACPI Match Table
> 
> Jun Yan (1):
>       iio: accel: bmi088: add i2c support for bmi088 accel driver
> 
> Justin Stitt (1):
>       iio: sx9324: avoid copying property strings
> 
> Kim Seer Paller (2):
>       dt-bindings: iio: frequency: add admfm2000
>       iio: frequency: admfm2000: New driver
> 
> Lorenzo Bianconi (3):
>       iio: imu: st_lsm6dsx: improve kernel docs and comments
>       iio: imu: st_lsm6dsx: add support to ASM330LHHXG1
>       dt-bindings: iio: imu: st_lsm6dsx: add asm330lhhxg1
> 
> Matti Vaittinen (3):
>       iio: test: test gain-time-scale helpers
>       MAINTAINERS: add IIO GTS tests
>       iio: gts-helper: Fix division loop
> 
> Mike Looijmans (2):
>       dt-bindings: iio: adc: ti-ads1298: Add bindings
>       iio: adc: ti-ads1298: Add driver
> 
> Mohammed Billoo (1):
>       iio: adc: ti-ads1015: Use correct pga upper bound
> 
> Mårten Lindahl (1):
>       iio: light: vcnl4000: Set ps high definition for 4040/4200
> 
> Naresh Solanki (1):
>       dt-bindings: iio: afe: voltage-divider: Add io-channel-cells
> 
> Nikita Mikhailevich (1):
>       iio: accel: mxc4005: new ACPI ID for the MXC6655 accelerometer
> 
> Nuno Sa (10):
>       iio: buffer-dmaengine: make use of the 'struct device *' argument
>       iio: imu: adis16475: make use of irq_get_trigger_type()
>       iio: imu: adis16480: make use of irq_get_trigger_type()
>       iio: adc: ad_sigma_delta: allow overwriting the IRQ flags
>       dt-bindings: adc: ad9467: add new io-backend property
>       dt-bindings: adc: axi-adc: update bindings for backend framework
>       iio: buffer-dmaengine: export buffer alloc and free functions
>       iio: add the IIO backend framework
>       iio: adc: ad9467: convert to backend framework
>       iio: adc: adi-axi-adc: move to backend framework
> 
> Olivier Moysan (1):
>       of: property: add device link support for io-backends
> 
> Petre Rodan (17):
>       dt-bindings: iio: pressure: honeywell,mprls0025pa.yaml improvements
>       dt-bindings: iio: pressure: honeywell,mprls0025pa.yaml add pressure-triplet
>       dt-bindings: iio: pressure: honeywell,mprls0025pa.yaml add spi bus
>       iio: pressure: mprls0025pa fix off-by-one enum
>       iio: pressure: mprls0025pa improve driver error resilience
>       iio: pressure: mprls0025pa remove defaults
>       iio: pressure: mprls0025pa whitespace cleanup
>       iio: pressure: mprls0025pa refactor to split core and i2c parts.
>       iio: pressure: mprls0025pa add triplet property
>       iio: pressure: mprls0025pa add SPI driver
>       tools: iio: replace seekdir() in iio_generic_buffer
>       dt-bindings: iio: pressure: honeywell,hsc030pa.yaml add spi props
>       iio: pressure: hsc030pa: use signed type to hold div_64() result
>       iio: pressure: hsc030pa: include cleanup
>       iio: pressure: hsc030pa: update datasheet URLs
>       iio: pressure: hsc030pa add mandatory delay
>       iio: pressure: hsc030pa add triggered buffer
> 
> Randy Dunlap (1):
>       iio: dummy_evgen: remove Excess kernel-doc comments
> 
> Ricardo B. Marliere (1):
>       iio: core: make iio_bus_type const
> 
> Srinivas Pandruvada (2):
>       iio: hid-sensor-als: Assign channels dynamically
>       iio: hid-sensor-als: Remove hardcoding of values for enums
> 
> andy.shevchenko@xxxxxxxxx (3):
>       iio: st_sensors: lsm9ds0: Use dev_err_probe() everywhere
>       iio: st_sensors: lsm9ds0: Don't use "proxy" headers
>       iio: st_sensors: lsm9ds0: Use common style for terminator in ID tables
> 
>  .../devicetree/bindings/iio/adc/adi,ad9467.yaml    |   4 +
>  .../devicetree/bindings/iio/adc/adi,axi-adc.yaml   |   8 +-
>  .../bindings/iio/adc/richtek,rtq6056.yaml          |   9 +-
>  .../devicetree/bindings/iio/adc/ti,ads1298.yaml    |  80 +++
>  .../bindings/iio/afe/voltage-divider.yaml          |  11 +
>  .../bindings/iio/frequency/adi,admfm2000.yaml      | 127 ++++
>  .../bindings/iio/humidity/ti,hdc3020.yaml          |   3 +
>  .../devicetree/bindings/iio/imu/st,lsm6dsx.yaml    |   4 +-
>  .../devicetree/bindings/iio/light/ams,as73211.yaml |   7 +-
>  .../bindings/iio/pressure/honeywell,hsc030pa.yaml  |   3 +
>  .../iio/pressure/honeywell,mprls0025pa.yaml        |  98 ++-
>  MAINTAINERS                                        |  22 +-
>  drivers/iio/Kconfig                                |   9 +
>  drivers/iio/Makefile                               |   1 +
>  drivers/iio/accel/Kconfig                          |   8 +-
>  drivers/iio/accel/Makefile                         |   1 +
>  drivers/iio/accel/adxl367.c                        | 297 ++++----
>  drivers/iio/accel/bmc150-accel-i2c.c               |  15 +-
>  drivers/iio/accel/bmc150-accel-spi.c               |   3 +-
>  drivers/iio/accel/bmi088-accel-i2c.c               |  70 ++
>  drivers/iio/accel/da280.c                          |  66 +-
>  drivers/iio/accel/kxcjk-1013.c                     |  33 +-
>  drivers/iio/accel/mma9551.c                        |   4 +-
>  drivers/iio/accel/mma9553.c                        |   4 +-
>  drivers/iio/accel/mxc4005.c                        |   5 +-
>  drivers/iio/accel/mxc6255.c                        |   4 +-
>  drivers/iio/accel/st_accel_i2c.c                   |   5 +-
>  drivers/iio/accel/stk8ba50.c                       |   4 +-
>  drivers/iio/adc/Kconfig                            |  15 +-
>  drivers/iio/adc/Makefile                           |   1 +
>  drivers/iio/adc/ad4130.c                           | 131 ++--
>  drivers/iio/adc/ad7091r-base.c                     |  25 +-
>  drivers/iio/adc/ad9467.c                           | 267 ++++---
>  drivers/iio/adc/ad_sigma_delta.c                   |   7 +-
>  drivers/iio/adc/adi-axi-adc.c                      | 385 +++--------
>  drivers/iio/adc/max1363.c                          | 171 +++--
>  drivers/iio/adc/rtq6056.c                          | 275 +++++++-
>  drivers/iio/adc/ti-adc108s102.c                    |   4 +-
>  drivers/iio/adc/ti-ads1015.c                       |   2 +-
>  drivers/iio/adc/ti-ads1298.c                       | 769 +++++++++++++++++++++
>  drivers/iio/buffer/industrialio-buffer-dmaengine.c |  11 +-
>  .../iio/common/inv_sensors/inv_sensors_timestamp.c |   2 +-
>  drivers/iio/dummy/iio_dummy_evgen.c                |   2 -
>  drivers/iio/dummy/iio_simple_dummy.c               | 185 +++--
>  drivers/iio/frequency/Kconfig                      |  10 +
>  drivers/iio/frequency/Makefile                     |   1 +
>  drivers/iio/frequency/admfm2000.c                  | 282 ++++++++
>  drivers/iio/gyro/bmg160_i2c.c                      |   4 +-
>  drivers/iio/health/afe4403.c                       |  65 +-
>  drivers/iio/health/afe4404.c                       |  65 +-
>  drivers/iio/humidity/hdc3020.c                     | 445 ++++++++----
>  drivers/iio/humidity/hts221_i2c.c                  |   4 +-
>  drivers/iio/imu/adis16475.c                        |   8 +-
>  drivers/iio/imu/adis16480.c                        |   9 +-
>  drivers/iio/imu/bmi160/bmi160_i2c.c                |   9 +
>  drivers/iio/imu/bmi323/bmi323_core.c               |  78 +--
>  drivers/iio/imu/bmi323/bmi323_i2c.c                |  21 +
>  drivers/iio/imu/fxos8700_i2c.c                     |   3 +-
>  drivers/iio/imu/fxos8700_spi.c                     |   3 +-
>  drivers/iio/imu/kmx61.c                            |   2 +-
>  drivers/iio/imu/st_lsm6dsx/Kconfig                 |  31 +-
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h            |   2 +
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c     |  28 +-
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c       |  33 +-
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_i2c.c        |   5 +
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_spi.c        |   5 +
>  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0.h            |   5 +-
>  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_core.c       |  21 +-
>  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_i2c.c        |   6 +-
>  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_spi.c        |   4 +-
>  drivers/iio/industrialio-backend.c                 | 418 +++++++++++
>  drivers/iio/industrialio-core.c                    |   6 +-
>  drivers/iio/industrialio-gts-helper.c              |  15 +-
>  drivers/iio/light/Kconfig                          |   5 +-
>  drivers/iio/light/as73211.c                        | 142 +++-
>  drivers/iio/light/hid-sensor-als.c                 | 122 +++-
>  drivers/iio/light/jsa1212.c                        |   4 +-
>  drivers/iio/light/ltr501.c                         |   3 +-
>  drivers/iio/light/max44000.c                       |   6 +-
>  drivers/iio/light/rpr0521.c                        |   4 +-
>  drivers/iio/light/stk3310.c                        |   4 +-
>  drivers/iio/light/us5182d.c                        |   4 +-
>  drivers/iio/light/vcnl4000.c                       |  36 +-
>  drivers/iio/magnetometer/bmc150_magn_i2c.c         |   3 +-
>  drivers/iio/magnetometer/bmc150_magn_spi.c         |   3 +-
>  drivers/iio/magnetometer/mmc35240.c                |   4 +-
>  drivers/iio/potentiometer/max5487.c                |   4 +-
>  drivers/iio/pressure/Kconfig                       |  16 +-
>  drivers/iio/pressure/Makefile                      |   2 +
>  drivers/iio/pressure/hp206c.c                      |   6 +-
>  drivers/iio/pressure/hsc030pa.c                    |  49 +-
>  drivers/iio/pressure/hsc030pa.h                    |   7 +
>  drivers/iio/pressure/hsc030pa_i2c.c                |   9 +-
>  drivers/iio/pressure/hsc030pa_spi.c                |   7 +-
>  drivers/iio/pressure/mprls0025pa.c                 | 313 ++++-----
>  drivers/iio/pressure/mprls0025pa.h                 | 102 +++
>  drivers/iio/pressure/mprls0025pa_i2c.c             | 100 +++
>  drivers/iio/pressure/mprls0025pa_spi.c             |  92 +++
>  drivers/iio/pressure/st_pressure_i2c.c             |   5 +-
>  drivers/iio/proximity/sx9310.c                     | 114 ++-
>  drivers/iio/proximity/sx9324.c                     | 178 +++--
>  drivers/iio/proximity/sx9360.c                     | 115 ++-
>  drivers/iio/test/Kconfig                           |  14 +
>  drivers/iio/test/Makefile                          |   1 +
>  drivers/iio/test/iio-test-gts.c                    | 513 ++++++++++++++
>  drivers/of/property.c                              |   2 +
>  include/linux/hid-sensor-ids.h                     |   4 +
>  include/linux/iio/adc/adi-axi-adc.h                |  68 --
>  include/linux/iio/backend.h                        |  72 ++
>  include/linux/iio/buffer-dmaengine.h               |   3 +
>  include/linux/iio/iio.h                            |  30 +-
>  tools/iio/iio_utils.c                              |   2 +-
>  112 files changed, 5038 insertions(+), 1875 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads1298.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/frequency/adi,admfm2000.yaml
>  create mode 100644 drivers/iio/accel/bmi088-accel-i2c.c
>  create mode 100644 drivers/iio/adc/ti-ads1298.c
>  create mode 100644 drivers/iio/frequency/admfm2000.c
>  create mode 100644 drivers/iio/industrialio-backend.c
>  create mode 100644 drivers/iio/pressure/mprls0025pa.h
>  create mode 100644 drivers/iio/pressure/mprls0025pa_i2c.c
>  create mode 100644 drivers/iio/pressure/mprls0025pa_spi.c
>  create mode 100644 drivers/iio/test/iio-test-gts.c
>  delete mode 100644 include/linux/iio/adc/adi-axi-adc.h
>  create mode 100644 include/linux/iio/backend.h
> 






[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux