mbox series

[PULL] IIO new device support, features, fixes and cleanups for 5.18

Message ID 20220302135101.353b9470@jic23-huawei (mailing list archive)
State Handled Elsewhere
Headers show
Series [PULL] IIO new device support, features, fixes and cleanups for 5.18 | expand

Pull-request

https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git tags/iio-for-5.18a

Message

Jonathan Cameron March 2, 2022, 1:51 p.m. UTC
The following changes since commit e783362eb54cd99b2cac8b3a9aeac942e6f6ac07:

  Linux 5.17-rc1 (2022-01-23 10:12:53 +0200)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git tags/iio-for-5.18a

for you to fetch changes up to 0bf126163c3e7e6d722622073046aed567a5551e:

  iio: adc: xilinx-ams: Fix single channel switching sequence (2022-03-02 13:39:08 +0000)

----------------------------------------------------------------
First set of new device support, fixes, cleanups and features for IIO in 5.18

This cycle we had quite a few series that applied similar changes
to lots of drivers. To keep this description manageable I have
called those out in their own section rather than per driver.

Particularly pleased to see the long running AFE precision series
going in this cycle.

Series includes some late breaking fixes.

New device support
* adi,ada4250 amplifier
  - New driver and dt bindings for this programmable gain amplifier.
* adi,admv1014 microwave down-converter
  - New driver, dt bindings and some device specific ABI that
    may be generalized as more drivers for devices similar to this
    are added.
* adi,admv4420 K Band down-converter.
  - New driver and dt bindings.
* adi,adxl367 accelerometer driver.
  - New driver, dt-bindings + some new IIO ABI definitions to support
    reference magnitude events where an estimate of the acceleration
    due to gravity has been removed.
  - A few fixes as follow up patches.
* adi,ltc2688 DAC with toggle and dither modes.
  - New driver and bindings. Includes some new driver specific (for now)
    ABI for handling toggle mode and the addition of a dither waveform to
    the DAC output.
* AFE (analog front end) add support for additional types of analog device
  in front of an ADC.
  - RTD temperature sensors with dt bindings.
  - Temperature transducers wit dt bindings.
  - Related cleanup and features listed in other sections below.
* maxim,ds3502 potentiometer.
  - Add support to ds1803 driver which required significant rework.
* mediatek,mt2701-auxadc driver
  - Add mediatek,mt8186-auxadc - id table and chip specific info only.
* semtech,sx9324, semtech,ax9360
  - Substantial refactoring of sx9310 to extract core logic for reuse
    into a separate module
  - New driver using this supporting sx9324 proximity sensors.
  - New driver using this supporting sx9360 proximity sensors.
* silan,sc7a20
  - Compatible with the st,lis2dh (or nearly anyway) so add ID and
    chip specific info to enable support. Also silan vendor ID added
    for dt-bindings.

Staging graduation
* adi,ad7280a monitoring ADC for stacked lithium-ion batteries in
  electric cars and similar.
  - Substantial rework of driver required to bring inline with current
    IIO best practice. An unusual device in IIO so some interesting features
    we may see more of in future.

Multiple driver/core cleanup
- Use sysfs_emit() in simple locations where there is no path to change
  to various core created attributes.
- Trivial white space fixes around inconsistency between space after { and
  before } in id tables.
- Introduce new handling for fractional types to avoid repeated similar
  implementations. Use this in 3 drivers. Note this is also targeted
  at future use in the AFE driver and was motivated by discussions
  around the precision related work on that driver.
- of related header cleanups - drop of*.h and add mod_devicetable.h as
  appropriate.
- Move a number of symbol exports into IIO_* namespaces.  Two categories,
  1) Library used by multiple drivers e.g. st_sensors
  2) Core driver module exporting functions used by bus specific modules.
  A few related cleanups in this set.
- Switch from CONFIG_PM_* guards to new DEFINE_SIMPLE_DEV_PM_OPS() and
  similar to simplify drivers and take advantage of these new macros
  allowing the compiler to do the job or removing unused code without
  the need for __maybe_unused markings. Conversion of other drivers to
  these new macros ongoing.

Features
* adi,adf4350
  - Switch from of specific to generic device properties enabling use with
    other firmware types.
* adi,adx345
  - Switch from of specific to generic device properties.
  - Add ACPI ID ADS0345
  - Related driver cleanup.
* adi,hmc425a
  - Switch from of specific to generic device properties.
* afe analog rescaler driver
  - Wider range of types supported for scale.
  - Support offset.
  - Kunit tests.
* atlas,ezo-sensor
  - Convert from of to device properties.
* fsl,mma8452
  - Support mount matrix.
* infineon,dps310:
  - Add ACPI ID IFX3100.
* invensense,mpu6050
  - Convert to generic device properties.
* maxim,ds1803
  - Add out_raw_available before supporting more devices.
  - Convert from of specific to device properties.
* samsung,ssp_sensors
  - Convert from of specific to device properties.
* st,stm32-timer trigger
  - Convert from of specific to device properties.
* ti,hdc101x
  - Add ACPI ID TXNW1010.
* ti,tsc2046:
  - Add read_raw support to enable use of iio_hwmon and similar.

Fixes / cleanup.
* mailmap
  - Update for Cai Huoqing
* MAINTAINERS
  - Fix Analog Devices related links.
  - Add entry for ADRF6780
  - Add entry for ADMV1013
  - Add entry for AD7293
  - Add entry for ADMV8818
  - Update files listed for adis-lib
* iio core:
  - Fix wrong comment about current_mode being something a driver should
    ever access.
  - Use struct_size() rather than open coding in industrialio-hw-consumer
* adi,axl355
  - Use units.h definitions instead of local versions.
* adi,adis-lib
  - Simplify *updated_bits() macro
  - Whitespace cleanup.
* afe - Note many of these fixes only apply to particular configurations
  so the problems have probably not been seen in the wild, but will be
  visible with new usecases enabled this cycle.
  - Fix application of consumer scale for IIO_VAL_INT.
  - Apply a scale of 1 when no scale is provided.
  - Make best effort to establish a valid offset value for fractional
    cases.
  - Use s64 for scale calculations where parameters may be signed.
  - Tidy up include order.
  - Improve accuracy for small fractional sales
  - Reduce risk of integer overflow.
* ams,as3935
  - Use devm_delayed_work_autocancel() to replace open coded equivalent.
* aspeed,adc
  - Fix wrong use of divider flag.
* atmel,sama5d2-adc
  - Relax atmel,trigger-edge-type to optional.
  - Drop Ludovic Desroches from listed maintainers of the dt-binding
    inline with previous MAINTAINERS entry update.
* fsl,mma8452
  - Fix probing when i2c_device_id used.
  - dev_get_drvdata() on the iio_dev->dev, no longer returns iio_dev.
    Use dev_to_iio_dev() instead. Note the original path in here
    worked more by luck than design.
* invensense,mpu6050
  - Drop ACPI_PTR() protection to avoid an unused warning.
  - Use fact ACPI_COMPANION() returns null when ACPI_HANDLE() does to
    simplify handling.
* motorola,cpcap-adc
  - Drop unused assignment.
* qcom,spmi-adc
  - Fix wrong example of 'reg' in binding document.
* renesas,rzg2l-adc
  - Trivial typo fix.
* semtech,sx9360
  - Fix wrong register handling for event generation.
* st_sensors
  - Allow manual disabling of I2C or SPI module if not needed for a particular
    board. Default is still to enable the bus specific module if
    appropriate bus is supported.
* st,lsm6dsx
  - dev_get_drvdata() on the iio_dev->dev, no longer returns iio_dev.
    Use dev_to_iio_dev() instead.
* ti,palmas-gpadc
  - Split the interrupt fields in the dt-binding example
* ti,tsc2046
  - Rework state machine to improve readability after recent debugging of
    an issue fixed elsewhere.
  - Add a sanity check to avoid very large memory allocations if a crazy
    delay is specified.
* ti,twl6030
  - Add error handling if devm_request_threaded_irq() fails.
* xilinx,ams
  - Use devm_delayed_work_autocancel() instead of open coding equivalent.
  - Fix missing required clock entry in dt-binding.
  - Fix miss counting of channels resulting in ps channels not
    being enabled.
  - Fix incorrect values written to sequencer registers.
  - Fix sequence for single channel reading.

----------------------------------------------------------------
Andy Shevchenko (25):
      math.h: Introduce data types for fractional numbers
      iio: adc: rn5t618: Re-use generic struct u16_fract
      iio: adc: twl4030-madc: Re-use generic struct s16_fract
      iio: adc: qcom-vadc-common: Re-use generic struct u32_fract
      iio: dac: ad5592r: Drop leftover header inclusion
      iio: chemical: bme680: Switch from of headers to mod_devicetable.h
      iio: amplifiers: hmc425a: Make use of device properties
      iio: frequency: adf4350: Make use of device properties
      iio: humidity: dht11: Switch from of headers to mod_devicetable.h
      iio: temperature: mlx90632: Switch from of headers to mod_devicetable.h
      iio: temperature: maxim_thermocouple: Switch from of headers to mod_devicetable.h
      iio: accel: adxl355: Replace custom definitions with generic from units.h
      iio: imu: inv_mpu6050: Drop wrong use of ACPI_PTR()
      iio: imu: inv_mpu6050: Check ACPI companion directly
      iio: imu: inv_mpu6050: Make use of device properties
      iio: ssp_sensors: Make use of device properties
      iio: chemical: atlas-ezo-sensor: Make use of device properties
      iio: trigger: stm32-timer: Make use of device properties
      iio: accel: adxl345: Convert to use dev_err_probe()
      iio: accel: adxl345: Set driver_data for OF enumeration
      iio: accel: adxl345: Get rid of name parameter in adxl345_core_probe()
      iio: accel: adxl345: Make use of device properties
      iio: accel: adxl345: Extract adxl345_powerup() helper
      iio: accel: adxl345: Drop comma in terminator entries
      iio: accel: adxl345: Remove unneeded blank lines

Antoniu Miclaus (12):
      MAINTAINERS: fix Analog Devices links
      MAINTAINERS: add maintainer for ADRF6780 driver
      MAINTAINERS: add maintainer for AD7293 driver
      MAINTAINERS: add maintainer for ADMV1013 driver
      MAINTAINERS: add maintainer for ADMV8818 driver
      iio: frequency: admv1014: add support for ADMV1014
      dt-bindings: iio: frequency: add admv1014 binding
      Documentation: ABI: testing: admv1014: add ABI docs
      MAINTAINERS: add maintainer for ADMV1014 driver
      dt-bindings: iio: amplifiers: add ada4250 doc
      iio: amplifiers: ada4250: add support for ADA4250
      MAINTAINERS: add maintainer for ADA4250 driver

Billy Tsai (1):
      iio: adc: aspeed: Add divider flag to fix incorrect voltage reading.

Cai Huoqing (1):
      mailmap: Update email address for Cai Huoqing

Christophe JAILLET (2):
      iio: as3935: Use devm_delayed_work_autocancel()
      iio: adc: xilinx-ams: Use devm_delayed_work_autocancel() to simplify code

Colin Ian King (1):
      iio: adc: cpcap-adc: remove redundant assignment to variable cal_data_diff

Cosmin Tanislav (5):
      iio: introduce mag_referenced
      iio: ABI: document mag_referenced
      iio: ABI: add note about configuring other attributes during buffer capture
      dt-bindings: iio: accel: add ADXL367
      iio: accel: add ADXL367 driver

Cristian Pop (2):
      dt-bindings: iio: frequency: Add ADMV4420 doc
      iio: frequency: admv4420.c: Add support for ADMV4420

Dan Carpenter (1):
      iio: accel: adxl367: unlock on error in adxl367_buffer_predisable()

Eugen Hristev (1):
      dt-bindings: iio: adc: atmel,sama5d2-adc: make atmel,trigger-edge-type non-mandatory

Guodong Liu (2):
      dt-bindings: iio: adc: Add compatible for Mediatek MT8186
      iio: adc: mt8186: Add compatible node for mt8186

Gustavo A. R. Silva (1):
      iio: hw_consumer: Use struct_size() helper in kzalloc()

Gwendal Grignou (8):
      iio:proximity:sx9310: Add frequency in read_avail
      iio:proximity:sx9310: Extract common Semtech sensor logic
      iio:proximity:sx9324: Add SX9324 support
      dt-bindings:iio:proximity: Add sx9324 binding
      iio:proximity:sx9324: Add dt_binding support
      iio:proximity:sx9360: Add sx9360 support
      dt-bindings:iio:proximity: Add sx9360 binding
      iio:proximity:sx9360: Add dt-binding support

Haibo Chen (2):
      iio: imu: st_lsm6dsx: use dev_to_iio_dev() to get iio_dev struct
      iio: accel: mma8452: use the correct logic to get mma8452_data

Hans de Goede (2):
      iio: mma8452: Fix probe failing when an i2c_device_id is used
      iio: mma8452: Add support for the "mount-matrix" device property

Jagath Jog J (7):
      iio: potentiometer: ds1803: Alignment to match the open parenthesis
      iio: potentiometer: ds1803: Add available functionality
      iio: potentiometer: ds1803: Add channel information in device data
      iio: potentiometer: ds1803: Change to firmware provided data
      iio: potentiometer: ds1803: Add device specific read_raw function
      iio: potentiometer: ds1803: Add support for Maxim DS3502
      dt-bindings: iio: potentiometer: Add Maxim DS3502 in trivial-devices

Jan Luebbe (1):
      dt-bindings: iio: adc: microchip,mcp3201: fix interface type (I2C -> SPI)

Jiasheng Jiang (1):
      iio: adc: Add check for devm_request_threaded_irq

Jonathan Cameron (115):
      iio:chemical:atlas: Trivial white space cleanup to add space before }
      iio:light:pa12203001: Tidy up white space change to add spaces after { and before }
      iio:light:vcnl4035: Trivial whitespace cleanup to add space before }
      iio:light:us5182: White space cleanup of spacing around {} in id tables
      iio:light:ltr501: White space cleanup of spacing around {} in id tables
      iio:proximity:ping: White space cleanup of spacing around {} in id tables
      iio:proximity:rfd77402: White space cleanup of spacing around {} in id tables
      iio:proximity:srf04: White space cleanup of spacing around {} in id tables
      iio:proximity:srf08: White space cleanup of spacing around {} in id tables
      iio:frequency:admv1013: White space cleanup of spacing around {} in id tables
      iio:adc:mt6577_auxadc: Tidy up white space around {} in id tables
      iio:adc:hi8435: Tidy up white space around {} in id tables
      iio:adc:ti-adc084s021: Tidy up white space around {}
      iio:light:tsl2722: Fix inconsistent spacing before } in id table
      iio:proximity:vl53l0x: Tidy up white space around {} in id tables
      iio:accel:dmard09: Tidy up white space around {} in id table
      iio:accel:mma9551_core: Move exports into IIO_MMA9551 namespace
      iio:accel:mma7455_core: Move exports into IIO_MMA7455 namespace
      iio:accel:kxsd9: Move exports into IIO_KDSD9 namespace
      iio:accel:bma400: Move exports into IIO_BMA400 namespace
      iio:accel:adxl313: Move exports into IIO_ADXL313 namespace
      iio:accel:adxl345: Move exports into IIO_ADXL345 namespace
      iio:accel:adxl355: Move exports into IIO_ADXL355 namespace
      iio:accel:adxl372: Move exports into IIO_ADXL372 namespace
      iio:accel:bmc150: Move exports into IIO_BMC150 namespace
      iio:accel:bmi088: Move exports into IIO_BMI088 namespace
      iio:accel:fxl8962af: Move exports into IIO_FXL8962AF namespace
      iio:st-sensors: Remove duplicate MODULE_*
      iio:st-sensors: Move exports into IIO_ST_SENSORS namespace
      iio:adc:ad_sigma_delta: Move exports into IIO_AD_SIGMA_DELTA namespace
      iio:adc:ad7091r: Move exports into IIO_AD7091R namespace.
      iio:adc:ad76060: Move exports into IIO_AD7606 namespace.
      iio:common:meas-spec: Move exports into IIO_MEAS_SPEC_SENSORS
      iio:common:ssp_sensors: Move exports into IIO_SSP_SENSORS namespace
      iio:dac:ad5592r: Move exports into IIO_AD5592R namespace
      iio:dac:ad5686: Move exports into IIO_AD5686 namespace
      iio:imu:adis: Move exports into IIO_ADISLIB namespace
      iio:pressure:zpa2326: Move exports into IIO_ZPA2326 namespace
      iio:pressure:ms5611: Move exports into IIO_MS5611 namespace
      iio:pressure:mpl115: Move exports into IIO_MPL115 namespace
      iio:magnetometer:rm3100: Move exports to IIO_RM3100 namespace
      iio:magnetometer:bmc150: Move exports to IIO_BMC150_MAGN namespace
      iio:magnetometer:hmc5843: Move exports to IIO_HMC5843 namespace
      iio:light:st_uvis25: Move exports to IIO_UVIS25 namespace
      iio:chemical:bme680: Move exports to IIO_BME680 namespace
      iio:accel:da311: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:accel:da280: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:accel:dmard06: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:accel:dmard10: Switch from CONFIG_PM guards to pm_sleep_ptr() etc
      iio:accel:mc3230: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:accel:mma7660: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
      iio:accel:mma9551: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:accel:mma9553: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:accel:stk8ba50: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:adc:at91-adc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:adc:exynos_adc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
      iio:adc:palmas_gpadc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
      iio:adc:rockchip: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:adc:twl6030: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:adc:vf610: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:common:ssp: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:dac:vf610: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:apds9300: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:cm3232: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:isl29018: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
      iio:light:isl29125: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:jsa1212: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:ltr501: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:stk3310: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:tcs3414: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:tcs3472: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:tsl2563: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:light:tsl4531: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:magn:ak8975: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:magn:mag3110: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:magn:mmc35240: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:pressure:mpl3115: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:proximity:as3935: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:proximity:rfd77492: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:proximity:sx9500: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:temperature:tmp006: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:temperature:tmp007: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:accel:stk8312: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:accel:bma180: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:dac:m62332: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
      iio:imu:kmx61: Switch from CONFIG_PM* guards to pm_ptr() etc
      iio:temperature:mlx90614: Switch from CONFIG_PM* guards to pm_ptr() etc
      iio:adc:ab8500: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:adc:stm32:Switch from CONFIG_PM guards to pm_ptr()
      iio:adc:rcar: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:light:bh1780: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:proximity:pulsedlight: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:chemical:atlas: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:light:rpr0521: Switch from CONFIG_PM guards to pm_ptr() etc
      iio:adc:stm32*: Use pm[_sleep]_ptr() etc to avoid need to make pm __maybe_unused
      staging:iio:adc:ad7280a: Fix handing of device address bit reversing.
      staging:iio:adc:ad7280a: Register define cleanup.
      staging:iio:adc:ad7280a: rename _read() to _read_reg()
      staging:iio:adc:ad7280a: Split buff[2] into tx and rx parts
      staging:iio:adc:ad7280a: Use bitfield ops to managed fields in transfers.
      staging:iio:adc:ad7280a: Switch to standard event control
      staging:iio:adc:ad7280a: Standardize extended ABI naming
      staging:iio:adc:ad7280a: Drop unused timestamp channel.
      staging:iio:adc:ad7280a: Trivial comment formatting cleanup
      staging:iio:adc:ad7280a: Make oversampling_ratio a runtime control
      staging:iio:adc:ad7280a: Cleanup includes
      staging:iio:ad7280a: Reflect optionality of irq in ABI
      staging:iio:adc:ad7280a: Use a local dev pointer to avoid &spi->dev
      staging:iio:adc:ad7280a: Use device properties to replace platform data.
      staging:iio:adc:ad7280a: Drop buggy support for early termination of AUX alert.
      dt-bindings:iio:adc:ad7280a: Add binding
      iio:adc:ad7280a: Document ABI for cell balance switches
      staging:iio:adc:ad7280a: Remove shift from cb_mask state cache.
      staging:iio:adc:ad7280a: Use more conservative delays to allow 105C operation.
      iio:adc:ad7280a: Move out of staging

Jongpil Jung (1):
      iio: sx9360: fix iio event generation

Kai-Heng Feng (3):
      iio: pressure: dps310: Add ACPI HID table
      iio: humidity: hdc100x: Add ACPI HID table
      iio: accel: adxl345: Add ACPI HID table

Lad Prabhakar (1):
      iio: adc: rzg2l_adc: Fix typo

Lars-Peter Clausen (13):
      iio: core: Use sysfs_emit()
      iio: dmaengine-buffer: Use sysfs_emit()
      iio: ad7192: Use sysfs_emit()
      iio: ad9523: Use sysfs_emit()
      iio: as3935: Use sysfs_emit()
      iio: ina2xx-adc: sysfs_emit()
      iio: lm3533: Use sysfs_emit()
      iio: max31856: Use sysfs_emit()
      iio: max31865: Use sysfs_emit()
      iio: max9611: Use sysfs_emit()
      iio: ms_sensors: Use sysfs_emit()
      iio: scd4x: Use sysfs_emit()
      iio: sps30: Use sysfs_emit()

Liam Beguin (15):
      iio: inkern: apply consumer scale on IIO_VAL_INT cases
      iio: inkern: apply consumer scale when no channel scale is available
      iio: inkern: make a best effort on offset calculation
      iio: afe: rescale: use s64 for temporary scale calculations
      iio: afe: rescale: reorder includes
      iio: afe: rescale: expose scale processing function
      iio: afe: rescale: add INT_PLUS_{MICRO,NANO} support
      iio: afe: rescale: add offset support
      iio: afe: rescale: fix accuracy for small fractional scales
      iio: afe: rescale: reduce risk of integer overflow
      iio: test: add basic tests for the iio-rescale driver
      iio: afe: rescale: add RTD temperature sensor support
      iio: afe: rescale: add temperature transducers
      dt-bindings: iio: afe: add bindings for temperature-sense-rtd
      dt-bindings: iio: afe: add bindings for temperature transducers

Miquel Raynal (1):
      iio: core: Fix the kernel doc regarding the currentmode iio_dev entry

Nathan Chancellor (1):
      iio: accel: adxl367: Fix handled initialization in adxl367_irq_handler()

Nicolas Ferre (1):
      dt-bindings: iio: adc: at91-sama5d2: update maintainers entry

Nikita Yushchenko (1):
      iio: st_sensors: don't always auto-enable I2C and SPI interface drivers

Nuno Sá (6):
      MAINTAINERS: add missing files to the adis lib
      adis: simplify 'adis_update_bits' macros
      iio: adis: stylistic changes
      iio: dac: add support for ltc2688
      iio: ABI: add ABI file for the LTC2688 DAC
      dt-bindings: iio: Add ltc2688 documentation

Oleksij Rempel (3):
      iio: adc: tsc2046: rework the trigger state machine
      iio: adc: tsc2046: add .read_raw support
      iio: adc: tsc2046: add sanity check to avoid to big allocations

Rob Herring (2):
      dt-bindings: iio/adc: ti,palmas-gpadc: Split interrupt fields in example
      dt-bindings: iio/adc: qcom,spmi-iadc: Fix 'reg' property in example

Robert Hancock (4):
      dt-bindings: iio: adc: zynqmp_ams: Add clock entry
      iio: adc: xilinx-ams: Fixed missing PS channels
      iio: adc: xilinx-ams: Fixed wrong sequencer register settings
      iio: adc: xilinx-ams: Fix single channel switching sequence

Samuel Holland (3):
      dt-bindings: vendor-prefixes: Add silan vendor prefix
      dt-bindings: iio: st: Add Silan SC7A20 accelerometer
      iio: accel: st_accel: Add support for Silan SC7A20

 .mailmap                                           |    1 +
 Documentation/ABI/testing/sysfs-bus-iio            |   31 +
 .../ABI/testing/sysfs-bus-iio-adc-ad7280a          |   13 +
 .../ABI/testing/sysfs-bus-iio-dac-ltc2688          |   86 ++
 .../ABI/testing/sysfs-bus-iio-frequency-admv1014   |   23 +
 Documentation/ABI/testing/sysfs-bus-iio-sx9324     |   28 +
 .../devicetree/bindings/iio/accel/adi,adxl367.yaml |   79 +
 .../devicetree/bindings/iio/adc/adi,ad7280a.yaml   |   77 +
 .../bindings/iio/adc/atmel,sama5d2-adc.yaml        |    2 -
 .../bindings/iio/adc/mediatek,mt2701-auxadc.yaml   |    1 +
 .../bindings/iio/adc/microchip,mcp3201.yaml        |    2 +-
 .../bindings/iio/adc/qcom,spmi-iadc.yaml           |    2 +-
 .../bindings/iio/adc/ti,palmas-gpadc.yaml          |    6 +-
 .../bindings/iio/adc/xlnx,zynqmp-ams.yaml          |    8 +
 .../bindings/iio/afe/temperature-sense-rtd.yaml    |  101 ++
 .../bindings/iio/afe/temperature-transducer.yaml   |  114 ++
 .../bindings/iio/amplifiers/adi,ada4250.yaml       |   50 +
 .../devicetree/bindings/iio/dac/adi,ltc2688.yaml   |  146 ++
 .../bindings/iio/frequency/adi,admv1014.yaml       |  134 ++
 .../bindings/iio/frequency/adi,admv4420.yaml       |   55 +
 .../bindings/iio/proximity/semtech,sx9324.yaml     |  161 ++
 .../bindings/iio/proximity/semtech,sx9360.yaml     |   89 ++
 .../devicetree/bindings/iio/st,st-sensors.yaml     |    3 +
 .../devicetree/bindings/trivial-devices.yaml       |    2 +
 .../devicetree/bindings/vendor-prefixes.yaml       |    2 +
 MAINTAINERS                                        |  123 +-
 drivers/iio/accel/Kconfig                          |   62 +-
 drivers/iio/accel/Makefile                         |    3 +
 drivers/iio/accel/adis16201.c                      |    1 +
 drivers/iio/accel/adis16209.c                      |    1 +
 drivers/iio/accel/adxl313_core.c                   |    6 +-
 drivers/iio/accel/adxl313_i2c.c                    |    1 +
 drivers/iio/accel/adxl313_spi.c                    |    1 +
 drivers/iio/accel/adxl345.h                        |    7 +-
 drivers/iio/accel/adxl345_core.c                   |   56 +-
 drivers/iio/accel/adxl345_i2c.c                    |   35 +-
 drivers/iio/accel/adxl345_spi.c                    |   35 +-
 drivers/iio/accel/adxl355_core.c                   |   11 +-
 drivers/iio/accel/adxl355_i2c.c                    |    1 +
 drivers/iio/accel/adxl355_spi.c                    |    1 +
 drivers/iio/accel/adxl367.c                        | 1588 ++++++++++++++++++++
 drivers/iio/accel/adxl367.h                        |   23 +
 drivers/iio/accel/adxl367_i2c.c                    |   90 ++
 drivers/iio/accel/adxl367_spi.c                    |  164 ++
 drivers/iio/accel/adxl372.c                        |    4 +-
 drivers/iio/accel/adxl372_i2c.c                    |    1 +
 drivers/iio/accel/adxl372_spi.c                    |    1 +
 drivers/iio/accel/bma180.c                         |    9 +-
 drivers/iio/accel/bma400_core.c                    |    6 +-
 drivers/iio/accel/bma400_i2c.c                     |    1 +
 drivers/iio/accel/bma400_spi.c                     |    1 +
 drivers/iio/accel/bmc150-accel-core.c              |    8 +-
 drivers/iio/accel/bmc150-accel-i2c.c               |    1 +
 drivers/iio/accel/bmc150-accel-spi.c               |    1 +
 drivers/iio/accel/bmi088-accel-core.c              |    8 +-
 drivers/iio/accel/bmi088-accel-spi.c               |    1 +
 drivers/iio/accel/da280.c                          |    6 +-
 drivers/iio/accel/da311.c                          |    6 +-
 drivers/iio/accel/dmard06.c                        |   10 +-
 drivers/iio/accel/dmard09.c                        |    2 +-
 drivers/iio/accel/dmard10.c                        |    7 +-
 drivers/iio/accel/fxls8962af-core.c                |    6 +-
 drivers/iio/accel/fxls8962af-i2c.c                 |    1 +
 drivers/iio/accel/fxls8962af-spi.c                 |    1 +
 drivers/iio/accel/kxsd9-i2c.c                      |    1 +
 drivers/iio/accel/kxsd9-spi.c                      |    1 +
 drivers/iio/accel/kxsd9.c                          |    6 +-
 drivers/iio/accel/mc3230.c                         |    6 +-
 drivers/iio/accel/mma7455_core.c                   |    6 +-
 drivers/iio/accel/mma7455_i2c.c                    |    1 +
 drivers/iio/accel/mma7455_spi.c                    |    1 +
 drivers/iio/accel/mma7660.c                        |   11 +-
 drivers/iio/accel/mma8452.c                        |   54 +-
 drivers/iio/accel/mma9551.c                        |   12 +-
 drivers/iio/accel/mma9551_core.c                   |   36 +-
 drivers/iio/accel/mma9553.c                        |   12 +-
 drivers/iio/accel/ssp_accel_sensor.c               |    1 +
 drivers/iio/accel/st_accel.h                       |    2 +
 drivers/iio/accel/st_accel_buffer.c                |    5 -
 drivers/iio/accel/st_accel_core.c                  |   88 +-
 drivers/iio/accel/st_accel_i2c.c                   |    6 +
 drivers/iio/accel/st_accel_spi.c                   |    1 +
 drivers/iio/accel/stk8312.c                        |   11 +-
 drivers/iio/accel/stk8ba50.c                       |   11 +-
 drivers/iio/adc/Kconfig                            |   11 +
 drivers/iio/adc/Makefile                           |    1 +
 drivers/iio/adc/ab8500-gpadc.c                     |   14 +-
 drivers/iio/adc/ad7091r-base.c                     |    4 +-
 drivers/iio/adc/ad7091r5.c                         |    1 +
 drivers/iio/adc/ad7124.c                           |    1 +
 drivers/iio/adc/ad7192.c                           |    5 +-
 drivers/iio/adc/ad7280a.c                          | 1111 ++++++++++++++
 drivers/iio/adc/ad7606.c                           |    4 +-
 drivers/iio/adc/ad7606_par.c                       |    1 +
 drivers/iio/adc/ad7606_spi.c                       |    1 +
 drivers/iio/adc/ad7780.c                           |    1 +
 drivers/iio/adc/ad7791.c                           |    1 +
 drivers/iio/adc/ad7793.c                           |    1 +
 drivers/iio/adc/ad_sigma_delta.c                   |   20 +-
 drivers/iio/adc/aspeed_adc.c                       |    4 +-
 drivers/iio/adc/at91_adc.c                         |    7 +-
 drivers/iio/adc/cpcap-adc.c                        |    2 +-
 drivers/iio/adc/exynos_adc.c                       |    9 +-
 drivers/iio/adc/hi8435.c                           |    2 +-
 drivers/iio/adc/ina2xx-adc.c                       |    2 +-
 drivers/iio/adc/max9611.c                          |    2 +-
 drivers/iio/adc/mt6577_auxadc.c                    |   16 +-
 drivers/iio/adc/palmas_gpadc.c                     |   10 +-
 drivers/iio/adc/qcom-pm8xxx-xoadc.c                |   15 +-
 drivers/iio/adc/qcom-spmi-vadc.c                   |   24 +-
 drivers/iio/adc/qcom-vadc-common.c                 |   92 +-
 drivers/iio/adc/rcar-gyroadc.c                     |    6 +-
 drivers/iio/adc/rn5t618-adc.c                      |    7 +-
 drivers/iio/adc/rockchip_saradc.c                  |    9 +-
 drivers/iio/adc/rzg2l_adc.c                        |    4 +-
 drivers/iio/adc/stm32-adc-core.c                   |   17 +-
 drivers/iio/adc/stm32-adc.c                        |   12 +-
 drivers/iio/adc/stm32-dfsdm-adc.c                  |   11 +-
 drivers/iio/adc/stm32-dfsdm-core.c                 |   19 +-
 drivers/iio/adc/ti-adc084s021.c                    |    2 +-
 drivers/iio/adc/ti-tsc2046.c                       |  269 +++-
 drivers/iio/adc/twl4030-madc.c                     |    9 +-
 drivers/iio/adc/twl6030-gpadc.c                    |   10 +-
 drivers/iio/adc/vf610_adc.c                        |    7 +-
 drivers/iio/adc/xilinx-ams.c                       |   26 +-
 drivers/iio/afe/iio-rescale.c                      |  288 +++-
 drivers/iio/amplifiers/Kconfig                     |   11 +
 drivers/iio/amplifiers/Makefile                    |    1 +
 drivers/iio/amplifiers/ada4250.c                   |  403 +++++
 drivers/iio/amplifiers/hmc425a.c                   |    6 +-
 drivers/iio/buffer/industrialio-buffer-dmaengine.c |    2 +-
 drivers/iio/buffer/industrialio-hw-consumer.c      |    4 +-
 drivers/iio/chemical/atlas-ezo-sensor.c            |   32 +-
 drivers/iio/chemical/atlas-sensor.c                |   17 +-
 drivers/iio/chemical/bme680_core.c                 |    4 +-
 drivers/iio/chemical/bme680_i2c.c                  |    1 +
 drivers/iio/chemical/bme680_spi.c                  |    3 +-
 drivers/iio/chemical/scd4x.c                       |    2 +-
 drivers/iio/chemical/sps30.c                       |    2 +-
 drivers/iio/common/ms_sensors/ms_sensors_i2c.c     |   28 +-
 drivers/iio/common/ssp_sensors/ssp_dev.c           |   40 +-
 drivers/iio/common/ssp_sensors/ssp_iio.c           |    7 +-
 drivers/iio/common/st_sensors/Kconfig              |    2 -
 drivers/iio/common/st_sensors/st_sensors_buffer.c  |    7 +-
 drivers/iio/common/st_sensors/st_sensors_core.c    |   28 +-
 drivers/iio/common/st_sensors/st_sensors_i2c.c     |    2 +-
 drivers/iio/common/st_sensors/st_sensors_spi.c     |    2 +-
 drivers/iio/common/st_sensors/st_sensors_trigger.c |    9 +-
 drivers/iio/dac/Kconfig                            |   11 +
 drivers/iio/dac/Makefile                           |    1 +
 drivers/iio/dac/ad5592r-base.c                     |    5 +-
 drivers/iio/dac/ad5592r.c                          |    1 +
 drivers/iio/dac/ad5593r.c                          |    1 +
 drivers/iio/dac/ad5686-spi.c                       |    1 +
 drivers/iio/dac/ad5686.c                           |    4 +-
 drivers/iio/dac/ad5696-i2c.c                       |    1 +
 drivers/iio/dac/ltc2688.c                          | 1071 +++++++++++++
 drivers/iio/dac/m62332.c                           |   11 +-
 drivers/iio/dac/stm32-dac-core.c                   |   16 +-
 drivers/iio/dac/stm32-dac.c                        |    9 +-
 drivers/iio/dac/vf610_dac.c                        |    7 +-
 drivers/iio/frequency/Kconfig                      |   20 +
 drivers/iio/frequency/Makefile                     |    2 +
 drivers/iio/frequency/ad9523.c                     |    2 +-
 drivers/iio/frequency/adf4350.c                    |  103 +-
 drivers/iio/frequency/admv1013.c                   |    2 +-
 drivers/iio/frequency/admv1014.c                   |  823 ++++++++++
 drivers/iio/frequency/admv4420.c                   |  398 +++++
 drivers/iio/gyro/Kconfig                           |   37 +-
 drivers/iio/gyro/adis16136.c                       |    1 +
 drivers/iio/gyro/adis16260.c                       |    1 +
 drivers/iio/gyro/ssp_gyro_sensor.c                 |    1 +
 drivers/iio/gyro/st_gyro_buffer.c                  |    4 -
 drivers/iio/gyro/st_gyro_core.c                    |    5 +-
 drivers/iio/gyro/st_gyro_i2c.c                     |    1 +
 drivers/iio/gyro/st_gyro_spi.c                     |    1 +
 drivers/iio/humidity/dht11.c                       |    3 +-
 drivers/iio/humidity/hdc100x.c                     |    7 +
 drivers/iio/humidity/htu21.c                       |    1 +
 drivers/iio/imu/adis.c                             |   67 +-
 drivers/iio/imu/adis16400.c                        |    1 +
 drivers/iio/imu/adis16460.c                        |    1 +
 drivers/iio/imu/adis16475.c                        |    1 +
 drivers/iio/imu/adis16480.c                        |    1 +
 drivers/iio/imu/adis_buffer.c                      |   10 +-
 drivers/iio/imu/adis_trigger.c                     |    5 +-
 drivers/iio/imu/inv_mpu6050/inv_mpu_acpi.c         |    5 +-
 drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c          |   15 +-
 drivers/iio/imu/inv_mpu6050/inv_mpu_spi.c          |    5 +-
 drivers/iio/imu/kmx61.c                            |   10 +-
 drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c       |    4 +-
 drivers/iio/imu/st_lsm9ds0/Kconfig                 |   28 +-
 drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_core.c       |    3 +-
 drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_i2c.c        |    1 +
 drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_spi.c        |    1 +
 drivers/iio/industrialio-buffer.c                  |    4 +-
 drivers/iio/industrialio-core.c                    |    2 +-
 drivers/iio/industrialio-event.c                   |    1 +
 drivers/iio/inkern.c                               |   40 +-
 drivers/iio/light/apds9300.c                       |   10 +-
 drivers/iio/light/bh1780.c                         |   12 +-
 drivers/iio/light/cm3232.c                         |    9 +-
 drivers/iio/light/isl29018.c                       |   10 +-
 drivers/iio/light/isl29125.c                       |    7 +-
 drivers/iio/light/jsa1212.c                        |   11 +-
 drivers/iio/light/lm3533-als.c                     |    6 +-
 drivers/iio/light/ltr501.c                         |   20 +-
 drivers/iio/light/pa12203001.c                     |    4 +-
 drivers/iio/light/rpr0521.c                        |    7 +-
 drivers/iio/light/st_uvis25_core.c                 |    4 +-
 drivers/iio/light/st_uvis25_i2c.c                  |    1 +
 drivers/iio/light/st_uvis25_spi.c                  |    1 +
 drivers/iio/light/stk3310.c                        |   11 +-
 drivers/iio/light/tcs3414.c                        |    7 +-
 drivers/iio/light/tcs3472.c                        |    7 +-
 drivers/iio/light/tsl2563.c                        |   10 +-
 drivers/iio/light/tsl2772.c                        |    2 +-
 drivers/iio/light/tsl4531.c                        |   10 +-
 drivers/iio/light/us5182d.c                        |    6 +-
 drivers/iio/light/vcnl4035.c                       |    2 +-
 drivers/iio/magnetometer/Kconfig                   |   35 +-
 drivers/iio/magnetometer/ak8975.c                  |   12 +-
 drivers/iio/magnetometer/bmc150_magn.c             |    8 +-
 drivers/iio/magnetometer/bmc150_magn_i2c.c         |    1 +
 drivers/iio/magnetometer/bmc150_magn_spi.c         |    1 +
 drivers/iio/magnetometer/hmc5843_core.c            |    8 +-
 drivers/iio/magnetometer/hmc5843_i2c.c             |    1 +
 drivers/iio/magnetometer/hmc5843_spi.c             |    1 +
 drivers/iio/magnetometer/mag3110.c                 |   10 +-
 drivers/iio/magnetometer/mmc35240.c                |    9 +-
 drivers/iio/magnetometer/rm3100-core.c             |    8 +-
 drivers/iio/magnetometer/rm3100-i2c.c              |    1 +
 drivers/iio/magnetometer/rm3100-spi.c              |    1 +
 drivers/iio/magnetometer/st_magn_buffer.c          |    4 -
 drivers/iio/magnetometer/st_magn_core.c            |    5 +-
 drivers/iio/magnetometer/st_magn_i2c.c             |    1 +
 drivers/iio/magnetometer/st_magn_spi.c             |    1 +
 drivers/iio/potentiometer/Kconfig                  |    6 +-
 drivers/iio/potentiometer/ds1803.c                 |  169 ++-
 drivers/iio/pressure/Kconfig                       |   35 +-
 drivers/iio/pressure/dps310.c                      |    7 +
 drivers/iio/pressure/mpl115.c                      |    2 +-
 drivers/iio/pressure/mpl115_i2c.c                  |    1 +
 drivers/iio/pressure/mpl115_spi.c                  |    1 +
 drivers/iio/pressure/mpl3115.c                     |   10 +-
 drivers/iio/pressure/ms5611_core.c                 |    4 +-
 drivers/iio/pressure/ms5611_i2c.c                  |    1 +
 drivers/iio/pressure/ms5611_spi.c                  |    1 +
 drivers/iio/pressure/ms5637.c                      |    1 +
 drivers/iio/pressure/st_pressure_buffer.c          |    5 -
 drivers/iio/pressure/st_pressure_core.c            |    5 +-
 drivers/iio/pressure/st_pressure_i2c.c             |    1 +
 drivers/iio/pressure/st_pressure_spi.c             |    1 +
 drivers/iio/pressure/zpa2326.c                     |   12 +-
 drivers/iio/pressure/zpa2326_i2c.c                 |    1 +
 drivers/iio/pressure/zpa2326_spi.c                 |    1 +
 drivers/iio/proximity/Kconfig                      |   34 +
 drivers/iio/proximity/Makefile                     |    3 +
 drivers/iio/proximity/as3935.c                     |   26 +-
 drivers/iio/proximity/ping.c                       |    4 +-
 drivers/iio/proximity/pulsedlight-lidar-lite-v2.c  |    7 +-
 drivers/iio/proximity/rfd77402.c                   |    9 +-
 drivers/iio/proximity/srf04.c                      |   12 +-
 drivers/iio/proximity/srf08.c                      |    6 +-
 drivers/iio/proximity/sx9310.c                     |  741 ++-------
 drivers/iio/proximity/sx9324.c                     | 1068 +++++++++++++
 drivers/iio/proximity/sx9360.c                     |  893 +++++++++++
 drivers/iio/proximity/sx9500.c                     |    8 +-
 drivers/iio/proximity/sx_common.c                  |  572 +++++++
 drivers/iio/proximity/sx_common.h                  |  157 ++
 drivers/iio/proximity/vl53l0x-i2c.c                |    2 +-
 drivers/iio/temperature/max31856.c                 |    4 +-
 drivers/iio/temperature/max31865.c                 |    4 +-
 drivers/iio/temperature/maxim_thermocouple.c       |    5 +-
 drivers/iio/temperature/mlx90614.c                 |   12 +-
 drivers/iio/temperature/mlx90632.c                 |    2 +-
 drivers/iio/temperature/tmp006.c                   |    6 +-
 drivers/iio/temperature/tmp007.c                   |    6 +-
 drivers/iio/temperature/tsys01.c                   |    1 +
 drivers/iio/temperature/tsys02d.c                  |    1 +
 drivers/iio/test/Kconfig                           |   10 +
 drivers/iio/test/Makefile                          |    1 +
 drivers/iio/test/iio-test-rescale.c                |  710 +++++++++
 drivers/iio/trigger/Kconfig                        |    2 +-
 drivers/iio/trigger/stm32-timer-trigger.c          |   23 +-
 drivers/staging/iio/accel/adis16203.c              |    1 +
 drivers/staging/iio/accel/adis16240.c              |    1 +
 drivers/staging/iio/adc/Kconfig                    |   11 -
 drivers/staging/iio/adc/Makefile                   |    1 -
 drivers/staging/iio/adc/ad7280a.c                  | 1044 -------------
 drivers/staging/iio/adc/ad7280a.h                  |   37 -
 include/linux/iio/adc/qcom-vadc-common.h           |   15 +-
 include/linux/iio/afe/rescale.h                    |   36 +
 include/linux/iio/iio.h                            |    2 +-
 include/linux/iio/imu/adis.h                       |   60 +-
 include/linux/math.h                               |   12 +
 include/uapi/linux/iio/types.h                     |    1 +
 tools/iio/iio_event_monitor.c                      |    1 +
 298 files changed, 12334 insertions(+), 2950 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-adc-ad7280a
 create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2688
 create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-frequency-admv1014
 create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-sx9324
 create mode 100644 Documentation/devicetree/bindings/iio/accel/adi,adxl367.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad7280a.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-sense-rtd.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-transducer.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/amplifiers/adi,ada4250.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/dac/adi,ltc2688.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/frequency/adi,admv1014.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/frequency/adi,admv4420.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/proximity/semtech,sx9324.yaml
 create mode 100644 Documentation/devicetree/bindings/iio/proximity/semtech,sx9360.yaml
 create mode 100644 drivers/iio/accel/adxl367.c
 create mode 100644 drivers/iio/accel/adxl367.h
 create mode 100644 drivers/iio/accel/adxl367_i2c.c
 create mode 100644 drivers/iio/accel/adxl367_spi.c
 create mode 100644 drivers/iio/adc/ad7280a.c
 create mode 100644 drivers/iio/amplifiers/ada4250.c
 create mode 100644 drivers/iio/dac/ltc2688.c
 create mode 100644 drivers/iio/frequency/admv1014.c
 create mode 100644 drivers/iio/frequency/admv4420.c
 create mode 100644 drivers/iio/proximity/sx9324.c
 create mode 100644 drivers/iio/proximity/sx9360.c
 create mode 100644 drivers/iio/proximity/sx_common.c
 create mode 100644 drivers/iio/proximity/sx_common.h
 create mode 100644 drivers/iio/test/iio-test-rescale.c
 delete mode 100644 drivers/staging/iio/adc/ad7280a.c
 delete mode 100644 drivers/staging/iio/adc/ad7280a.h
 create mode 100644 include/linux/iio/afe/rescale.h

Comments

Jonathan Cameron March 2, 2022, 2:02 p.m. UTC | #1
On Wed, 2 Mar 2022 13:51:01 +0000
Jonathan Cameron <jic23@kernel.org> wrote:

> The following changes since commit e783362eb54cd99b2cac8b3a9aeac942e6f6ac07:
> 
>   Linux 5.17-rc1 (2022-01-23 10:12:53 +0200)
> 
> are available in the Git repository at:
> 
>   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git tags/iio-for-5.18a
> 
> for you to fetch changes up to 0bf126163c3e7e6d722622073046aed567a5551e:
> 
>   iio: adc: xilinx-ams: Fix single channel switching sequence (2022-03-02 13:39:08 +0000)
> 
> ----------------------------------------------------------------

Hi Greg,

A few quick comments on this pull request:

I had 7 patches in my fixes-togreg branch but as we are so late in the
cycle I have cherrypicked them into to the togreg branch and added
Stable markings where not previously present.  These fixes and most of the
rest of the pull have been in linux-next for a while. The ltc2688 driver
was the other late addition and that looks to be fine in linux-next
today and had some build coverage in another branch for a few days.

I'm seeing 2 merge conflicts with char-misc-next
1) Trivial .mailmap context one.
2) A more complex issue with namespace change crossing with a fix for 
 drivers/iio/accel/fxls8962af-core.c

The resolution I would recommend is to update the naming
of the spi_regmap in the relevant EXPORT_SYMBOL_NS_GPL()
and to update the i2c_regmap export to use
EXPORT_SYMBOL_NS_GP() instead of non NS version with the same
namespace as for the spi regmap.
This is the same resolution that Mark used when this occured
in linux-next.

https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/drivers/iio/accel/fxls8962af-core.c?id=3cb2e4090000aa0b06be7766ca6e82e6f2843818

Thanks for your help. As ever much appreciated!

Jonathan

> First set of new device support, fixes, cleanups and features for IIO in 5.18
> 
> This cycle we had quite a few series that applied similar changes
> to lots of drivers. To keep this description manageable I have
> called those out in their own section rather than per driver.
> 
> Particularly pleased to see the long running AFE precision series
> going in this cycle.
> 
> Series includes some late breaking fixes.
> 
> New device support
> * adi,ada4250 amplifier
>   - New driver and dt bindings for this programmable gain amplifier.
> * adi,admv1014 microwave down-converter
>   - New driver, dt bindings and some device specific ABI that
>     may be generalized as more drivers for devices similar to this
>     are added.
> * adi,admv4420 K Band down-converter.
>   - New driver and dt bindings.
> * adi,adxl367 accelerometer driver.
>   - New driver, dt-bindings + some new IIO ABI definitions to support
>     reference magnitude events where an estimate of the acceleration
>     due to gravity has been removed.
>   - A few fixes as follow up patches.
> * adi,ltc2688 DAC with toggle and dither modes.
>   - New driver and bindings. Includes some new driver specific (for now)
>     ABI for handling toggle mode and the addition of a dither waveform to
>     the DAC output.
> * AFE (analog front end) add support for additional types of analog device
>   in front of an ADC.
>   - RTD temperature sensors with dt bindings.
>   - Temperature transducers wit dt bindings.
>   - Related cleanup and features listed in other sections below.
> * maxim,ds3502 potentiometer.
>   - Add support to ds1803 driver which required significant rework.
> * mediatek,mt2701-auxadc driver
>   - Add mediatek,mt8186-auxadc - id table and chip specific info only.
> * semtech,sx9324, semtech,ax9360
>   - Substantial refactoring of sx9310 to extract core logic for reuse
>     into a separate module
>   - New driver using this supporting sx9324 proximity sensors.
>   - New driver using this supporting sx9360 proximity sensors.
> * silan,sc7a20
>   - Compatible with the st,lis2dh (or nearly anyway) so add ID and
>     chip specific info to enable support. Also silan vendor ID added
>     for dt-bindings.
> 
> Staging graduation
> * adi,ad7280a monitoring ADC for stacked lithium-ion batteries in
>   electric cars and similar.
>   - Substantial rework of driver required to bring inline with current
>     IIO best practice. An unusual device in IIO so some interesting features
>     we may see more of in future.
> 
> Multiple driver/core cleanup
> - Use sysfs_emit() in simple locations where there is no path to change
>   to various core created attributes.
> - Trivial white space fixes around inconsistency between space after { and
>   before } in id tables.
> - Introduce new handling for fractional types to avoid repeated similar
>   implementations. Use this in 3 drivers. Note this is also targeted
>   at future use in the AFE driver and was motivated by discussions
>   around the precision related work on that driver.
> - of related header cleanups - drop of*.h and add mod_devicetable.h as
>   appropriate.
> - Move a number of symbol exports into IIO_* namespaces.  Two categories,
>   1) Library used by multiple drivers e.g. st_sensors
>   2) Core driver module exporting functions used by bus specific modules.
>   A few related cleanups in this set.
> - Switch from CONFIG_PM_* guards to new DEFINE_SIMPLE_DEV_PM_OPS() and
>   similar to simplify drivers and take advantage of these new macros
>   allowing the compiler to do the job or removing unused code without
>   the need for __maybe_unused markings. Conversion of other drivers to
>   these new macros ongoing.
> 
> Features
> * adi,adf4350
>   - Switch from of specific to generic device properties enabling use with
>     other firmware types.
> * adi,adx345
>   - Switch from of specific to generic device properties.
>   - Add ACPI ID ADS0345
>   - Related driver cleanup.
> * adi,hmc425a
>   - Switch from of specific to generic device properties.
> * afe analog rescaler driver
>   - Wider range of types supported for scale.
>   - Support offset.
>   - Kunit tests.
> * atlas,ezo-sensor
>   - Convert from of to device properties.
> * fsl,mma8452
>   - Support mount matrix.
> * infineon,dps310:
>   - Add ACPI ID IFX3100.
> * invensense,mpu6050
>   - Convert to generic device properties.
> * maxim,ds1803
>   - Add out_raw_available before supporting more devices.
>   - Convert from of specific to device properties.
> * samsung,ssp_sensors
>   - Convert from of specific to device properties.
> * st,stm32-timer trigger
>   - Convert from of specific to device properties.
> * ti,hdc101x
>   - Add ACPI ID TXNW1010.
> * ti,tsc2046:
>   - Add read_raw support to enable use of iio_hwmon and similar.
> 
> Fixes / cleanup.
> * mailmap
>   - Update for Cai Huoqing
> * MAINTAINERS
>   - Fix Analog Devices related links.
>   - Add entry for ADRF6780
>   - Add entry for ADMV1013
>   - Add entry for AD7293
>   - Add entry for ADMV8818
>   - Update files listed for adis-lib
> * iio core:
>   - Fix wrong comment about current_mode being something a driver should
>     ever access.
>   - Use struct_size() rather than open coding in industrialio-hw-consumer
> * adi,axl355
>   - Use units.h definitions instead of local versions.
> * adi,adis-lib
>   - Simplify *updated_bits() macro
>   - Whitespace cleanup.
> * afe - Note many of these fixes only apply to particular configurations
>   so the problems have probably not been seen in the wild, but will be
>   visible with new usecases enabled this cycle.
>   - Fix application of consumer scale for IIO_VAL_INT.
>   - Apply a scale of 1 when no scale is provided.
>   - Make best effort to establish a valid offset value for fractional
>     cases.
>   - Use s64 for scale calculations where parameters may be signed.
>   - Tidy up include order.
>   - Improve accuracy for small fractional sales
>   - Reduce risk of integer overflow.
> * ams,as3935
>   - Use devm_delayed_work_autocancel() to replace open coded equivalent.
> * aspeed,adc
>   - Fix wrong use of divider flag.
> * atmel,sama5d2-adc
>   - Relax atmel,trigger-edge-type to optional.
>   - Drop Ludovic Desroches from listed maintainers of the dt-binding
>     inline with previous MAINTAINERS entry update.
> * fsl,mma8452
>   - Fix probing when i2c_device_id used.
>   - dev_get_drvdata() on the iio_dev->dev, no longer returns iio_dev.
>     Use dev_to_iio_dev() instead. Note the original path in here
>     worked more by luck than design.
> * invensense,mpu6050
>   - Drop ACPI_PTR() protection to avoid an unused warning.
>   - Use fact ACPI_COMPANION() returns null when ACPI_HANDLE() does to
>     simplify handling.
> * motorola,cpcap-adc
>   - Drop unused assignment.
> * qcom,spmi-adc
>   - Fix wrong example of 'reg' in binding document.
> * renesas,rzg2l-adc
>   - Trivial typo fix.
> * semtech,sx9360
>   - Fix wrong register handling for event generation.
> * st_sensors
>   - Allow manual disabling of I2C or SPI module if not needed for a particular
>     board. Default is still to enable the bus specific module if
>     appropriate bus is supported.
> * st,lsm6dsx
>   - dev_get_drvdata() on the iio_dev->dev, no longer returns iio_dev.
>     Use dev_to_iio_dev() instead.
> * ti,palmas-gpadc
>   - Split the interrupt fields in the dt-binding example
> * ti,tsc2046
>   - Rework state machine to improve readability after recent debugging of
>     an issue fixed elsewhere.
>   - Add a sanity check to avoid very large memory allocations if a crazy
>     delay is specified.
> * ti,twl6030
>   - Add error handling if devm_request_threaded_irq() fails.
> * xilinx,ams
>   - Use devm_delayed_work_autocancel() instead of open coding equivalent.
>   - Fix missing required clock entry in dt-binding.
>   - Fix miss counting of channels resulting in ps channels not
>     being enabled.
>   - Fix incorrect values written to sequencer registers.
>   - Fix sequence for single channel reading.
> 
> ----------------------------------------------------------------
> Andy Shevchenko (25):
>       math.h: Introduce data types for fractional numbers
>       iio: adc: rn5t618: Re-use generic struct u16_fract
>       iio: adc: twl4030-madc: Re-use generic struct s16_fract
>       iio: adc: qcom-vadc-common: Re-use generic struct u32_fract
>       iio: dac: ad5592r: Drop leftover header inclusion
>       iio: chemical: bme680: Switch from of headers to mod_devicetable.h
>       iio: amplifiers: hmc425a: Make use of device properties
>       iio: frequency: adf4350: Make use of device properties
>       iio: humidity: dht11: Switch from of headers to mod_devicetable.h
>       iio: temperature: mlx90632: Switch from of headers to mod_devicetable.h
>       iio: temperature: maxim_thermocouple: Switch from of headers to mod_devicetable.h
>       iio: accel: adxl355: Replace custom definitions with generic from units.h
>       iio: imu: inv_mpu6050: Drop wrong use of ACPI_PTR()
>       iio: imu: inv_mpu6050: Check ACPI companion directly
>       iio: imu: inv_mpu6050: Make use of device properties
>       iio: ssp_sensors: Make use of device properties
>       iio: chemical: atlas-ezo-sensor: Make use of device properties
>       iio: trigger: stm32-timer: Make use of device properties
>       iio: accel: adxl345: Convert to use dev_err_probe()
>       iio: accel: adxl345: Set driver_data for OF enumeration
>       iio: accel: adxl345: Get rid of name parameter in adxl345_core_probe()
>       iio: accel: adxl345: Make use of device properties
>       iio: accel: adxl345: Extract adxl345_powerup() helper
>       iio: accel: adxl345: Drop comma in terminator entries
>       iio: accel: adxl345: Remove unneeded blank lines
> 
> Antoniu Miclaus (12):
>       MAINTAINERS: fix Analog Devices links
>       MAINTAINERS: add maintainer for ADRF6780 driver
>       MAINTAINERS: add maintainer for AD7293 driver
>       MAINTAINERS: add maintainer for ADMV1013 driver
>       MAINTAINERS: add maintainer for ADMV8818 driver
>       iio: frequency: admv1014: add support for ADMV1014
>       dt-bindings: iio: frequency: add admv1014 binding
>       Documentation: ABI: testing: admv1014: add ABI docs
>       MAINTAINERS: add maintainer for ADMV1014 driver
>       dt-bindings: iio: amplifiers: add ada4250 doc
>       iio: amplifiers: ada4250: add support for ADA4250
>       MAINTAINERS: add maintainer for ADA4250 driver
> 
> Billy Tsai (1):
>       iio: adc: aspeed: Add divider flag to fix incorrect voltage reading.
> 
> Cai Huoqing (1):
>       mailmap: Update email address for Cai Huoqing
> 
> Christophe JAILLET (2):
>       iio: as3935: Use devm_delayed_work_autocancel()
>       iio: adc: xilinx-ams: Use devm_delayed_work_autocancel() to simplify code
> 
> Colin Ian King (1):
>       iio: adc: cpcap-adc: remove redundant assignment to variable cal_data_diff
> 
> Cosmin Tanislav (5):
>       iio: introduce mag_referenced
>       iio: ABI: document mag_referenced
>       iio: ABI: add note about configuring other attributes during buffer capture
>       dt-bindings: iio: accel: add ADXL367
>       iio: accel: add ADXL367 driver
> 
> Cristian Pop (2):
>       dt-bindings: iio: frequency: Add ADMV4420 doc
>       iio: frequency: admv4420.c: Add support for ADMV4420
> 
> Dan Carpenter (1):
>       iio: accel: adxl367: unlock on error in adxl367_buffer_predisable()
> 
> Eugen Hristev (1):
>       dt-bindings: iio: adc: atmel,sama5d2-adc: make atmel,trigger-edge-type non-mandatory
> 
> Guodong Liu (2):
>       dt-bindings: iio: adc: Add compatible for Mediatek MT8186
>       iio: adc: mt8186: Add compatible node for mt8186
> 
> Gustavo A. R. Silva (1):
>       iio: hw_consumer: Use struct_size() helper in kzalloc()
> 
> Gwendal Grignou (8):
>       iio:proximity:sx9310: Add frequency in read_avail
>       iio:proximity:sx9310: Extract common Semtech sensor logic
>       iio:proximity:sx9324: Add SX9324 support
>       dt-bindings:iio:proximity: Add sx9324 binding
>       iio:proximity:sx9324: Add dt_binding support
>       iio:proximity:sx9360: Add sx9360 support
>       dt-bindings:iio:proximity: Add sx9360 binding
>       iio:proximity:sx9360: Add dt-binding support
> 
> Haibo Chen (2):
>       iio: imu: st_lsm6dsx: use dev_to_iio_dev() to get iio_dev struct
>       iio: accel: mma8452: use the correct logic to get mma8452_data
> 
> Hans de Goede (2):
>       iio: mma8452: Fix probe failing when an i2c_device_id is used
>       iio: mma8452: Add support for the "mount-matrix" device property
> 
> Jagath Jog J (7):
>       iio: potentiometer: ds1803: Alignment to match the open parenthesis
>       iio: potentiometer: ds1803: Add available functionality
>       iio: potentiometer: ds1803: Add channel information in device data
>       iio: potentiometer: ds1803: Change to firmware provided data
>       iio: potentiometer: ds1803: Add device specific read_raw function
>       iio: potentiometer: ds1803: Add support for Maxim DS3502
>       dt-bindings: iio: potentiometer: Add Maxim DS3502 in trivial-devices
> 
> Jan Luebbe (1):
>       dt-bindings: iio: adc: microchip,mcp3201: fix interface type (I2C -> SPI)
> 
> Jiasheng Jiang (1):
>       iio: adc: Add check for devm_request_threaded_irq
> 
> Jonathan Cameron (115):
>       iio:chemical:atlas: Trivial white space cleanup to add space before }
>       iio:light:pa12203001: Tidy up white space change to add spaces after { and before }
>       iio:light:vcnl4035: Trivial whitespace cleanup to add space before }
>       iio:light:us5182: White space cleanup of spacing around {} in id tables
>       iio:light:ltr501: White space cleanup of spacing around {} in id tables
>       iio:proximity:ping: White space cleanup of spacing around {} in id tables
>       iio:proximity:rfd77402: White space cleanup of spacing around {} in id tables
>       iio:proximity:srf04: White space cleanup of spacing around {} in id tables
>       iio:proximity:srf08: White space cleanup of spacing around {} in id tables
>       iio:frequency:admv1013: White space cleanup of spacing around {} in id tables
>       iio:adc:mt6577_auxadc: Tidy up white space around {} in id tables
>       iio:adc:hi8435: Tidy up white space around {} in id tables
>       iio:adc:ti-adc084s021: Tidy up white space around {}
>       iio:light:tsl2722: Fix inconsistent spacing before } in id table
>       iio:proximity:vl53l0x: Tidy up white space around {} in id tables
>       iio:accel:dmard09: Tidy up white space around {} in id table
>       iio:accel:mma9551_core: Move exports into IIO_MMA9551 namespace
>       iio:accel:mma7455_core: Move exports into IIO_MMA7455 namespace
>       iio:accel:kxsd9: Move exports into IIO_KDSD9 namespace
>       iio:accel:bma400: Move exports into IIO_BMA400 namespace
>       iio:accel:adxl313: Move exports into IIO_ADXL313 namespace
>       iio:accel:adxl345: Move exports into IIO_ADXL345 namespace
>       iio:accel:adxl355: Move exports into IIO_ADXL355 namespace
>       iio:accel:adxl372: Move exports into IIO_ADXL372 namespace
>       iio:accel:bmc150: Move exports into IIO_BMC150 namespace
>       iio:accel:bmi088: Move exports into IIO_BMI088 namespace
>       iio:accel:fxl8962af: Move exports into IIO_FXL8962AF namespace
>       iio:st-sensors: Remove duplicate MODULE_*
>       iio:st-sensors: Move exports into IIO_ST_SENSORS namespace
>       iio:adc:ad_sigma_delta: Move exports into IIO_AD_SIGMA_DELTA namespace
>       iio:adc:ad7091r: Move exports into IIO_AD7091R namespace.
>       iio:adc:ad76060: Move exports into IIO_AD7606 namespace.
>       iio:common:meas-spec: Move exports into IIO_MEAS_SPEC_SENSORS
>       iio:common:ssp_sensors: Move exports into IIO_SSP_SENSORS namespace
>       iio:dac:ad5592r: Move exports into IIO_AD5592R namespace
>       iio:dac:ad5686: Move exports into IIO_AD5686 namespace
>       iio:imu:adis: Move exports into IIO_ADISLIB namespace
>       iio:pressure:zpa2326: Move exports into IIO_ZPA2326 namespace
>       iio:pressure:ms5611: Move exports into IIO_MS5611 namespace
>       iio:pressure:mpl115: Move exports into IIO_MPL115 namespace
>       iio:magnetometer:rm3100: Move exports to IIO_RM3100 namespace
>       iio:magnetometer:bmc150: Move exports to IIO_BMC150_MAGN namespace
>       iio:magnetometer:hmc5843: Move exports to IIO_HMC5843 namespace
>       iio:light:st_uvis25: Move exports to IIO_UVIS25 namespace
>       iio:chemical:bme680: Move exports to IIO_BME680 namespace
>       iio:accel:da311: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:accel:da280: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:accel:dmard06: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:accel:dmard10: Switch from CONFIG_PM guards to pm_sleep_ptr() etc
>       iio:accel:mc3230: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:accel:mma7660: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
>       iio:accel:mma9551: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:accel:mma9553: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:accel:stk8ba50: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:adc:at91-adc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:adc:exynos_adc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
>       iio:adc:palmas_gpadc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
>       iio:adc:rockchip: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:adc:twl6030: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:adc:vf610: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:common:ssp: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:dac:vf610: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:apds9300: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:cm3232: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:isl29018: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
>       iio:light:isl29125: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:jsa1212: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:ltr501: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:stk3310: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:tcs3414: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:tcs3472: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:tsl2563: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:light:tsl4531: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:magn:ak8975: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:magn:mag3110: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:magn:mmc35240: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:pressure:mpl3115: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:proximity:as3935: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:proximity:rfd77492: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:proximity:sx9500: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:temperature:tmp006: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:temperature:tmp007: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:accel:stk8312: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:accel:bma180: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:dac:m62332: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
>       iio:imu:kmx61: Switch from CONFIG_PM* guards to pm_ptr() etc
>       iio:temperature:mlx90614: Switch from CONFIG_PM* guards to pm_ptr() etc
>       iio:adc:ab8500: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:adc:stm32:Switch from CONFIG_PM guards to pm_ptr()
>       iio:adc:rcar: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:light:bh1780: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:proximity:pulsedlight: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:chemical:atlas: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:light:rpr0521: Switch from CONFIG_PM guards to pm_ptr() etc
>       iio:adc:stm32*: Use pm[_sleep]_ptr() etc to avoid need to make pm __maybe_unused
>       staging:iio:adc:ad7280a: Fix handing of device address bit reversing.
>       staging:iio:adc:ad7280a: Register define cleanup.
>       staging:iio:adc:ad7280a: rename _read() to _read_reg()
>       staging:iio:adc:ad7280a: Split buff[2] into tx and rx parts
>       staging:iio:adc:ad7280a: Use bitfield ops to managed fields in transfers.
>       staging:iio:adc:ad7280a: Switch to standard event control
>       staging:iio:adc:ad7280a: Standardize extended ABI naming
>       staging:iio:adc:ad7280a: Drop unused timestamp channel.
>       staging:iio:adc:ad7280a: Trivial comment formatting cleanup
>       staging:iio:adc:ad7280a: Make oversampling_ratio a runtime control
>       staging:iio:adc:ad7280a: Cleanup includes
>       staging:iio:ad7280a: Reflect optionality of irq in ABI
>       staging:iio:adc:ad7280a: Use a local dev pointer to avoid &spi->dev
>       staging:iio:adc:ad7280a: Use device properties to replace platform data.
>       staging:iio:adc:ad7280a: Drop buggy support for early termination of AUX alert.
>       dt-bindings:iio:adc:ad7280a: Add binding
>       iio:adc:ad7280a: Document ABI for cell balance switches
>       staging:iio:adc:ad7280a: Remove shift from cb_mask state cache.
>       staging:iio:adc:ad7280a: Use more conservative delays to allow 105C operation.
>       iio:adc:ad7280a: Move out of staging
> 
> Jongpil Jung (1):
>       iio: sx9360: fix iio event generation
> 
> Kai-Heng Feng (3):
>       iio: pressure: dps310: Add ACPI HID table
>       iio: humidity: hdc100x: Add ACPI HID table
>       iio: accel: adxl345: Add ACPI HID table
> 
> Lad Prabhakar (1):
>       iio: adc: rzg2l_adc: Fix typo
> 
> Lars-Peter Clausen (13):
>       iio: core: Use sysfs_emit()
>       iio: dmaengine-buffer: Use sysfs_emit()
>       iio: ad7192: Use sysfs_emit()
>       iio: ad9523: Use sysfs_emit()
>       iio: as3935: Use sysfs_emit()
>       iio: ina2xx-adc: sysfs_emit()
>       iio: lm3533: Use sysfs_emit()
>       iio: max31856: Use sysfs_emit()
>       iio: max31865: Use sysfs_emit()
>       iio: max9611: Use sysfs_emit()
>       iio: ms_sensors: Use sysfs_emit()
>       iio: scd4x: Use sysfs_emit()
>       iio: sps30: Use sysfs_emit()
> 
> Liam Beguin (15):
>       iio: inkern: apply consumer scale on IIO_VAL_INT cases
>       iio: inkern: apply consumer scale when no channel scale is available
>       iio: inkern: make a best effort on offset calculation
>       iio: afe: rescale: use s64 for temporary scale calculations
>       iio: afe: rescale: reorder includes
>       iio: afe: rescale: expose scale processing function
>       iio: afe: rescale: add INT_PLUS_{MICRO,NANO} support
>       iio: afe: rescale: add offset support
>       iio: afe: rescale: fix accuracy for small fractional scales
>       iio: afe: rescale: reduce risk of integer overflow
>       iio: test: add basic tests for the iio-rescale driver
>       iio: afe: rescale: add RTD temperature sensor support
>       iio: afe: rescale: add temperature transducers
>       dt-bindings: iio: afe: add bindings for temperature-sense-rtd
>       dt-bindings: iio: afe: add bindings for temperature transducers
> 
> Miquel Raynal (1):
>       iio: core: Fix the kernel doc regarding the currentmode iio_dev entry
> 
> Nathan Chancellor (1):
>       iio: accel: adxl367: Fix handled initialization in adxl367_irq_handler()
> 
> Nicolas Ferre (1):
>       dt-bindings: iio: adc: at91-sama5d2: update maintainers entry
> 
> Nikita Yushchenko (1):
>       iio: st_sensors: don't always auto-enable I2C and SPI interface drivers
> 
> Nuno Sá (6):
>       MAINTAINERS: add missing files to the adis lib
>       adis: simplify 'adis_update_bits' macros
>       iio: adis: stylistic changes
>       iio: dac: add support for ltc2688
>       iio: ABI: add ABI file for the LTC2688 DAC
>       dt-bindings: iio: Add ltc2688 documentation
> 
> Oleksij Rempel (3):
>       iio: adc: tsc2046: rework the trigger state machine
>       iio: adc: tsc2046: add .read_raw support
>       iio: adc: tsc2046: add sanity check to avoid to big allocations
> 
> Rob Herring (2):
>       dt-bindings: iio/adc: ti,palmas-gpadc: Split interrupt fields in example
>       dt-bindings: iio/adc: qcom,spmi-iadc: Fix 'reg' property in example
> 
> Robert Hancock (4):
>       dt-bindings: iio: adc: zynqmp_ams: Add clock entry
>       iio: adc: xilinx-ams: Fixed missing PS channels
>       iio: adc: xilinx-ams: Fixed wrong sequencer register settings
>       iio: adc: xilinx-ams: Fix single channel switching sequence
> 
> Samuel Holland (3):
>       dt-bindings: vendor-prefixes: Add silan vendor prefix
>       dt-bindings: iio: st: Add Silan SC7A20 accelerometer
>       iio: accel: st_accel: Add support for Silan SC7A20
> 
>  .mailmap                                           |    1 +
>  Documentation/ABI/testing/sysfs-bus-iio            |   31 +
>  .../ABI/testing/sysfs-bus-iio-adc-ad7280a          |   13 +
>  .../ABI/testing/sysfs-bus-iio-dac-ltc2688          |   86 ++
>  .../ABI/testing/sysfs-bus-iio-frequency-admv1014   |   23 +
>  Documentation/ABI/testing/sysfs-bus-iio-sx9324     |   28 +
>  .../devicetree/bindings/iio/accel/adi,adxl367.yaml |   79 +
>  .../devicetree/bindings/iio/adc/adi,ad7280a.yaml   |   77 +
>  .../bindings/iio/adc/atmel,sama5d2-adc.yaml        |    2 -
>  .../bindings/iio/adc/mediatek,mt2701-auxadc.yaml   |    1 +
>  .../bindings/iio/adc/microchip,mcp3201.yaml        |    2 +-
>  .../bindings/iio/adc/qcom,spmi-iadc.yaml           |    2 +-
>  .../bindings/iio/adc/ti,palmas-gpadc.yaml          |    6 +-
>  .../bindings/iio/adc/xlnx,zynqmp-ams.yaml          |    8 +
>  .../bindings/iio/afe/temperature-sense-rtd.yaml    |  101 ++
>  .../bindings/iio/afe/temperature-transducer.yaml   |  114 ++
>  .../bindings/iio/amplifiers/adi,ada4250.yaml       |   50 +
>  .../devicetree/bindings/iio/dac/adi,ltc2688.yaml   |  146 ++
>  .../bindings/iio/frequency/adi,admv1014.yaml       |  134 ++
>  .../bindings/iio/frequency/adi,admv4420.yaml       |   55 +
>  .../bindings/iio/proximity/semtech,sx9324.yaml     |  161 ++
>  .../bindings/iio/proximity/semtech,sx9360.yaml     |   89 ++
>  .../devicetree/bindings/iio/st,st-sensors.yaml     |    3 +
>  .../devicetree/bindings/trivial-devices.yaml       |    2 +
>  .../devicetree/bindings/vendor-prefixes.yaml       |    2 +
>  MAINTAINERS                                        |  123 +-
>  drivers/iio/accel/Kconfig                          |   62 +-
>  drivers/iio/accel/Makefile                         |    3 +
>  drivers/iio/accel/adis16201.c                      |    1 +
>  drivers/iio/accel/adis16209.c                      |    1 +
>  drivers/iio/accel/adxl313_core.c                   |    6 +-
>  drivers/iio/accel/adxl313_i2c.c                    |    1 +
>  drivers/iio/accel/adxl313_spi.c                    |    1 +
>  drivers/iio/accel/adxl345.h                        |    7 +-
>  drivers/iio/accel/adxl345_core.c                   |   56 +-
>  drivers/iio/accel/adxl345_i2c.c                    |   35 +-
>  drivers/iio/accel/adxl345_spi.c                    |   35 +-
>  drivers/iio/accel/adxl355_core.c                   |   11 +-
>  drivers/iio/accel/adxl355_i2c.c                    |    1 +
>  drivers/iio/accel/adxl355_spi.c                    |    1 +
>  drivers/iio/accel/adxl367.c                        | 1588 ++++++++++++++++++++
>  drivers/iio/accel/adxl367.h                        |   23 +
>  drivers/iio/accel/adxl367_i2c.c                    |   90 ++
>  drivers/iio/accel/adxl367_spi.c                    |  164 ++
>  drivers/iio/accel/adxl372.c                        |    4 +-
>  drivers/iio/accel/adxl372_i2c.c                    |    1 +
>  drivers/iio/accel/adxl372_spi.c                    |    1 +
>  drivers/iio/accel/bma180.c                         |    9 +-
>  drivers/iio/accel/bma400_core.c                    |    6 +-
>  drivers/iio/accel/bma400_i2c.c                     |    1 +
>  drivers/iio/accel/bma400_spi.c                     |    1 +
>  drivers/iio/accel/bmc150-accel-core.c              |    8 +-
>  drivers/iio/accel/bmc150-accel-i2c.c               |    1 +
>  drivers/iio/accel/bmc150-accel-spi.c               |    1 +
>  drivers/iio/accel/bmi088-accel-core.c              |    8 +-
>  drivers/iio/accel/bmi088-accel-spi.c               |    1 +
>  drivers/iio/accel/da280.c                          |    6 +-
>  drivers/iio/accel/da311.c                          |    6 +-
>  drivers/iio/accel/dmard06.c                        |   10 +-
>  drivers/iio/accel/dmard09.c                        |    2 +-
>  drivers/iio/accel/dmard10.c                        |    7 +-
>  drivers/iio/accel/fxls8962af-core.c                |    6 +-
>  drivers/iio/accel/fxls8962af-i2c.c                 |    1 +
>  drivers/iio/accel/fxls8962af-spi.c                 |    1 +
>  drivers/iio/accel/kxsd9-i2c.c                      |    1 +
>  drivers/iio/accel/kxsd9-spi.c                      |    1 +
>  drivers/iio/accel/kxsd9.c                          |    6 +-
>  drivers/iio/accel/mc3230.c                         |    6 +-
>  drivers/iio/accel/mma7455_core.c                   |    6 +-
>  drivers/iio/accel/mma7455_i2c.c                    |    1 +
>  drivers/iio/accel/mma7455_spi.c                    |    1 +
>  drivers/iio/accel/mma7660.c                        |   11 +-
>  drivers/iio/accel/mma8452.c                        |   54 +-
>  drivers/iio/accel/mma9551.c                        |   12 +-
>  drivers/iio/accel/mma9551_core.c                   |   36 +-
>  drivers/iio/accel/mma9553.c                        |   12 +-
>  drivers/iio/accel/ssp_accel_sensor.c               |    1 +
>  drivers/iio/accel/st_accel.h                       |    2 +
>  drivers/iio/accel/st_accel_buffer.c                |    5 -
>  drivers/iio/accel/st_accel_core.c                  |   88 +-
>  drivers/iio/accel/st_accel_i2c.c                   |    6 +
>  drivers/iio/accel/st_accel_spi.c                   |    1 +
>  drivers/iio/accel/stk8312.c                        |   11 +-
>  drivers/iio/accel/stk8ba50.c                       |   11 +-
>  drivers/iio/adc/Kconfig                            |   11 +
>  drivers/iio/adc/Makefile                           |    1 +
>  drivers/iio/adc/ab8500-gpadc.c                     |   14 +-
>  drivers/iio/adc/ad7091r-base.c                     |    4 +-
>  drivers/iio/adc/ad7091r5.c                         |    1 +
>  drivers/iio/adc/ad7124.c                           |    1 +
>  drivers/iio/adc/ad7192.c                           |    5 +-
>  drivers/iio/adc/ad7280a.c                          | 1111 ++++++++++++++
>  drivers/iio/adc/ad7606.c                           |    4 +-
>  drivers/iio/adc/ad7606_par.c                       |    1 +
>  drivers/iio/adc/ad7606_spi.c                       |    1 +
>  drivers/iio/adc/ad7780.c                           |    1 +
>  drivers/iio/adc/ad7791.c                           |    1 +
>  drivers/iio/adc/ad7793.c                           |    1 +
>  drivers/iio/adc/ad_sigma_delta.c                   |   20 +-
>  drivers/iio/adc/aspeed_adc.c                       |    4 +-
>  drivers/iio/adc/at91_adc.c                         |    7 +-
>  drivers/iio/adc/cpcap-adc.c                        |    2 +-
>  drivers/iio/adc/exynos_adc.c                       |    9 +-
>  drivers/iio/adc/hi8435.c                           |    2 +-
>  drivers/iio/adc/ina2xx-adc.c                       |    2 +-
>  drivers/iio/adc/max9611.c                          |    2 +-
>  drivers/iio/adc/mt6577_auxadc.c                    |   16 +-
>  drivers/iio/adc/palmas_gpadc.c                     |   10 +-
>  drivers/iio/adc/qcom-pm8xxx-xoadc.c                |   15 +-
>  drivers/iio/adc/qcom-spmi-vadc.c                   |   24 +-
>  drivers/iio/adc/qcom-vadc-common.c                 |   92 +-
>  drivers/iio/adc/rcar-gyroadc.c                     |    6 +-
>  drivers/iio/adc/rn5t618-adc.c                      |    7 +-
>  drivers/iio/adc/rockchip_saradc.c                  |    9 +-
>  drivers/iio/adc/rzg2l_adc.c                        |    4 +-
>  drivers/iio/adc/stm32-adc-core.c                   |   17 +-
>  drivers/iio/adc/stm32-adc.c                        |   12 +-
>  drivers/iio/adc/stm32-dfsdm-adc.c                  |   11 +-
>  drivers/iio/adc/stm32-dfsdm-core.c                 |   19 +-
>  drivers/iio/adc/ti-adc084s021.c                    |    2 +-
>  drivers/iio/adc/ti-tsc2046.c                       |  269 +++-
>  drivers/iio/adc/twl4030-madc.c                     |    9 +-
>  drivers/iio/adc/twl6030-gpadc.c                    |   10 +-
>  drivers/iio/adc/vf610_adc.c                        |    7 +-
>  drivers/iio/adc/xilinx-ams.c                       |   26 +-
>  drivers/iio/afe/iio-rescale.c                      |  288 +++-
>  drivers/iio/amplifiers/Kconfig                     |   11 +
>  drivers/iio/amplifiers/Makefile                    |    1 +
>  drivers/iio/amplifiers/ada4250.c                   |  403 +++++
>  drivers/iio/amplifiers/hmc425a.c                   |    6 +-
>  drivers/iio/buffer/industrialio-buffer-dmaengine.c |    2 +-
>  drivers/iio/buffer/industrialio-hw-consumer.c      |    4 +-
>  drivers/iio/chemical/atlas-ezo-sensor.c            |   32 +-
>  drivers/iio/chemical/atlas-sensor.c                |   17 +-
>  drivers/iio/chemical/bme680_core.c                 |    4 +-
>  drivers/iio/chemical/bme680_i2c.c                  |    1 +
>  drivers/iio/chemical/bme680_spi.c                  |    3 +-
>  drivers/iio/chemical/scd4x.c                       |    2 +-
>  drivers/iio/chemical/sps30.c                       |    2 +-
>  drivers/iio/common/ms_sensors/ms_sensors_i2c.c     |   28 +-
>  drivers/iio/common/ssp_sensors/ssp_dev.c           |   40 +-
>  drivers/iio/common/ssp_sensors/ssp_iio.c           |    7 +-
>  drivers/iio/common/st_sensors/Kconfig              |    2 -
>  drivers/iio/common/st_sensors/st_sensors_buffer.c  |    7 +-
>  drivers/iio/common/st_sensors/st_sensors_core.c    |   28 +-
>  drivers/iio/common/st_sensors/st_sensors_i2c.c     |    2 +-
>  drivers/iio/common/st_sensors/st_sensors_spi.c     |    2 +-
>  drivers/iio/common/st_sensors/st_sensors_trigger.c |    9 +-
>  drivers/iio/dac/Kconfig                            |   11 +
>  drivers/iio/dac/Makefile                           |    1 +
>  drivers/iio/dac/ad5592r-base.c                     |    5 +-
>  drivers/iio/dac/ad5592r.c                          |    1 +
>  drivers/iio/dac/ad5593r.c                          |    1 +
>  drivers/iio/dac/ad5686-spi.c                       |    1 +
>  drivers/iio/dac/ad5686.c                           |    4 +-
>  drivers/iio/dac/ad5696-i2c.c                       |    1 +
>  drivers/iio/dac/ltc2688.c                          | 1071 +++++++++++++
>  drivers/iio/dac/m62332.c                           |   11 +-
>  drivers/iio/dac/stm32-dac-core.c                   |   16 +-
>  drivers/iio/dac/stm32-dac.c                        |    9 +-
>  drivers/iio/dac/vf610_dac.c                        |    7 +-
>  drivers/iio/frequency/Kconfig                      |   20 +
>  drivers/iio/frequency/Makefile                     |    2 +
>  drivers/iio/frequency/ad9523.c                     |    2 +-
>  drivers/iio/frequency/adf4350.c                    |  103 +-
>  drivers/iio/frequency/admv1013.c                   |    2 +-
>  drivers/iio/frequency/admv1014.c                   |  823 ++++++++++
>  drivers/iio/frequency/admv4420.c                   |  398 +++++
>  drivers/iio/gyro/Kconfig                           |   37 +-
>  drivers/iio/gyro/adis16136.c                       |    1 +
>  drivers/iio/gyro/adis16260.c                       |    1 +
>  drivers/iio/gyro/ssp_gyro_sensor.c                 |    1 +
>  drivers/iio/gyro/st_gyro_buffer.c                  |    4 -
>  drivers/iio/gyro/st_gyro_core.c                    |    5 +-
>  drivers/iio/gyro/st_gyro_i2c.c                     |    1 +
>  drivers/iio/gyro/st_gyro_spi.c                     |    1 +
>  drivers/iio/humidity/dht11.c                       |    3 +-
>  drivers/iio/humidity/hdc100x.c                     |    7 +
>  drivers/iio/humidity/htu21.c                       |    1 +
>  drivers/iio/imu/adis.c                             |   67 +-
>  drivers/iio/imu/adis16400.c                        |    1 +
>  drivers/iio/imu/adis16460.c                        |    1 +
>  drivers/iio/imu/adis16475.c                        |    1 +
>  drivers/iio/imu/adis16480.c                        |    1 +
>  drivers/iio/imu/adis_buffer.c                      |   10 +-
>  drivers/iio/imu/adis_trigger.c                     |    5 +-
>  drivers/iio/imu/inv_mpu6050/inv_mpu_acpi.c         |    5 +-
>  drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c          |   15 +-
>  drivers/iio/imu/inv_mpu6050/inv_mpu_spi.c          |    5 +-
>  drivers/iio/imu/kmx61.c                            |   10 +-
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c       |    4 +-
>  drivers/iio/imu/st_lsm9ds0/Kconfig                 |   28 +-
>  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_core.c       |    3 +-
>  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_i2c.c        |    1 +
>  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_spi.c        |    1 +
>  drivers/iio/industrialio-buffer.c                  |    4 +-
>  drivers/iio/industrialio-core.c                    |    2 +-
>  drivers/iio/industrialio-event.c                   |    1 +
>  drivers/iio/inkern.c                               |   40 +-
>  drivers/iio/light/apds9300.c                       |   10 +-
>  drivers/iio/light/bh1780.c                         |   12 +-
>  drivers/iio/light/cm3232.c                         |    9 +-
>  drivers/iio/light/isl29018.c                       |   10 +-
>  drivers/iio/light/isl29125.c                       |    7 +-
>  drivers/iio/light/jsa1212.c                        |   11 +-
>  drivers/iio/light/lm3533-als.c                     |    6 +-
>  drivers/iio/light/ltr501.c                         |   20 +-
>  drivers/iio/light/pa12203001.c                     |    4 +-
>  drivers/iio/light/rpr0521.c                        |    7 +-
>  drivers/iio/light/st_uvis25_core.c                 |    4 +-
>  drivers/iio/light/st_uvis25_i2c.c                  |    1 +
>  drivers/iio/light/st_uvis25_spi.c                  |    1 +
>  drivers/iio/light/stk3310.c                        |   11 +-
>  drivers/iio/light/tcs3414.c                        |    7 +-
>  drivers/iio/light/tcs3472.c                        |    7 +-
>  drivers/iio/light/tsl2563.c                        |   10 +-
>  drivers/iio/light/tsl2772.c                        |    2 +-
>  drivers/iio/light/tsl4531.c                        |   10 +-
>  drivers/iio/light/us5182d.c                        |    6 +-
>  drivers/iio/light/vcnl4035.c                       |    2 +-
>  drivers/iio/magnetometer/Kconfig                   |   35 +-
>  drivers/iio/magnetometer/ak8975.c                  |   12 +-
>  drivers/iio/magnetometer/bmc150_magn.c             |    8 +-
>  drivers/iio/magnetometer/bmc150_magn_i2c.c         |    1 +
>  drivers/iio/magnetometer/bmc150_magn_spi.c         |    1 +
>  drivers/iio/magnetometer/hmc5843_core.c            |    8 +-
>  drivers/iio/magnetometer/hmc5843_i2c.c             |    1 +
>  drivers/iio/magnetometer/hmc5843_spi.c             |    1 +
>  drivers/iio/magnetometer/mag3110.c                 |   10 +-
>  drivers/iio/magnetometer/mmc35240.c                |    9 +-
>  drivers/iio/magnetometer/rm3100-core.c             |    8 +-
>  drivers/iio/magnetometer/rm3100-i2c.c              |    1 +
>  drivers/iio/magnetometer/rm3100-spi.c              |    1 +
>  drivers/iio/magnetometer/st_magn_buffer.c          |    4 -
>  drivers/iio/magnetometer/st_magn_core.c            |    5 +-
>  drivers/iio/magnetometer/st_magn_i2c.c             |    1 +
>  drivers/iio/magnetometer/st_magn_spi.c             |    1 +
>  drivers/iio/potentiometer/Kconfig                  |    6 +-
>  drivers/iio/potentiometer/ds1803.c                 |  169 ++-
>  drivers/iio/pressure/Kconfig                       |   35 +-
>  drivers/iio/pressure/dps310.c                      |    7 +
>  drivers/iio/pressure/mpl115.c                      |    2 +-
>  drivers/iio/pressure/mpl115_i2c.c                  |    1 +
>  drivers/iio/pressure/mpl115_spi.c                  |    1 +
>  drivers/iio/pressure/mpl3115.c                     |   10 +-
>  drivers/iio/pressure/ms5611_core.c                 |    4 +-
>  drivers/iio/pressure/ms5611_i2c.c                  |    1 +
>  drivers/iio/pressure/ms5611_spi.c                  |    1 +
>  drivers/iio/pressure/ms5637.c                      |    1 +
>  drivers/iio/pressure/st_pressure_buffer.c          |    5 -
>  drivers/iio/pressure/st_pressure_core.c            |    5 +-
>  drivers/iio/pressure/st_pressure_i2c.c             |    1 +
>  drivers/iio/pressure/st_pressure_spi.c             |    1 +
>  drivers/iio/pressure/zpa2326.c                     |   12 +-
>  drivers/iio/pressure/zpa2326_i2c.c                 |    1 +
>  drivers/iio/pressure/zpa2326_spi.c                 |    1 +
>  drivers/iio/proximity/Kconfig                      |   34 +
>  drivers/iio/proximity/Makefile                     |    3 +
>  drivers/iio/proximity/as3935.c                     |   26 +-
>  drivers/iio/proximity/ping.c                       |    4 +-
>  drivers/iio/proximity/pulsedlight-lidar-lite-v2.c  |    7 +-
>  drivers/iio/proximity/rfd77402.c                   |    9 +-
>  drivers/iio/proximity/srf04.c                      |   12 +-
>  drivers/iio/proximity/srf08.c                      |    6 +-
>  drivers/iio/proximity/sx9310.c                     |  741 ++-------
>  drivers/iio/proximity/sx9324.c                     | 1068 +++++++++++++
>  drivers/iio/proximity/sx9360.c                     |  893 +++++++++++
>  drivers/iio/proximity/sx9500.c                     |    8 +-
>  drivers/iio/proximity/sx_common.c                  |  572 +++++++
>  drivers/iio/proximity/sx_common.h                  |  157 ++
>  drivers/iio/proximity/vl53l0x-i2c.c                |    2 +-
>  drivers/iio/temperature/max31856.c                 |    4 +-
>  drivers/iio/temperature/max31865.c                 |    4 +-
>  drivers/iio/temperature/maxim_thermocouple.c       |    5 +-
>  drivers/iio/temperature/mlx90614.c                 |   12 +-
>  drivers/iio/temperature/mlx90632.c                 |    2 +-
>  drivers/iio/temperature/tmp006.c                   |    6 +-
>  drivers/iio/temperature/tmp007.c                   |    6 +-
>  drivers/iio/temperature/tsys01.c                   |    1 +
>  drivers/iio/temperature/tsys02d.c                  |    1 +
>  drivers/iio/test/Kconfig                           |   10 +
>  drivers/iio/test/Makefile                          |    1 +
>  drivers/iio/test/iio-test-rescale.c                |  710 +++++++++
>  drivers/iio/trigger/Kconfig                        |    2 +-
>  drivers/iio/trigger/stm32-timer-trigger.c          |   23 +-
>  drivers/staging/iio/accel/adis16203.c              |    1 +
>  drivers/staging/iio/accel/adis16240.c              |    1 +
>  drivers/staging/iio/adc/Kconfig                    |   11 -
>  drivers/staging/iio/adc/Makefile                   |    1 -
>  drivers/staging/iio/adc/ad7280a.c                  | 1044 -------------
>  drivers/staging/iio/adc/ad7280a.h                  |   37 -
>  include/linux/iio/adc/qcom-vadc-common.h           |   15 +-
>  include/linux/iio/afe/rescale.h                    |   36 +
>  include/linux/iio/iio.h                            |    2 +-
>  include/linux/iio/imu/adis.h                       |   60 +-
>  include/linux/math.h                               |   12 +
>  include/uapi/linux/iio/types.h                     |    1 +
>  tools/iio/iio_event_monitor.c                      |    1 +
>  298 files changed, 12334 insertions(+), 2950 deletions(-)
>  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-adc-ad7280a
>  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2688
>  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-frequency-admv1014
>  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-sx9324
>  create mode 100644 Documentation/devicetree/bindings/iio/accel/adi,adxl367.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad7280a.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-sense-rtd.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-transducer.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/amplifiers/adi,ada4250.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/dac/adi,ltc2688.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/frequency/adi,admv1014.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/frequency/adi,admv4420.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/proximity/semtech,sx9324.yaml
>  create mode 100644 Documentation/devicetree/bindings/iio/proximity/semtech,sx9360.yaml
>  create mode 100644 drivers/iio/accel/adxl367.c
>  create mode 100644 drivers/iio/accel/adxl367.h
>  create mode 100644 drivers/iio/accel/adxl367_i2c.c
>  create mode 100644 drivers/iio/accel/adxl367_spi.c
>  create mode 100644 drivers/iio/adc/ad7280a.c
>  create mode 100644 drivers/iio/amplifiers/ada4250.c
>  create mode 100644 drivers/iio/dac/ltc2688.c
>  create mode 100644 drivers/iio/frequency/admv1014.c
>  create mode 100644 drivers/iio/frequency/admv4420.c
>  create mode 100644 drivers/iio/proximity/sx9324.c
>  create mode 100644 drivers/iio/proximity/sx9360.c
>  create mode 100644 drivers/iio/proximity/sx_common.c
>  create mode 100644 drivers/iio/proximity/sx_common.h
>  create mode 100644 drivers/iio/test/iio-test-rescale.c
>  delete mode 100644 drivers/staging/iio/adc/ad7280a.c
>  delete mode 100644 drivers/staging/iio/adc/ad7280a.h
>  create mode 100644 include/linux/iio/afe/rescale.h
Jonathan Cameron March 15, 2022, 12:10 p.m. UTC | #2
On Wed, 2 Mar 2022 14:02:56 +0000
Jonathan Cameron <jic23@kernel.org> wrote:

> On Wed, 2 Mar 2022 13:51:01 +0000
> Jonathan Cameron <jic23@kernel.org> wrote:
> 
> > The following changes since commit e783362eb54cd99b2cac8b3a9aeac942e6f6ac07:
> > 
> >   Linux 5.17-rc1 (2022-01-23 10:12:53 +0200)
> > 
> > are available in the Git repository at:
> > 
> >   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git tags/iio-for-5.18a
> > 
> > for you to fetch changes up to 0bf126163c3e7e6d722622073046aed567a5551e:
> > 
> >   iio: adc: xilinx-ams: Fix single channel switching sequence (2022-03-02 13:39:08 +0000)
> > 
> > ----------------------------------------------------------------  
> 
> Hi Greg,

Hi Greg,

Just wondering if you have any feedback on this pull request or maybe something
went wrong somewhere?  Absolutely fine if it's still in your todo pile!

Thanks,

Jonathan

> 
> A few quick comments on this pull request:
> 
> I had 7 patches in my fixes-togreg branch but as we are so late in the
> cycle I have cherrypicked them into to the togreg branch and added
> Stable markings where not previously present.  These fixes and most of the
> rest of the pull have been in linux-next for a while. The ltc2688 driver
> was the other late addition and that looks to be fine in linux-next
> today and had some build coverage in another branch for a few days.
> 
> I'm seeing 2 merge conflicts with char-misc-next
> 1) Trivial .mailmap context one.
> 2) A more complex issue with namespace change crossing with a fix for 
>  drivers/iio/accel/fxls8962af-core.c
> 
> The resolution I would recommend is to update the naming
> of the spi_regmap in the relevant EXPORT_SYMBOL_NS_GPL()
> and to update the i2c_regmap export to use
> EXPORT_SYMBOL_NS_GP() instead of non NS version with the same
> namespace as for the spi regmap.
> This is the same resolution that Mark used when this occured
> in linux-next.
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/drivers/iio/accel/fxls8962af-core.c?id=3cb2e4090000aa0b06be7766ca6e82e6f2843818
> 
> Thanks for your help. As ever much appreciated!
> 
> Jonathan
> 
> > First set of new device support, fixes, cleanups and features for IIO in 5.18
> > 
> > This cycle we had quite a few series that applied similar changes
> > to lots of drivers. To keep this description manageable I have
> > called those out in their own section rather than per driver.
> > 
> > Particularly pleased to see the long running AFE precision series
> > going in this cycle.
> > 
> > Series includes some late breaking fixes.
> > 
> > New device support
> > * adi,ada4250 amplifier
> >   - New driver and dt bindings for this programmable gain amplifier.
> > * adi,admv1014 microwave down-converter
> >   - New driver, dt bindings and some device specific ABI that
> >     may be generalized as more drivers for devices similar to this
> >     are added.
> > * adi,admv4420 K Band down-converter.
> >   - New driver and dt bindings.
> > * adi,adxl367 accelerometer driver.
> >   - New driver, dt-bindings + some new IIO ABI definitions to support
> >     reference magnitude events where an estimate of the acceleration
> >     due to gravity has been removed.
> >   - A few fixes as follow up patches.
> > * adi,ltc2688 DAC with toggle and dither modes.
> >   - New driver and bindings. Includes some new driver specific (for now)
> >     ABI for handling toggle mode and the addition of a dither waveform to
> >     the DAC output.
> > * AFE (analog front end) add support for additional types of analog device
> >   in front of an ADC.
> >   - RTD temperature sensors with dt bindings.
> >   - Temperature transducers wit dt bindings.
> >   - Related cleanup and features listed in other sections below.
> > * maxim,ds3502 potentiometer.
> >   - Add support to ds1803 driver which required significant rework.
> > * mediatek,mt2701-auxadc driver
> >   - Add mediatek,mt8186-auxadc - id table and chip specific info only.
> > * semtech,sx9324, semtech,ax9360
> >   - Substantial refactoring of sx9310 to extract core logic for reuse
> >     into a separate module
> >   - New driver using this supporting sx9324 proximity sensors.
> >   - New driver using this supporting sx9360 proximity sensors.
> > * silan,sc7a20
> >   - Compatible with the st,lis2dh (or nearly anyway) so add ID and
> >     chip specific info to enable support. Also silan vendor ID added
> >     for dt-bindings.
> > 
> > Staging graduation
> > * adi,ad7280a monitoring ADC for stacked lithium-ion batteries in
> >   electric cars and similar.
> >   - Substantial rework of driver required to bring inline with current
> >     IIO best practice. An unusual device in IIO so some interesting features
> >     we may see more of in future.
> > 
> > Multiple driver/core cleanup
> > - Use sysfs_emit() in simple locations where there is no path to change
> >   to various core created attributes.
> > - Trivial white space fixes around inconsistency between space after { and
> >   before } in id tables.
> > - Introduce new handling for fractional types to avoid repeated similar
> >   implementations. Use this in 3 drivers. Note this is also targeted
> >   at future use in the AFE driver and was motivated by discussions
> >   around the precision related work on that driver.
> > - of related header cleanups - drop of*.h and add mod_devicetable.h as
> >   appropriate.
> > - Move a number of symbol exports into IIO_* namespaces.  Two categories,
> >   1) Library used by multiple drivers e.g. st_sensors
> >   2) Core driver module exporting functions used by bus specific modules.
> >   A few related cleanups in this set.
> > - Switch from CONFIG_PM_* guards to new DEFINE_SIMPLE_DEV_PM_OPS() and
> >   similar to simplify drivers and take advantage of these new macros
> >   allowing the compiler to do the job or removing unused code without
> >   the need for __maybe_unused markings. Conversion of other drivers to
> >   these new macros ongoing.
> > 
> > Features
> > * adi,adf4350
> >   - Switch from of specific to generic device properties enabling use with
> >     other firmware types.
> > * adi,adx345
> >   - Switch from of specific to generic device properties.
> >   - Add ACPI ID ADS0345
> >   - Related driver cleanup.
> > * adi,hmc425a
> >   - Switch from of specific to generic device properties.
> > * afe analog rescaler driver
> >   - Wider range of types supported for scale.
> >   - Support offset.
> >   - Kunit tests.
> > * atlas,ezo-sensor
> >   - Convert from of to device properties.
> > * fsl,mma8452
> >   - Support mount matrix.
> > * infineon,dps310:
> >   - Add ACPI ID IFX3100.
> > * invensense,mpu6050
> >   - Convert to generic device properties.
> > * maxim,ds1803
> >   - Add out_raw_available before supporting more devices.
> >   - Convert from of specific to device properties.
> > * samsung,ssp_sensors
> >   - Convert from of specific to device properties.
> > * st,stm32-timer trigger
> >   - Convert from of specific to device properties.
> > * ti,hdc101x
> >   - Add ACPI ID TXNW1010.
> > * ti,tsc2046:
> >   - Add read_raw support to enable use of iio_hwmon and similar.
> > 
> > Fixes / cleanup.
> > * mailmap
> >   - Update for Cai Huoqing
> > * MAINTAINERS
> >   - Fix Analog Devices related links.
> >   - Add entry for ADRF6780
> >   - Add entry for ADMV1013
> >   - Add entry for AD7293
> >   - Add entry for ADMV8818
> >   - Update files listed for adis-lib
> > * iio core:
> >   - Fix wrong comment about current_mode being something a driver should
> >     ever access.
> >   - Use struct_size() rather than open coding in industrialio-hw-consumer
> > * adi,axl355
> >   - Use units.h definitions instead of local versions.
> > * adi,adis-lib
> >   - Simplify *updated_bits() macro
> >   - Whitespace cleanup.
> > * afe - Note many of these fixes only apply to particular configurations
> >   so the problems have probably not been seen in the wild, but will be
> >   visible with new usecases enabled this cycle.
> >   - Fix application of consumer scale for IIO_VAL_INT.
> >   - Apply a scale of 1 when no scale is provided.
> >   - Make best effort to establish a valid offset value for fractional
> >     cases.
> >   - Use s64 for scale calculations where parameters may be signed.
> >   - Tidy up include order.
> >   - Improve accuracy for small fractional sales
> >   - Reduce risk of integer overflow.
> > * ams,as3935
> >   - Use devm_delayed_work_autocancel() to replace open coded equivalent.
> > * aspeed,adc
> >   - Fix wrong use of divider flag.
> > * atmel,sama5d2-adc
> >   - Relax atmel,trigger-edge-type to optional.
> >   - Drop Ludovic Desroches from listed maintainers of the dt-binding
> >     inline with previous MAINTAINERS entry update.
> > * fsl,mma8452
> >   - Fix probing when i2c_device_id used.
> >   - dev_get_drvdata() on the iio_dev->dev, no longer returns iio_dev.
> >     Use dev_to_iio_dev() instead. Note the original path in here
> >     worked more by luck than design.
> > * invensense,mpu6050
> >   - Drop ACPI_PTR() protection to avoid an unused warning.
> >   - Use fact ACPI_COMPANION() returns null when ACPI_HANDLE() does to
> >     simplify handling.
> > * motorola,cpcap-adc
> >   - Drop unused assignment.
> > * qcom,spmi-adc
> >   - Fix wrong example of 'reg' in binding document.
> > * renesas,rzg2l-adc
> >   - Trivial typo fix.
> > * semtech,sx9360
> >   - Fix wrong register handling for event generation.
> > * st_sensors
> >   - Allow manual disabling of I2C or SPI module if not needed for a particular
> >     board. Default is still to enable the bus specific module if
> >     appropriate bus is supported.
> > * st,lsm6dsx
> >   - dev_get_drvdata() on the iio_dev->dev, no longer returns iio_dev.
> >     Use dev_to_iio_dev() instead.
> > * ti,palmas-gpadc
> >   - Split the interrupt fields in the dt-binding example
> > * ti,tsc2046
> >   - Rework state machine to improve readability after recent debugging of
> >     an issue fixed elsewhere.
> >   - Add a sanity check to avoid very large memory allocations if a crazy
> >     delay is specified.
> > * ti,twl6030
> >   - Add error handling if devm_request_threaded_irq() fails.
> > * xilinx,ams
> >   - Use devm_delayed_work_autocancel() instead of open coding equivalent.
> >   - Fix missing required clock entry in dt-binding.
> >   - Fix miss counting of channels resulting in ps channels not
> >     being enabled.
> >   - Fix incorrect values written to sequencer registers.
> >   - Fix sequence for single channel reading.
> > 
> > ----------------------------------------------------------------
> > Andy Shevchenko (25):
> >       math.h: Introduce data types for fractional numbers
> >       iio: adc: rn5t618: Re-use generic struct u16_fract
> >       iio: adc: twl4030-madc: Re-use generic struct s16_fract
> >       iio: adc: qcom-vadc-common: Re-use generic struct u32_fract
> >       iio: dac: ad5592r: Drop leftover header inclusion
> >       iio: chemical: bme680: Switch from of headers to mod_devicetable.h
> >       iio: amplifiers: hmc425a: Make use of device properties
> >       iio: frequency: adf4350: Make use of device properties
> >       iio: humidity: dht11: Switch from of headers to mod_devicetable.h
> >       iio: temperature: mlx90632: Switch from of headers to mod_devicetable.h
> >       iio: temperature: maxim_thermocouple: Switch from of headers to mod_devicetable.h
> >       iio: accel: adxl355: Replace custom definitions with generic from units.h
> >       iio: imu: inv_mpu6050: Drop wrong use of ACPI_PTR()
> >       iio: imu: inv_mpu6050: Check ACPI companion directly
> >       iio: imu: inv_mpu6050: Make use of device properties
> >       iio: ssp_sensors: Make use of device properties
> >       iio: chemical: atlas-ezo-sensor: Make use of device properties
> >       iio: trigger: stm32-timer: Make use of device properties
> >       iio: accel: adxl345: Convert to use dev_err_probe()
> >       iio: accel: adxl345: Set driver_data for OF enumeration
> >       iio: accel: adxl345: Get rid of name parameter in adxl345_core_probe()
> >       iio: accel: adxl345: Make use of device properties
> >       iio: accel: adxl345: Extract adxl345_powerup() helper
> >       iio: accel: adxl345: Drop comma in terminator entries
> >       iio: accel: adxl345: Remove unneeded blank lines
> > 
> > Antoniu Miclaus (12):
> >       MAINTAINERS: fix Analog Devices links
> >       MAINTAINERS: add maintainer for ADRF6780 driver
> >       MAINTAINERS: add maintainer for AD7293 driver
> >       MAINTAINERS: add maintainer for ADMV1013 driver
> >       MAINTAINERS: add maintainer for ADMV8818 driver
> >       iio: frequency: admv1014: add support for ADMV1014
> >       dt-bindings: iio: frequency: add admv1014 binding
> >       Documentation: ABI: testing: admv1014: add ABI docs
> >       MAINTAINERS: add maintainer for ADMV1014 driver
> >       dt-bindings: iio: amplifiers: add ada4250 doc
> >       iio: amplifiers: ada4250: add support for ADA4250
> >       MAINTAINERS: add maintainer for ADA4250 driver
> > 
> > Billy Tsai (1):
> >       iio: adc: aspeed: Add divider flag to fix incorrect voltage reading.
> > 
> > Cai Huoqing (1):
> >       mailmap: Update email address for Cai Huoqing
> > 
> > Christophe JAILLET (2):
> >       iio: as3935: Use devm_delayed_work_autocancel()
> >       iio: adc: xilinx-ams: Use devm_delayed_work_autocancel() to simplify code
> > 
> > Colin Ian King (1):
> >       iio: adc: cpcap-adc: remove redundant assignment to variable cal_data_diff
> > 
> > Cosmin Tanislav (5):
> >       iio: introduce mag_referenced
> >       iio: ABI: document mag_referenced
> >       iio: ABI: add note about configuring other attributes during buffer capture
> >       dt-bindings: iio: accel: add ADXL367
> >       iio: accel: add ADXL367 driver
> > 
> > Cristian Pop (2):
> >       dt-bindings: iio: frequency: Add ADMV4420 doc
> >       iio: frequency: admv4420.c: Add support for ADMV4420
> > 
> > Dan Carpenter (1):
> >       iio: accel: adxl367: unlock on error in adxl367_buffer_predisable()
> > 
> > Eugen Hristev (1):
> >       dt-bindings: iio: adc: atmel,sama5d2-adc: make atmel,trigger-edge-type non-mandatory
> > 
> > Guodong Liu (2):
> >       dt-bindings: iio: adc: Add compatible for Mediatek MT8186
> >       iio: adc: mt8186: Add compatible node for mt8186
> > 
> > Gustavo A. R. Silva (1):
> >       iio: hw_consumer: Use struct_size() helper in kzalloc()
> > 
> > Gwendal Grignou (8):
> >       iio:proximity:sx9310: Add frequency in read_avail
> >       iio:proximity:sx9310: Extract common Semtech sensor logic
> >       iio:proximity:sx9324: Add SX9324 support
> >       dt-bindings:iio:proximity: Add sx9324 binding
> >       iio:proximity:sx9324: Add dt_binding support
> >       iio:proximity:sx9360: Add sx9360 support
> >       dt-bindings:iio:proximity: Add sx9360 binding
> >       iio:proximity:sx9360: Add dt-binding support
> > 
> > Haibo Chen (2):
> >       iio: imu: st_lsm6dsx: use dev_to_iio_dev() to get iio_dev struct
> >       iio: accel: mma8452: use the correct logic to get mma8452_data
> > 
> > Hans de Goede (2):
> >       iio: mma8452: Fix probe failing when an i2c_device_id is used
> >       iio: mma8452: Add support for the "mount-matrix" device property
> > 
> > Jagath Jog J (7):
> >       iio: potentiometer: ds1803: Alignment to match the open parenthesis
> >       iio: potentiometer: ds1803: Add available functionality
> >       iio: potentiometer: ds1803: Add channel information in device data
> >       iio: potentiometer: ds1803: Change to firmware provided data
> >       iio: potentiometer: ds1803: Add device specific read_raw function
> >       iio: potentiometer: ds1803: Add support for Maxim DS3502
> >       dt-bindings: iio: potentiometer: Add Maxim DS3502 in trivial-devices
> > 
> > Jan Luebbe (1):
> >       dt-bindings: iio: adc: microchip,mcp3201: fix interface type (I2C -> SPI)
> > 
> > Jiasheng Jiang (1):
> >       iio: adc: Add check for devm_request_threaded_irq
> > 
> > Jonathan Cameron (115):
> >       iio:chemical:atlas: Trivial white space cleanup to add space before }
> >       iio:light:pa12203001: Tidy up white space change to add spaces after { and before }
> >       iio:light:vcnl4035: Trivial whitespace cleanup to add space before }
> >       iio:light:us5182: White space cleanup of spacing around {} in id tables
> >       iio:light:ltr501: White space cleanup of spacing around {} in id tables
> >       iio:proximity:ping: White space cleanup of spacing around {} in id tables
> >       iio:proximity:rfd77402: White space cleanup of spacing around {} in id tables
> >       iio:proximity:srf04: White space cleanup of spacing around {} in id tables
> >       iio:proximity:srf08: White space cleanup of spacing around {} in id tables
> >       iio:frequency:admv1013: White space cleanup of spacing around {} in id tables
> >       iio:adc:mt6577_auxadc: Tidy up white space around {} in id tables
> >       iio:adc:hi8435: Tidy up white space around {} in id tables
> >       iio:adc:ti-adc084s021: Tidy up white space around {}
> >       iio:light:tsl2722: Fix inconsistent spacing before } in id table
> >       iio:proximity:vl53l0x: Tidy up white space around {} in id tables
> >       iio:accel:dmard09: Tidy up white space around {} in id table
> >       iio:accel:mma9551_core: Move exports into IIO_MMA9551 namespace
> >       iio:accel:mma7455_core: Move exports into IIO_MMA7455 namespace
> >       iio:accel:kxsd9: Move exports into IIO_KDSD9 namespace
> >       iio:accel:bma400: Move exports into IIO_BMA400 namespace
> >       iio:accel:adxl313: Move exports into IIO_ADXL313 namespace
> >       iio:accel:adxl345: Move exports into IIO_ADXL345 namespace
> >       iio:accel:adxl355: Move exports into IIO_ADXL355 namespace
> >       iio:accel:adxl372: Move exports into IIO_ADXL372 namespace
> >       iio:accel:bmc150: Move exports into IIO_BMC150 namespace
> >       iio:accel:bmi088: Move exports into IIO_BMI088 namespace
> >       iio:accel:fxl8962af: Move exports into IIO_FXL8962AF namespace
> >       iio:st-sensors: Remove duplicate MODULE_*
> >       iio:st-sensors: Move exports into IIO_ST_SENSORS namespace
> >       iio:adc:ad_sigma_delta: Move exports into IIO_AD_SIGMA_DELTA namespace
> >       iio:adc:ad7091r: Move exports into IIO_AD7091R namespace.
> >       iio:adc:ad76060: Move exports into IIO_AD7606 namespace.
> >       iio:common:meas-spec: Move exports into IIO_MEAS_SPEC_SENSORS
> >       iio:common:ssp_sensors: Move exports into IIO_SSP_SENSORS namespace
> >       iio:dac:ad5592r: Move exports into IIO_AD5592R namespace
> >       iio:dac:ad5686: Move exports into IIO_AD5686 namespace
> >       iio:imu:adis: Move exports into IIO_ADISLIB namespace
> >       iio:pressure:zpa2326: Move exports into IIO_ZPA2326 namespace
> >       iio:pressure:ms5611: Move exports into IIO_MS5611 namespace
> >       iio:pressure:mpl115: Move exports into IIO_MPL115 namespace
> >       iio:magnetometer:rm3100: Move exports to IIO_RM3100 namespace
> >       iio:magnetometer:bmc150: Move exports to IIO_BMC150_MAGN namespace
> >       iio:magnetometer:hmc5843: Move exports to IIO_HMC5843 namespace
> >       iio:light:st_uvis25: Move exports to IIO_UVIS25 namespace
> >       iio:chemical:bme680: Move exports to IIO_BME680 namespace
> >       iio:accel:da311: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:accel:da280: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:accel:dmard06: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:accel:dmard10: Switch from CONFIG_PM guards to pm_sleep_ptr() etc
> >       iio:accel:mc3230: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:accel:mma7660: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
> >       iio:accel:mma9551: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:accel:mma9553: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:accel:stk8ba50: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:adc:at91-adc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:adc:exynos_adc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
> >       iio:adc:palmas_gpadc: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
> >       iio:adc:rockchip: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:adc:twl6030: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:adc:vf610: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:common:ssp: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:dac:vf610: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:apds9300: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:cm3232: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:isl29018: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()
> >       iio:light:isl29125: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:jsa1212: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:ltr501: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:stk3310: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:tcs3414: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:tcs3472: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:tsl2563: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:light:tsl4531: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:magn:ak8975: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:magn:mag3110: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:magn:mmc35240: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:pressure:mpl3115: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:proximity:as3935: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:proximity:rfd77492: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:proximity:sx9500: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:temperature:tmp006: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:temperature:tmp007: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:accel:stk8312: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:accel:bma180: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:dac:m62332: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr() etc
> >       iio:imu:kmx61: Switch from CONFIG_PM* guards to pm_ptr() etc
> >       iio:temperature:mlx90614: Switch from CONFIG_PM* guards to pm_ptr() etc
> >       iio:adc:ab8500: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:adc:stm32:Switch from CONFIG_PM guards to pm_ptr()
> >       iio:adc:rcar: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:light:bh1780: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:proximity:pulsedlight: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:chemical:atlas: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:light:rpr0521: Switch from CONFIG_PM guards to pm_ptr() etc
> >       iio:adc:stm32*: Use pm[_sleep]_ptr() etc to avoid need to make pm __maybe_unused
> >       staging:iio:adc:ad7280a: Fix handing of device address bit reversing.
> >       staging:iio:adc:ad7280a: Register define cleanup.
> >       staging:iio:adc:ad7280a: rename _read() to _read_reg()
> >       staging:iio:adc:ad7280a: Split buff[2] into tx and rx parts
> >       staging:iio:adc:ad7280a: Use bitfield ops to managed fields in transfers.
> >       staging:iio:adc:ad7280a: Switch to standard event control
> >       staging:iio:adc:ad7280a: Standardize extended ABI naming
> >       staging:iio:adc:ad7280a: Drop unused timestamp channel.
> >       staging:iio:adc:ad7280a: Trivial comment formatting cleanup
> >       staging:iio:adc:ad7280a: Make oversampling_ratio a runtime control
> >       staging:iio:adc:ad7280a: Cleanup includes
> >       staging:iio:ad7280a: Reflect optionality of irq in ABI
> >       staging:iio:adc:ad7280a: Use a local dev pointer to avoid &spi->dev
> >       staging:iio:adc:ad7280a: Use device properties to replace platform data.
> >       staging:iio:adc:ad7280a: Drop buggy support for early termination of AUX alert.
> >       dt-bindings:iio:adc:ad7280a: Add binding
> >       iio:adc:ad7280a: Document ABI for cell balance switches
> >       staging:iio:adc:ad7280a: Remove shift from cb_mask state cache.
> >       staging:iio:adc:ad7280a: Use more conservative delays to allow 105C operation.
> >       iio:adc:ad7280a: Move out of staging
> > 
> > Jongpil Jung (1):
> >       iio: sx9360: fix iio event generation
> > 
> > Kai-Heng Feng (3):
> >       iio: pressure: dps310: Add ACPI HID table
> >       iio: humidity: hdc100x: Add ACPI HID table
> >       iio: accel: adxl345: Add ACPI HID table
> > 
> > Lad Prabhakar (1):
> >       iio: adc: rzg2l_adc: Fix typo
> > 
> > Lars-Peter Clausen (13):
> >       iio: core: Use sysfs_emit()
> >       iio: dmaengine-buffer: Use sysfs_emit()
> >       iio: ad7192: Use sysfs_emit()
> >       iio: ad9523: Use sysfs_emit()
> >       iio: as3935: Use sysfs_emit()
> >       iio: ina2xx-adc: sysfs_emit()
> >       iio: lm3533: Use sysfs_emit()
> >       iio: max31856: Use sysfs_emit()
> >       iio: max31865: Use sysfs_emit()
> >       iio: max9611: Use sysfs_emit()
> >       iio: ms_sensors: Use sysfs_emit()
> >       iio: scd4x: Use sysfs_emit()
> >       iio: sps30: Use sysfs_emit()
> > 
> > Liam Beguin (15):
> >       iio: inkern: apply consumer scale on IIO_VAL_INT cases
> >       iio: inkern: apply consumer scale when no channel scale is available
> >       iio: inkern: make a best effort on offset calculation
> >       iio: afe: rescale: use s64 for temporary scale calculations
> >       iio: afe: rescale: reorder includes
> >       iio: afe: rescale: expose scale processing function
> >       iio: afe: rescale: add INT_PLUS_{MICRO,NANO} support
> >       iio: afe: rescale: add offset support
> >       iio: afe: rescale: fix accuracy for small fractional scales
> >       iio: afe: rescale: reduce risk of integer overflow
> >       iio: test: add basic tests for the iio-rescale driver
> >       iio: afe: rescale: add RTD temperature sensor support
> >       iio: afe: rescale: add temperature transducers
> >       dt-bindings: iio: afe: add bindings for temperature-sense-rtd
> >       dt-bindings: iio: afe: add bindings for temperature transducers
> > 
> > Miquel Raynal (1):
> >       iio: core: Fix the kernel doc regarding the currentmode iio_dev entry
> > 
> > Nathan Chancellor (1):
> >       iio: accel: adxl367: Fix handled initialization in adxl367_irq_handler()
> > 
> > Nicolas Ferre (1):
> >       dt-bindings: iio: adc: at91-sama5d2: update maintainers entry
> > 
> > Nikita Yushchenko (1):
> >       iio: st_sensors: don't always auto-enable I2C and SPI interface drivers
> > 
> > Nuno Sá (6):
> >       MAINTAINERS: add missing files to the adis lib
> >       adis: simplify 'adis_update_bits' macros
> >       iio: adis: stylistic changes
> >       iio: dac: add support for ltc2688
> >       iio: ABI: add ABI file for the LTC2688 DAC
> >       dt-bindings: iio: Add ltc2688 documentation
> > 
> > Oleksij Rempel (3):
> >       iio: adc: tsc2046: rework the trigger state machine
> >       iio: adc: tsc2046: add .read_raw support
> >       iio: adc: tsc2046: add sanity check to avoid to big allocations
> > 
> > Rob Herring (2):
> >       dt-bindings: iio/adc: ti,palmas-gpadc: Split interrupt fields in example
> >       dt-bindings: iio/adc: qcom,spmi-iadc: Fix 'reg' property in example
> > 
> > Robert Hancock (4):
> >       dt-bindings: iio: adc: zynqmp_ams: Add clock entry
> >       iio: adc: xilinx-ams: Fixed missing PS channels
> >       iio: adc: xilinx-ams: Fixed wrong sequencer register settings
> >       iio: adc: xilinx-ams: Fix single channel switching sequence
> > 
> > Samuel Holland (3):
> >       dt-bindings: vendor-prefixes: Add silan vendor prefix
> >       dt-bindings: iio: st: Add Silan SC7A20 accelerometer
> >       iio: accel: st_accel: Add support for Silan SC7A20
> > 
> >  .mailmap                                           |    1 +
> >  Documentation/ABI/testing/sysfs-bus-iio            |   31 +
> >  .../ABI/testing/sysfs-bus-iio-adc-ad7280a          |   13 +
> >  .../ABI/testing/sysfs-bus-iio-dac-ltc2688          |   86 ++
> >  .../ABI/testing/sysfs-bus-iio-frequency-admv1014   |   23 +
> >  Documentation/ABI/testing/sysfs-bus-iio-sx9324     |   28 +
> >  .../devicetree/bindings/iio/accel/adi,adxl367.yaml |   79 +
> >  .../devicetree/bindings/iio/adc/adi,ad7280a.yaml   |   77 +
> >  .../bindings/iio/adc/atmel,sama5d2-adc.yaml        |    2 -
> >  .../bindings/iio/adc/mediatek,mt2701-auxadc.yaml   |    1 +
> >  .../bindings/iio/adc/microchip,mcp3201.yaml        |    2 +-
> >  .../bindings/iio/adc/qcom,spmi-iadc.yaml           |    2 +-
> >  .../bindings/iio/adc/ti,palmas-gpadc.yaml          |    6 +-
> >  .../bindings/iio/adc/xlnx,zynqmp-ams.yaml          |    8 +
> >  .../bindings/iio/afe/temperature-sense-rtd.yaml    |  101 ++
> >  .../bindings/iio/afe/temperature-transducer.yaml   |  114 ++
> >  .../bindings/iio/amplifiers/adi,ada4250.yaml       |   50 +
> >  .../devicetree/bindings/iio/dac/adi,ltc2688.yaml   |  146 ++
> >  .../bindings/iio/frequency/adi,admv1014.yaml       |  134 ++
> >  .../bindings/iio/frequency/adi,admv4420.yaml       |   55 +
> >  .../bindings/iio/proximity/semtech,sx9324.yaml     |  161 ++
> >  .../bindings/iio/proximity/semtech,sx9360.yaml     |   89 ++
> >  .../devicetree/bindings/iio/st,st-sensors.yaml     |    3 +
> >  .../devicetree/bindings/trivial-devices.yaml       |    2 +
> >  .../devicetree/bindings/vendor-prefixes.yaml       |    2 +
> >  MAINTAINERS                                        |  123 +-
> >  drivers/iio/accel/Kconfig                          |   62 +-
> >  drivers/iio/accel/Makefile                         |    3 +
> >  drivers/iio/accel/adis16201.c                      |    1 +
> >  drivers/iio/accel/adis16209.c                      |    1 +
> >  drivers/iio/accel/adxl313_core.c                   |    6 +-
> >  drivers/iio/accel/adxl313_i2c.c                    |    1 +
> >  drivers/iio/accel/adxl313_spi.c                    |    1 +
> >  drivers/iio/accel/adxl345.h                        |    7 +-
> >  drivers/iio/accel/adxl345_core.c                   |   56 +-
> >  drivers/iio/accel/adxl345_i2c.c                    |   35 +-
> >  drivers/iio/accel/adxl345_spi.c                    |   35 +-
> >  drivers/iio/accel/adxl355_core.c                   |   11 +-
> >  drivers/iio/accel/adxl355_i2c.c                    |    1 +
> >  drivers/iio/accel/adxl355_spi.c                    |    1 +
> >  drivers/iio/accel/adxl367.c                        | 1588 ++++++++++++++++++++
> >  drivers/iio/accel/adxl367.h                        |   23 +
> >  drivers/iio/accel/adxl367_i2c.c                    |   90 ++
> >  drivers/iio/accel/adxl367_spi.c                    |  164 ++
> >  drivers/iio/accel/adxl372.c                        |    4 +-
> >  drivers/iio/accel/adxl372_i2c.c                    |    1 +
> >  drivers/iio/accel/adxl372_spi.c                    |    1 +
> >  drivers/iio/accel/bma180.c                         |    9 +-
> >  drivers/iio/accel/bma400_core.c                    |    6 +-
> >  drivers/iio/accel/bma400_i2c.c                     |    1 +
> >  drivers/iio/accel/bma400_spi.c                     |    1 +
> >  drivers/iio/accel/bmc150-accel-core.c              |    8 +-
> >  drivers/iio/accel/bmc150-accel-i2c.c               |    1 +
> >  drivers/iio/accel/bmc150-accel-spi.c               |    1 +
> >  drivers/iio/accel/bmi088-accel-core.c              |    8 +-
> >  drivers/iio/accel/bmi088-accel-spi.c               |    1 +
> >  drivers/iio/accel/da280.c                          |    6 +-
> >  drivers/iio/accel/da311.c                          |    6 +-
> >  drivers/iio/accel/dmard06.c                        |   10 +-
> >  drivers/iio/accel/dmard09.c                        |    2 +-
> >  drivers/iio/accel/dmard10.c                        |    7 +-
> >  drivers/iio/accel/fxls8962af-core.c                |    6 +-
> >  drivers/iio/accel/fxls8962af-i2c.c                 |    1 +
> >  drivers/iio/accel/fxls8962af-spi.c                 |    1 +
> >  drivers/iio/accel/kxsd9-i2c.c                      |    1 +
> >  drivers/iio/accel/kxsd9-spi.c                      |    1 +
> >  drivers/iio/accel/kxsd9.c                          |    6 +-
> >  drivers/iio/accel/mc3230.c                         |    6 +-
> >  drivers/iio/accel/mma7455_core.c                   |    6 +-
> >  drivers/iio/accel/mma7455_i2c.c                    |    1 +
> >  drivers/iio/accel/mma7455_spi.c                    |    1 +
> >  drivers/iio/accel/mma7660.c                        |   11 +-
> >  drivers/iio/accel/mma8452.c                        |   54 +-
> >  drivers/iio/accel/mma9551.c                        |   12 +-
> >  drivers/iio/accel/mma9551_core.c                   |   36 +-
> >  drivers/iio/accel/mma9553.c                        |   12 +-
> >  drivers/iio/accel/ssp_accel_sensor.c               |    1 +
> >  drivers/iio/accel/st_accel.h                       |    2 +
> >  drivers/iio/accel/st_accel_buffer.c                |    5 -
> >  drivers/iio/accel/st_accel_core.c                  |   88 +-
> >  drivers/iio/accel/st_accel_i2c.c                   |    6 +
> >  drivers/iio/accel/st_accel_spi.c                   |    1 +
> >  drivers/iio/accel/stk8312.c                        |   11 +-
> >  drivers/iio/accel/stk8ba50.c                       |   11 +-
> >  drivers/iio/adc/Kconfig                            |   11 +
> >  drivers/iio/adc/Makefile                           |    1 +
> >  drivers/iio/adc/ab8500-gpadc.c                     |   14 +-
> >  drivers/iio/adc/ad7091r-base.c                     |    4 +-
> >  drivers/iio/adc/ad7091r5.c                         |    1 +
> >  drivers/iio/adc/ad7124.c                           |    1 +
> >  drivers/iio/adc/ad7192.c                           |    5 +-
> >  drivers/iio/adc/ad7280a.c                          | 1111 ++++++++++++++
> >  drivers/iio/adc/ad7606.c                           |    4 +-
> >  drivers/iio/adc/ad7606_par.c                       |    1 +
> >  drivers/iio/adc/ad7606_spi.c                       |    1 +
> >  drivers/iio/adc/ad7780.c                           |    1 +
> >  drivers/iio/adc/ad7791.c                           |    1 +
> >  drivers/iio/adc/ad7793.c                           |    1 +
> >  drivers/iio/adc/ad_sigma_delta.c                   |   20 +-
> >  drivers/iio/adc/aspeed_adc.c                       |    4 +-
> >  drivers/iio/adc/at91_adc.c                         |    7 +-
> >  drivers/iio/adc/cpcap-adc.c                        |    2 +-
> >  drivers/iio/adc/exynos_adc.c                       |    9 +-
> >  drivers/iio/adc/hi8435.c                           |    2 +-
> >  drivers/iio/adc/ina2xx-adc.c                       |    2 +-
> >  drivers/iio/adc/max9611.c                          |    2 +-
> >  drivers/iio/adc/mt6577_auxadc.c                    |   16 +-
> >  drivers/iio/adc/palmas_gpadc.c                     |   10 +-
> >  drivers/iio/adc/qcom-pm8xxx-xoadc.c                |   15 +-
> >  drivers/iio/adc/qcom-spmi-vadc.c                   |   24 +-
> >  drivers/iio/adc/qcom-vadc-common.c                 |   92 +-
> >  drivers/iio/adc/rcar-gyroadc.c                     |    6 +-
> >  drivers/iio/adc/rn5t618-adc.c                      |    7 +-
> >  drivers/iio/adc/rockchip_saradc.c                  |    9 +-
> >  drivers/iio/adc/rzg2l_adc.c                        |    4 +-
> >  drivers/iio/adc/stm32-adc-core.c                   |   17 +-
> >  drivers/iio/adc/stm32-adc.c                        |   12 +-
> >  drivers/iio/adc/stm32-dfsdm-adc.c                  |   11 +-
> >  drivers/iio/adc/stm32-dfsdm-core.c                 |   19 +-
> >  drivers/iio/adc/ti-adc084s021.c                    |    2 +-
> >  drivers/iio/adc/ti-tsc2046.c                       |  269 +++-
> >  drivers/iio/adc/twl4030-madc.c                     |    9 +-
> >  drivers/iio/adc/twl6030-gpadc.c                    |   10 +-
> >  drivers/iio/adc/vf610_adc.c                        |    7 +-
> >  drivers/iio/adc/xilinx-ams.c                       |   26 +-
> >  drivers/iio/afe/iio-rescale.c                      |  288 +++-
> >  drivers/iio/amplifiers/Kconfig                     |   11 +
> >  drivers/iio/amplifiers/Makefile                    |    1 +
> >  drivers/iio/amplifiers/ada4250.c                   |  403 +++++
> >  drivers/iio/amplifiers/hmc425a.c                   |    6 +-
> >  drivers/iio/buffer/industrialio-buffer-dmaengine.c |    2 +-
> >  drivers/iio/buffer/industrialio-hw-consumer.c      |    4 +-
> >  drivers/iio/chemical/atlas-ezo-sensor.c            |   32 +-
> >  drivers/iio/chemical/atlas-sensor.c                |   17 +-
> >  drivers/iio/chemical/bme680_core.c                 |    4 +-
> >  drivers/iio/chemical/bme680_i2c.c                  |    1 +
> >  drivers/iio/chemical/bme680_spi.c                  |    3 +-
> >  drivers/iio/chemical/scd4x.c                       |    2 +-
> >  drivers/iio/chemical/sps30.c                       |    2 +-
> >  drivers/iio/common/ms_sensors/ms_sensors_i2c.c     |   28 +-
> >  drivers/iio/common/ssp_sensors/ssp_dev.c           |   40 +-
> >  drivers/iio/common/ssp_sensors/ssp_iio.c           |    7 +-
> >  drivers/iio/common/st_sensors/Kconfig              |    2 -
> >  drivers/iio/common/st_sensors/st_sensors_buffer.c  |    7 +-
> >  drivers/iio/common/st_sensors/st_sensors_core.c    |   28 +-
> >  drivers/iio/common/st_sensors/st_sensors_i2c.c     |    2 +-
> >  drivers/iio/common/st_sensors/st_sensors_spi.c     |    2 +-
> >  drivers/iio/common/st_sensors/st_sensors_trigger.c |    9 +-
> >  drivers/iio/dac/Kconfig                            |   11 +
> >  drivers/iio/dac/Makefile                           |    1 +
> >  drivers/iio/dac/ad5592r-base.c                     |    5 +-
> >  drivers/iio/dac/ad5592r.c                          |    1 +
> >  drivers/iio/dac/ad5593r.c                          |    1 +
> >  drivers/iio/dac/ad5686-spi.c                       |    1 +
> >  drivers/iio/dac/ad5686.c                           |    4 +-
> >  drivers/iio/dac/ad5696-i2c.c                       |    1 +
> >  drivers/iio/dac/ltc2688.c                          | 1071 +++++++++++++
> >  drivers/iio/dac/m62332.c                           |   11 +-
> >  drivers/iio/dac/stm32-dac-core.c                   |   16 +-
> >  drivers/iio/dac/stm32-dac.c                        |    9 +-
> >  drivers/iio/dac/vf610_dac.c                        |    7 +-
> >  drivers/iio/frequency/Kconfig                      |   20 +
> >  drivers/iio/frequency/Makefile                     |    2 +
> >  drivers/iio/frequency/ad9523.c                     |    2 +-
> >  drivers/iio/frequency/adf4350.c                    |  103 +-
> >  drivers/iio/frequency/admv1013.c                   |    2 +-
> >  drivers/iio/frequency/admv1014.c                   |  823 ++++++++++
> >  drivers/iio/frequency/admv4420.c                   |  398 +++++
> >  drivers/iio/gyro/Kconfig                           |   37 +-
> >  drivers/iio/gyro/adis16136.c                       |    1 +
> >  drivers/iio/gyro/adis16260.c                       |    1 +
> >  drivers/iio/gyro/ssp_gyro_sensor.c                 |    1 +
> >  drivers/iio/gyro/st_gyro_buffer.c                  |    4 -
> >  drivers/iio/gyro/st_gyro_core.c                    |    5 +-
> >  drivers/iio/gyro/st_gyro_i2c.c                     |    1 +
> >  drivers/iio/gyro/st_gyro_spi.c                     |    1 +
> >  drivers/iio/humidity/dht11.c                       |    3 +-
> >  drivers/iio/humidity/hdc100x.c                     |    7 +
> >  drivers/iio/humidity/htu21.c                       |    1 +
> >  drivers/iio/imu/adis.c                             |   67 +-
> >  drivers/iio/imu/adis16400.c                        |    1 +
> >  drivers/iio/imu/adis16460.c                        |    1 +
> >  drivers/iio/imu/adis16475.c                        |    1 +
> >  drivers/iio/imu/adis16480.c                        |    1 +
> >  drivers/iio/imu/adis_buffer.c                      |   10 +-
> >  drivers/iio/imu/adis_trigger.c                     |    5 +-
> >  drivers/iio/imu/inv_mpu6050/inv_mpu_acpi.c         |    5 +-
> >  drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c          |   15 +-
> >  drivers/iio/imu/inv_mpu6050/inv_mpu_spi.c          |    5 +-
> >  drivers/iio/imu/kmx61.c                            |   10 +-
> >  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c       |    4 +-
> >  drivers/iio/imu/st_lsm9ds0/Kconfig                 |   28 +-
> >  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_core.c       |    3 +-
> >  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_i2c.c        |    1 +
> >  drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_spi.c        |    1 +
> >  drivers/iio/industrialio-buffer.c                  |    4 +-
> >  drivers/iio/industrialio-core.c                    |    2 +-
> >  drivers/iio/industrialio-event.c                   |    1 +
> >  drivers/iio/inkern.c                               |   40 +-
> >  drivers/iio/light/apds9300.c                       |   10 +-
> >  drivers/iio/light/bh1780.c                         |   12 +-
> >  drivers/iio/light/cm3232.c                         |    9 +-
> >  drivers/iio/light/isl29018.c                       |   10 +-
> >  drivers/iio/light/isl29125.c                       |    7 +-
> >  drivers/iio/light/jsa1212.c                        |   11 +-
> >  drivers/iio/light/lm3533-als.c                     |    6 +-
> >  drivers/iio/light/ltr501.c                         |   20 +-
> >  drivers/iio/light/pa12203001.c                     |    4 +-
> >  drivers/iio/light/rpr0521.c                        |    7 +-
> >  drivers/iio/light/st_uvis25_core.c                 |    4 +-
> >  drivers/iio/light/st_uvis25_i2c.c                  |    1 +
> >  drivers/iio/light/st_uvis25_spi.c                  |    1 +
> >  drivers/iio/light/stk3310.c                        |   11 +-
> >  drivers/iio/light/tcs3414.c                        |    7 +-
> >  drivers/iio/light/tcs3472.c                        |    7 +-
> >  drivers/iio/light/tsl2563.c                        |   10 +-
> >  drivers/iio/light/tsl2772.c                        |    2 +-
> >  drivers/iio/light/tsl4531.c                        |   10 +-
> >  drivers/iio/light/us5182d.c                        |    6 +-
> >  drivers/iio/light/vcnl4035.c                       |    2 +-
> >  drivers/iio/magnetometer/Kconfig                   |   35 +-
> >  drivers/iio/magnetometer/ak8975.c                  |   12 +-
> >  drivers/iio/magnetometer/bmc150_magn.c             |    8 +-
> >  drivers/iio/magnetometer/bmc150_magn_i2c.c         |    1 +
> >  drivers/iio/magnetometer/bmc150_magn_spi.c         |    1 +
> >  drivers/iio/magnetometer/hmc5843_core.c            |    8 +-
> >  drivers/iio/magnetometer/hmc5843_i2c.c             |    1 +
> >  drivers/iio/magnetometer/hmc5843_spi.c             |    1 +
> >  drivers/iio/magnetometer/mag3110.c                 |   10 +-
> >  drivers/iio/magnetometer/mmc35240.c                |    9 +-
> >  drivers/iio/magnetometer/rm3100-core.c             |    8 +-
> >  drivers/iio/magnetometer/rm3100-i2c.c              |    1 +
> >  drivers/iio/magnetometer/rm3100-spi.c              |    1 +
> >  drivers/iio/magnetometer/st_magn_buffer.c          |    4 -
> >  drivers/iio/magnetometer/st_magn_core.c            |    5 +-
> >  drivers/iio/magnetometer/st_magn_i2c.c             |    1 +
> >  drivers/iio/magnetometer/st_magn_spi.c             |    1 +
> >  drivers/iio/potentiometer/Kconfig                  |    6 +-
> >  drivers/iio/potentiometer/ds1803.c                 |  169 ++-
> >  drivers/iio/pressure/Kconfig                       |   35 +-
> >  drivers/iio/pressure/dps310.c                      |    7 +
> >  drivers/iio/pressure/mpl115.c                      |    2 +-
> >  drivers/iio/pressure/mpl115_i2c.c                  |    1 +
> >  drivers/iio/pressure/mpl115_spi.c                  |    1 +
> >  drivers/iio/pressure/mpl3115.c                     |   10 +-
> >  drivers/iio/pressure/ms5611_core.c                 |    4 +-
> >  drivers/iio/pressure/ms5611_i2c.c                  |    1 +
> >  drivers/iio/pressure/ms5611_spi.c                  |    1 +
> >  drivers/iio/pressure/ms5637.c                      |    1 +
> >  drivers/iio/pressure/st_pressure_buffer.c          |    5 -
> >  drivers/iio/pressure/st_pressure_core.c            |    5 +-
> >  drivers/iio/pressure/st_pressure_i2c.c             |    1 +
> >  drivers/iio/pressure/st_pressure_spi.c             |    1 +
> >  drivers/iio/pressure/zpa2326.c                     |   12 +-
> >  drivers/iio/pressure/zpa2326_i2c.c                 |    1 +
> >  drivers/iio/pressure/zpa2326_spi.c                 |    1 +
> >  drivers/iio/proximity/Kconfig                      |   34 +
> >  drivers/iio/proximity/Makefile                     |    3 +
> >  drivers/iio/proximity/as3935.c                     |   26 +-
> >  drivers/iio/proximity/ping.c                       |    4 +-
> >  drivers/iio/proximity/pulsedlight-lidar-lite-v2.c  |    7 +-
> >  drivers/iio/proximity/rfd77402.c                   |    9 +-
> >  drivers/iio/proximity/srf04.c                      |   12 +-
> >  drivers/iio/proximity/srf08.c                      |    6 +-
> >  drivers/iio/proximity/sx9310.c                     |  741 ++-------
> >  drivers/iio/proximity/sx9324.c                     | 1068 +++++++++++++
> >  drivers/iio/proximity/sx9360.c                     |  893 +++++++++++
> >  drivers/iio/proximity/sx9500.c                     |    8 +-
> >  drivers/iio/proximity/sx_common.c                  |  572 +++++++
> >  drivers/iio/proximity/sx_common.h                  |  157 ++
> >  drivers/iio/proximity/vl53l0x-i2c.c                |    2 +-
> >  drivers/iio/temperature/max31856.c                 |    4 +-
> >  drivers/iio/temperature/max31865.c                 |    4 +-
> >  drivers/iio/temperature/maxim_thermocouple.c       |    5 +-
> >  drivers/iio/temperature/mlx90614.c                 |   12 +-
> >  drivers/iio/temperature/mlx90632.c                 |    2 +-
> >  drivers/iio/temperature/tmp006.c                   |    6 +-
> >  drivers/iio/temperature/tmp007.c                   |    6 +-
> >  drivers/iio/temperature/tsys01.c                   |    1 +
> >  drivers/iio/temperature/tsys02d.c                  |    1 +
> >  drivers/iio/test/Kconfig                           |   10 +
> >  drivers/iio/test/Makefile                          |    1 +
> >  drivers/iio/test/iio-test-rescale.c                |  710 +++++++++
> >  drivers/iio/trigger/Kconfig                        |    2 +-
> >  drivers/iio/trigger/stm32-timer-trigger.c          |   23 +-
> >  drivers/staging/iio/accel/adis16203.c              |    1 +
> >  drivers/staging/iio/accel/adis16240.c              |    1 +
> >  drivers/staging/iio/adc/Kconfig                    |   11 -
> >  drivers/staging/iio/adc/Makefile                   |    1 -
> >  drivers/staging/iio/adc/ad7280a.c                  | 1044 -------------
> >  drivers/staging/iio/adc/ad7280a.h                  |   37 -
> >  include/linux/iio/adc/qcom-vadc-common.h           |   15 +-
> >  include/linux/iio/afe/rescale.h                    |   36 +
> >  include/linux/iio/iio.h                            |    2 +-
> >  include/linux/iio/imu/adis.h                       |   60 +-
> >  include/linux/math.h                               |   12 +
> >  include/uapi/linux/iio/types.h                     |    1 +
> >  tools/iio/iio_event_monitor.c                      |    1 +
> >  298 files changed, 12334 insertions(+), 2950 deletions(-)
> >  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-adc-ad7280a
> >  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2688
> >  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-frequency-admv1014
> >  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-sx9324
> >  create mode 100644 Documentation/devicetree/bindings/iio/accel/adi,adxl367.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad7280a.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-sense-rtd.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/afe/temperature-transducer.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/amplifiers/adi,ada4250.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/dac/adi,ltc2688.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/frequency/adi,admv1014.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/frequency/adi,admv4420.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/proximity/semtech,sx9324.yaml
> >  create mode 100644 Documentation/devicetree/bindings/iio/proximity/semtech,sx9360.yaml
> >  create mode 100644 drivers/iio/accel/adxl367.c
> >  create mode 100644 drivers/iio/accel/adxl367.h
> >  create mode 100644 drivers/iio/accel/adxl367_i2c.c
> >  create mode 100644 drivers/iio/accel/adxl367_spi.c
> >  create mode 100644 drivers/iio/adc/ad7280a.c
> >  create mode 100644 drivers/iio/amplifiers/ada4250.c
> >  create mode 100644 drivers/iio/dac/ltc2688.c
> >  create mode 100644 drivers/iio/frequency/admv1014.c
> >  create mode 100644 drivers/iio/frequency/admv4420.c
> >  create mode 100644 drivers/iio/proximity/sx9324.c
> >  create mode 100644 drivers/iio/proximity/sx9360.c
> >  create mode 100644 drivers/iio/proximity/sx_common.c
> >  create mode 100644 drivers/iio/proximity/sx_common.h
> >  create mode 100644 drivers/iio/test/iio-test-rescale.c
> >  delete mode 100644 drivers/staging/iio/adc/ad7280a.c
> >  delete mode 100644 drivers/staging/iio/adc/ad7280a.h
> >  create mode 100644 include/linux/iio/afe/rescale.h  
>
Greg Kroah-Hartman March 18, 2022, 11:42 a.m. UTC | #3
On Tue, Mar 15, 2022 at 12:10:25PM +0000, Jonathan Cameron wrote:
> On Wed, 2 Mar 2022 14:02:56 +0000
> Jonathan Cameron <jic23@kernel.org> wrote:
> 
> > On Wed, 2 Mar 2022 13:51:01 +0000
> > Jonathan Cameron <jic23@kernel.org> wrote:
> > 
> > > The following changes since commit e783362eb54cd99b2cac8b3a9aeac942e6f6ac07:
> > > 
> > >   Linux 5.17-rc1 (2022-01-23 10:12:53 +0200)
> > > 
> > > are available in the Git repository at:
> > > 
> > >   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git tags/iio-for-5.18a
> > > 
> > > for you to fetch changes up to 0bf126163c3e7e6d722622073046aed567a5551e:
> > > 
> > >   iio: adc: xilinx-ams: Fix single channel switching sequence (2022-03-02 13:39:08 +0000)
> > > 
> > > ----------------------------------------------------------------  
> > 
> > Hi Greg,
> 
> Hi Greg,
> 
> Just wondering if you have any feedback on this pull request or maybe something
> went wrong somewhere?  Absolutely fine if it's still in your todo pile!

Sorry for the delay.  Now pulled and pushed out, thanks,

greg k-h