Jonathan writes:
First round of IIO new device support, features and cleanups for the 4.14 cycle.
4 completely new drivers in this set and plenty of other stuff.
One ABI change due to a silly mistake a long time back. Hopefully no
one will notice. It effects the numerical order of consumer device
channels which was the reverse of the obvious. It's going the slow
way to allow us some margin to spot if we have broken userspace or
not (seems unlikely)
New Device Support
* ccs811
- new driver for the Volatile Organic Compounds (VOC) sensor.
* dln2 adc
- new driver for the ADC on this flexible usb board.
* EP93xx
- new driver for this Cirrus logic SoC ADC.
* ltc2471
- new ADC driver support the ltc2471 and ltc2473
* st_accel
- add trivial table entries to support H3LIS331DL, LIS331DL, LIS3LV02DL.
* st_gyro
- add L3GD20H support (again) having fixed the various things that were
broken in the first try. Includes devicetree binding.
* stm32 dac
- add support for the DACs in the STM32F4 series
Features
* Documentation
- add missing power attribute documentation to the ABI docs.
* at91-sama5d2
- add hardware trigger and buffered capture support with bindings.
- suspend and resume functionality.
* bmc150
- support for the BOSC0200 ACPI device id seen on some tablets.
* hdc100x
- devicetree bindings
- document supported devices
- match table and device ids.
* hts221
- support active low interrupts (with bindings)
- open drain mode with bindings.
* htu21
- OF match table and bindings.
* lsm6dsx
- open drain mode with bindings
* ltc2497
- add support for board file based consumer mapping.
* ms5367
- OF match table and bindings.
* mt7622
- binding document and OF match table.
- suspend and resume support.
* rpr0521
- triggered buffer support.
* tsys01
- OF match table and bindings.
Cleanups and minor fixes
* core
- fix ordering of IIO channels to entry numbers when using
iio_map_array_register rather than reversing them.
- use the new %pOF format specifier rather than full name for the
device tree nodes.
*
ad7280a
- fix potential issue with macro argument reuse.
* ad7766
- drop a pointless NULL value check as it's done in the gpiod code.
* adis16400
- unsigned -> unsigned int.
* at91 adc
- make some init data static to reduce code size.
* at91-sama5d2 ADC
- make some init data static to reduce code size.
* da311
- make some init data static to reduce code size.
* hid-sensor-rotation
- drop an unnecessary static.
* hts221
- refactor the write_with_mask code.
- move the BDU configuration to probe time as there is no reason for it
to change.
- avoid overwriting reserved data during power-down. This is a fix, but
the infrastructure need was too invasive to send it to mainline except
in a merge window. It's not a regression as it was always wrong.
- avoid reconfigure the sampling frequency multiple times by just
doing it in the write_raw function directly.
- refactor the power_on/off calls into a set_enable.
- move the dry-enable logic into trig_set_state as that is the only
place it was used.
* ina219
- fix polling of ina226 conversion ready flag.
* imx7d
- add vendor name in kconfig for consistency with similar parts.
* mcp3422
- Change initial channel to 0 as it feels more logical.
- Check for some errors in probe.
* meson-saradc
- add a check of of_match_device return value.
* mpu3050
- allow open drain for any interrupt type.
* rockchip adc
- add check on of_match_device return value.
* sca3000
- drop a trailing whitespace.
* stm32 adc
- make array stm32h7_adc_ckmodes_spec static.
* stm32 dac
- fix an error message.
* stm32 timers
- fix clock name in docs to match reality after changes.
* st_accel
- explicit OF table (spi).
- add missing entries to OF table (i2c).
- rename of_device_id table to drop the part name.
- adding missing lis3l02dq entry to bindings.
- rename H3LIS331DL_DRIVER_NAME to line up with similar entries in driver.
* st_gyro
- explicit OF table (spi).
* st_magn
- explicit OF table (spi).
- enable multiread for lis3mdl.
* st_pressure
- explicit OF table (spi).
* st_sensors common.
- move st_sensors_of_i2c_probe and rename to make it available for spi
drivers.
* tsc3472
- don't write an extra byte when writing the ATIME register.
- add a link to the datasheet.
* tsl2x7x - continued staging cleanups
- add of_match_table.
- drop redundant power_state sysfs attribute.
- drop wrapper tsl2x7x_i2c_read.
- clean up i2c calls made in tsl2x7x_als_calibrate.
- refactor the read and write _event_value callbacks to handle additional
elements.
- use usleep_range instead of mdelay.
- check return value from tsl2x7x_invoke_change.
* zpa2326
- add some newline to the end of logging macros.