Message ID | 20210426174911.397061-1-jic23@kernel.org (mailing list archive) |
---|---|
Headers | show |
Series | iio: Move more things from iio_dev to iio_dev_opaque | expand |
On Mon, Apr 26, 2021 at 8:50 PM Jonathan Cameron <jic23@kernel.org> wrote: > > From: Jonathan Cameron <Jonathan.Cameron@huawei.com> > > Intent here is to clear out the low hanging fruit so we can focus on the > more interesting elements. > > Hopefully this set are all uncontroversial. Lightly tested only but > all fairly mechanical so hopefully I didn't mess up. > Series looks good. Thanks for moving this forward :) Alex > As for the others my current thinking is as follows > > mlock: Still some instances to clear out of this being used to protect things > it should not be used for. Long run we definitely want to move this one. > > scan_timestamp: Can easily use a look up function in drivers that access this > directly, but that feels like an unwanted level of indirection in > iio_push_to_buffers_with_timestamp(). Perhaps worth doing anyway. > scan_bytes is also used in this function. > > active_scan_mask and masklength: Both used in valid ways inside drivers. > Could be wrapped up in access functions, but it does seem a little > convoluted. > > trig: This is used correctly in lots of drivers, so should stay in > struct iio_dev. > > Jonathan Cameron (9): > iio: core: move @id from struct iio_dev to struct iio_dev_opaque > iio: avoid shadowing of variable name in to_iio_dev_opaque() > iio: core: move @driver_module from struct iio_dev to struct > iio_dev_opaque > iio: core: move @trig_readonly from struct iio_dev to struct > iio_dev_opaque > iio: core: move @scan_index_timestamp to struct iio_dev_opaque > iio: core: move @info_exist_lock to struct iio_dev_opaque > iio: core: move @chrdev from struct iio_dev to struct iio_dev_opaque > iio: core: move @flags from struct iio_dev to struct iio_dev_opaque > iio: core: move @clock_id from struct iio_dev to struct iio_dev_opaque > > drivers/iio/accel/adxl372.c | 4 +- > drivers/iio/accel/bma180.c | 2 +- > drivers/iio/accel/bmc150-accel-core.c | 4 +- > drivers/iio/accel/kxcjk-1013.c | 4 +- > drivers/iio/accel/mma8452.c | 2 +- > drivers/iio/accel/mxc4005.c | 2 +- > drivers/iio/accel/stk8312.c | 2 +- > drivers/iio/accel/stk8ba50.c | 2 +- > drivers/iio/adc/ad7606.c | 3 +- > drivers/iio/adc/ad7766.c | 3 +- > drivers/iio/adc/ad7768-1.c | 3 +- > drivers/iio/adc/ad_sigma_delta.c | 2 +- > drivers/iio/adc/at91_adc.c | 4 +- > drivers/iio/adc/dln2-adc.c | 3 +- > drivers/iio/adc/ina2xx-adc.c | 3 +- > drivers/iio/adc/ti-ads131e08.c | 2 +- > drivers/iio/adc/xilinx-xadc-core.c | 2 +- > .../buffer/industrialio-triggered-buffer.c | 2 +- > drivers/iio/chemical/atlas-sensor.c | 2 +- > drivers/iio/chemical/ccs811.c | 2 +- > drivers/iio/chemical/scd30_core.c | 3 +- > .../common/hid-sensors/hid-sensor-trigger.c | 2 +- > drivers/iio/gyro/adxrs290.c | 2 +- > drivers/iio/gyro/bmg160_core.c | 4 +- > drivers/iio/gyro/fxas21002c_core.c | 2 +- > drivers/iio/gyro/itg3200_buffer.c | 2 +- > drivers/iio/gyro/mpu3050-core.c | 2 +- > drivers/iio/health/afe4403.c | 2 +- > drivers/iio/health/afe4404.c | 2 +- > drivers/iio/imu/adis_trigger.c | 3 +- > drivers/iio/imu/bmi160/bmi160_core.c | 3 +- > drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c | 2 +- > drivers/iio/imu/kmx61.c | 2 +- > drivers/iio/industrialio-buffer.c | 12 ++- > drivers/iio/industrialio-core.c | 76 +++++++++++++------ > drivers/iio/industrialio-trigger.c | 19 +++-- > drivers/iio/industrialio-triggered-event.c | 2 +- > drivers/iio/inkern.c | 46 ++++++----- > drivers/iio/light/acpi-als.c | 3 +- > drivers/iio/light/rpr0521.c | 2 +- > drivers/iio/light/si1145.c | 2 +- > drivers/iio/light/vcnl4000.c | 3 +- > drivers/iio/light/vcnl4035.c | 2 +- > drivers/iio/magnetometer/bmc150_magn.c | 2 +- > drivers/iio/magnetometer/rm3100-core.c | 2 +- > drivers/iio/potentiostat/lmp91000.c | 3 +- > drivers/iio/pressure/zpa2326.c | 3 +- > drivers/iio/proximity/as3935.c | 3 +- > drivers/iio/proximity/sx9310.c | 2 +- > drivers/iio/proximity/sx9500.c | 2 +- > include/linux/iio/iio-opaque.h | 22 +++++- > include/linux/iio/iio.h | 29 +------ > 52 files changed, 188 insertions(+), 131 deletions(-) > > -- > 2.31.1 >
On Tue, 27 Apr 2021 11:08:52 +0300 Alexandru Ardelean <ardeleanalex@gmail.com> wrote: > On Mon, Apr 26, 2021 at 8:50 PM Jonathan Cameron <jic23@kernel.org> wrote: > > > > From: Jonathan Cameron <Jonathan.Cameron@huawei.com> > > > > Intent here is to clear out the low hanging fruit so we can focus on the > > more interesting elements. > > > > Hopefully this set are all uncontroversial. Lightly tested only but > > all fairly mechanical so hopefully I didn't mess up. > > > > Series looks good. > Thanks for moving this forward :) no problem. One thing. You gave tags for all but it seems patch 3. Fine if I also put your tag on that one? > > Alex > > > As for the others my current thinking is as follows > > > > mlock: Still some instances to clear out of this being used to protect things > > it should not be used for. Long run we definitely want to move this one. > > > > scan_timestamp: Can easily use a look up function in drivers that access this > > directly, but that feels like an unwanted level of indirection in > > iio_push_to_buffers_with_timestamp(). Perhaps worth doing anyway. > > scan_bytes is also used in this function. > > > > active_scan_mask and masklength: Both used in valid ways inside drivers. > > Could be wrapped up in access functions, but it does seem a little > > convoluted. > > > > trig: This is used correctly in lots of drivers, so should stay in > > struct iio_dev. > > > > Jonathan Cameron (9): > > iio: core: move @id from struct iio_dev to struct iio_dev_opaque > > iio: avoid shadowing of variable name in to_iio_dev_opaque() > > iio: core: move @driver_module from struct iio_dev to struct > > iio_dev_opaque > > iio: core: move @trig_readonly from struct iio_dev to struct > > iio_dev_opaque > > iio: core: move @scan_index_timestamp to struct iio_dev_opaque > > iio: core: move @info_exist_lock to struct iio_dev_opaque > > iio: core: move @chrdev from struct iio_dev to struct iio_dev_opaque > > iio: core: move @flags from struct iio_dev to struct iio_dev_opaque > > iio: core: move @clock_id from struct iio_dev to struct iio_dev_opaque > > > > drivers/iio/accel/adxl372.c | 4 +- > > drivers/iio/accel/bma180.c | 2 +- > > drivers/iio/accel/bmc150-accel-core.c | 4 +- > > drivers/iio/accel/kxcjk-1013.c | 4 +- > > drivers/iio/accel/mma8452.c | 2 +- > > drivers/iio/accel/mxc4005.c | 2 +- > > drivers/iio/accel/stk8312.c | 2 +- > > drivers/iio/accel/stk8ba50.c | 2 +- > > drivers/iio/adc/ad7606.c | 3 +- > > drivers/iio/adc/ad7766.c | 3 +- > > drivers/iio/adc/ad7768-1.c | 3 +- > > drivers/iio/adc/ad_sigma_delta.c | 2 +- > > drivers/iio/adc/at91_adc.c | 4 +- > > drivers/iio/adc/dln2-adc.c | 3 +- > > drivers/iio/adc/ina2xx-adc.c | 3 +- > > drivers/iio/adc/ti-ads131e08.c | 2 +- > > drivers/iio/adc/xilinx-xadc-core.c | 2 +- > > .../buffer/industrialio-triggered-buffer.c | 2 +- > > drivers/iio/chemical/atlas-sensor.c | 2 +- > > drivers/iio/chemical/ccs811.c | 2 +- > > drivers/iio/chemical/scd30_core.c | 3 +- > > .../common/hid-sensors/hid-sensor-trigger.c | 2 +- > > drivers/iio/gyro/adxrs290.c | 2 +- > > drivers/iio/gyro/bmg160_core.c | 4 +- > > drivers/iio/gyro/fxas21002c_core.c | 2 +- > > drivers/iio/gyro/itg3200_buffer.c | 2 +- > > drivers/iio/gyro/mpu3050-core.c | 2 +- > > drivers/iio/health/afe4403.c | 2 +- > > drivers/iio/health/afe4404.c | 2 +- > > drivers/iio/imu/adis_trigger.c | 3 +- > > drivers/iio/imu/bmi160/bmi160_core.c | 3 +- > > drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c | 2 +- > > drivers/iio/imu/kmx61.c | 2 +- > > drivers/iio/industrialio-buffer.c | 12 ++- > > drivers/iio/industrialio-core.c | 76 +++++++++++++------ > > drivers/iio/industrialio-trigger.c | 19 +++-- > > drivers/iio/industrialio-triggered-event.c | 2 +- > > drivers/iio/inkern.c | 46 ++++++----- > > drivers/iio/light/acpi-als.c | 3 +- > > drivers/iio/light/rpr0521.c | 2 +- > > drivers/iio/light/si1145.c | 2 +- > > drivers/iio/light/vcnl4000.c | 3 +- > > drivers/iio/light/vcnl4035.c | 2 +- > > drivers/iio/magnetometer/bmc150_magn.c | 2 +- > > drivers/iio/magnetometer/rm3100-core.c | 2 +- > > drivers/iio/potentiostat/lmp91000.c | 3 +- > > drivers/iio/pressure/zpa2326.c | 3 +- > > drivers/iio/proximity/as3935.c | 3 +- > > drivers/iio/proximity/sx9310.c | 2 +- > > drivers/iio/proximity/sx9500.c | 2 +- > > include/linux/iio/iio-opaque.h | 22 +++++- > > include/linux/iio/iio.h | 29 +------ > > 52 files changed, 188 insertions(+), 131 deletions(-) > > > > -- > > 2.31.1 > >
On Tue, Apr 27, 2021 at 8:11 PM Jonathan Cameron <jic23@kernel.org> wrote: > > On Tue, 27 Apr 2021 11:08:52 +0300 > Alexandru Ardelean <ardeleanalex@gmail.com> wrote: > > > On Mon, Apr 26, 2021 at 8:50 PM Jonathan Cameron <jic23@kernel.org> wrote: > > > > > > From: Jonathan Cameron <Jonathan.Cameron@huawei.com> > > > > > > Intent here is to clear out the low hanging fruit so we can focus on the > > > more interesting elements. > > > > > > Hopefully this set are all uncontroversial. Lightly tested only but > > > all fairly mechanical so hopefully I didn't mess up. > > > > > > > Series looks good. > > Thanks for moving this forward :) > no problem. > > One thing. You gave tags for all but it seems patch 3. > Fine if I also put your tag on that one? Yes. I may have missed it. I usually have reviews in the morning before starting some other work and drinking my coffee. > > > > > Alex > > > > > As for the others my current thinking is as follows > > > > > > mlock: Still some instances to clear out of this being used to protect things > > > it should not be used for. Long run we definitely want to move this one. > > > > > > scan_timestamp: Can easily use a look up function in drivers that access this > > > directly, but that feels like an unwanted level of indirection in > > > iio_push_to_buffers_with_timestamp(). Perhaps worth doing anyway. > > > scan_bytes is also used in this function. > > > > > > active_scan_mask and masklength: Both used in valid ways inside drivers. > > > Could be wrapped up in access functions, but it does seem a little > > > convoluted. > > > > > > trig: This is used correctly in lots of drivers, so should stay in > > > struct iio_dev. > > > > > > Jonathan Cameron (9): > > > iio: core: move @id from struct iio_dev to struct iio_dev_opaque > > > iio: avoid shadowing of variable name in to_iio_dev_opaque() > > > iio: core: move @driver_module from struct iio_dev to struct > > > iio_dev_opaque > > > iio: core: move @trig_readonly from struct iio_dev to struct > > > iio_dev_opaque > > > iio: core: move @scan_index_timestamp to struct iio_dev_opaque > > > iio: core: move @info_exist_lock to struct iio_dev_opaque > > > iio: core: move @chrdev from struct iio_dev to struct iio_dev_opaque > > > iio: core: move @flags from struct iio_dev to struct iio_dev_opaque > > > iio: core: move @clock_id from struct iio_dev to struct iio_dev_opaque > > > > > > drivers/iio/accel/adxl372.c | 4 +- > > > drivers/iio/accel/bma180.c | 2 +- > > > drivers/iio/accel/bmc150-accel-core.c | 4 +- > > > drivers/iio/accel/kxcjk-1013.c | 4 +- > > > drivers/iio/accel/mma8452.c | 2 +- > > > drivers/iio/accel/mxc4005.c | 2 +- > > > drivers/iio/accel/stk8312.c | 2 +- > > > drivers/iio/accel/stk8ba50.c | 2 +- > > > drivers/iio/adc/ad7606.c | 3 +- > > > drivers/iio/adc/ad7766.c | 3 +- > > > drivers/iio/adc/ad7768-1.c | 3 +- > > > drivers/iio/adc/ad_sigma_delta.c | 2 +- > > > drivers/iio/adc/at91_adc.c | 4 +- > > > drivers/iio/adc/dln2-adc.c | 3 +- > > > drivers/iio/adc/ina2xx-adc.c | 3 +- > > > drivers/iio/adc/ti-ads131e08.c | 2 +- > > > drivers/iio/adc/xilinx-xadc-core.c | 2 +- > > > .../buffer/industrialio-triggered-buffer.c | 2 +- > > > drivers/iio/chemical/atlas-sensor.c | 2 +- > > > drivers/iio/chemical/ccs811.c | 2 +- > > > drivers/iio/chemical/scd30_core.c | 3 +- > > > .../common/hid-sensors/hid-sensor-trigger.c | 2 +- > > > drivers/iio/gyro/adxrs290.c | 2 +- > > > drivers/iio/gyro/bmg160_core.c | 4 +- > > > drivers/iio/gyro/fxas21002c_core.c | 2 +- > > > drivers/iio/gyro/itg3200_buffer.c | 2 +- > > > drivers/iio/gyro/mpu3050-core.c | 2 +- > > > drivers/iio/health/afe4403.c | 2 +- > > > drivers/iio/health/afe4404.c | 2 +- > > > drivers/iio/imu/adis_trigger.c | 3 +- > > > drivers/iio/imu/bmi160/bmi160_core.c | 3 +- > > > drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c | 2 +- > > > drivers/iio/imu/kmx61.c | 2 +- > > > drivers/iio/industrialio-buffer.c | 12 ++- > > > drivers/iio/industrialio-core.c | 76 +++++++++++++------ > > > drivers/iio/industrialio-trigger.c | 19 +++-- > > > drivers/iio/industrialio-triggered-event.c | 2 +- > > > drivers/iio/inkern.c | 46 ++++++----- > > > drivers/iio/light/acpi-als.c | 3 +- > > > drivers/iio/light/rpr0521.c | 2 +- > > > drivers/iio/light/si1145.c | 2 +- > > > drivers/iio/light/vcnl4000.c | 3 +- > > > drivers/iio/light/vcnl4035.c | 2 +- > > > drivers/iio/magnetometer/bmc150_magn.c | 2 +- > > > drivers/iio/magnetometer/rm3100-core.c | 2 +- > > > drivers/iio/potentiostat/lmp91000.c | 3 +- > > > drivers/iio/pressure/zpa2326.c | 3 +- > > > drivers/iio/proximity/as3935.c | 3 +- > > > drivers/iio/proximity/sx9310.c | 2 +- > > > drivers/iio/proximity/sx9500.c | 2 +- > > > include/linux/iio/iio-opaque.h | 22 +++++- > > > include/linux/iio/iio.h | 29 +------ > > > 52 files changed, 188 insertions(+), 131 deletions(-) > > > > > > -- > > > 2.31.1 > > > >
On Wed, 28 Apr 2021 09:55:19 +0300 Alexandru Ardelean <ardeleanalex@gmail.com> wrote: > On Tue, Apr 27, 2021 at 8:11 PM Jonathan Cameron <jic23@kernel.org> wrote: > > > > On Tue, 27 Apr 2021 11:08:52 +0300 > > Alexandru Ardelean <ardeleanalex@gmail.com> wrote: > > > > > On Mon, Apr 26, 2021 at 8:50 PM Jonathan Cameron <jic23@kernel.org> wrote: > > > > > > > > From: Jonathan Cameron <Jonathan.Cameron@huawei.com> > > > > > > > > Intent here is to clear out the low hanging fruit so we can focus on the > > > > more interesting elements. > > > > > > > > Hopefully this set are all uncontroversial. Lightly tested only but > > > > all fairly mechanical so hopefully I didn't mess up. > > > > > > > > > > Series looks good. > > > Thanks for moving this forward :) > > no problem. > > > > One thing. You gave tags for all but it seems patch 3. > > Fine if I also put your tag on that one? > > Yes. > I may have missed it. > I usually have reviews in the morning before starting some other work > and drinking my coffee. Thanks, Applied to the togreg branch of iio.git and pushed out as testing to see if I missed any more cases... Now we just have the 'small' issue of figuring out what to do about the remaining elements! Thanks, Jonathan > > > > > > > > > Alex > > > > > > > As for the others my current thinking is as follows > > > > > > > > mlock: Still some instances to clear out of this being used to protect things > > > > it should not be used for. Long run we definitely want to move this one. > > > > > > > > scan_timestamp: Can easily use a look up function in drivers that access this > > > > directly, but that feels like an unwanted level of indirection in > > > > iio_push_to_buffers_with_timestamp(). Perhaps worth doing anyway. > > > > scan_bytes is also used in this function. > > > > > > > > active_scan_mask and masklength: Both used in valid ways inside drivers. > > > > Could be wrapped up in access functions, but it does seem a little > > > > convoluted. > > > > > > > > trig: This is used correctly in lots of drivers, so should stay in > > > > struct iio_dev. > > > > > > > > Jonathan Cameron (9): > > > > iio: core: move @id from struct iio_dev to struct iio_dev_opaque > > > > iio: avoid shadowing of variable name in to_iio_dev_opaque() > > > > iio: core: move @driver_module from struct iio_dev to struct > > > > iio_dev_opaque > > > > iio: core: move @trig_readonly from struct iio_dev to struct > > > > iio_dev_opaque > > > > iio: core: move @scan_index_timestamp to struct iio_dev_opaque > > > > iio: core: move @info_exist_lock to struct iio_dev_opaque > > > > iio: core: move @chrdev from struct iio_dev to struct iio_dev_opaque > > > > iio: core: move @flags from struct iio_dev to struct iio_dev_opaque > > > > iio: core: move @clock_id from struct iio_dev to struct iio_dev_opaque > > > > > > > > drivers/iio/accel/adxl372.c | 4 +- > > > > drivers/iio/accel/bma180.c | 2 +- > > > > drivers/iio/accel/bmc150-accel-core.c | 4 +- > > > > drivers/iio/accel/kxcjk-1013.c | 4 +- > > > > drivers/iio/accel/mma8452.c | 2 +- > > > > drivers/iio/accel/mxc4005.c | 2 +- > > > > drivers/iio/accel/stk8312.c | 2 +- > > > > drivers/iio/accel/stk8ba50.c | 2 +- > > > > drivers/iio/adc/ad7606.c | 3 +- > > > > drivers/iio/adc/ad7766.c | 3 +- > > > > drivers/iio/adc/ad7768-1.c | 3 +- > > > > drivers/iio/adc/ad_sigma_delta.c | 2 +- > > > > drivers/iio/adc/at91_adc.c | 4 +- > > > > drivers/iio/adc/dln2-adc.c | 3 +- > > > > drivers/iio/adc/ina2xx-adc.c | 3 +- > > > > drivers/iio/adc/ti-ads131e08.c | 2 +- > > > > drivers/iio/adc/xilinx-xadc-core.c | 2 +- > > > > .../buffer/industrialio-triggered-buffer.c | 2 +- > > > > drivers/iio/chemical/atlas-sensor.c | 2 +- > > > > drivers/iio/chemical/ccs811.c | 2 +- > > > > drivers/iio/chemical/scd30_core.c | 3 +- > > > > .../common/hid-sensors/hid-sensor-trigger.c | 2 +- > > > > drivers/iio/gyro/adxrs290.c | 2 +- > > > > drivers/iio/gyro/bmg160_core.c | 4 +- > > > > drivers/iio/gyro/fxas21002c_core.c | 2 +- > > > > drivers/iio/gyro/itg3200_buffer.c | 2 +- > > > > drivers/iio/gyro/mpu3050-core.c | 2 +- > > > > drivers/iio/health/afe4403.c | 2 +- > > > > drivers/iio/health/afe4404.c | 2 +- > > > > drivers/iio/imu/adis_trigger.c | 3 +- > > > > drivers/iio/imu/bmi160/bmi160_core.c | 3 +- > > > > drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c | 2 +- > > > > drivers/iio/imu/kmx61.c | 2 +- > > > > drivers/iio/industrialio-buffer.c | 12 ++- > > > > drivers/iio/industrialio-core.c | 76 +++++++++++++------ > > > > drivers/iio/industrialio-trigger.c | 19 +++-- > > > > drivers/iio/industrialio-triggered-event.c | 2 +- > > > > drivers/iio/inkern.c | 46 ++++++----- > > > > drivers/iio/light/acpi-als.c | 3 +- > > > > drivers/iio/light/rpr0521.c | 2 +- > > > > drivers/iio/light/si1145.c | 2 +- > > > > drivers/iio/light/vcnl4000.c | 3 +- > > > > drivers/iio/light/vcnl4035.c | 2 +- > > > > drivers/iio/magnetometer/bmc150_magn.c | 2 +- > > > > drivers/iio/magnetometer/rm3100-core.c | 2 +- > > > > drivers/iio/potentiostat/lmp91000.c | 3 +- > > > > drivers/iio/pressure/zpa2326.c | 3 +- > > > > drivers/iio/proximity/as3935.c | 3 +- > > > > drivers/iio/proximity/sx9310.c | 2 +- > > > > drivers/iio/proximity/sx9500.c | 2 +- > > > > include/linux/iio/iio-opaque.h | 22 +++++- > > > > include/linux/iio/iio.h | 29 +------ > > > > 52 files changed, 188 insertions(+), 131 deletions(-) > > > > > > > > -- > > > > 2.31.1 > > > > > >
From: Jonathan Cameron <Jonathan.Cameron@huawei.com> Intent here is to clear out the low hanging fruit so we can focus on the more interesting elements. Hopefully this set are all uncontroversial. Lightly tested only but all fairly mechanical so hopefully I didn't mess up. As for the others my current thinking is as follows mlock: Still some instances to clear out of this being used to protect things it should not be used for. Long run we definitely want to move this one. scan_timestamp: Can easily use a look up function in drivers that access this directly, but that feels like an unwanted level of indirection in iio_push_to_buffers_with_timestamp(). Perhaps worth doing anyway. scan_bytes is also used in this function. active_scan_mask and masklength: Both used in valid ways inside drivers. Could be wrapped up in access functions, but it does seem a little convoluted. trig: This is used correctly in lots of drivers, so should stay in struct iio_dev. Jonathan Cameron (9): iio: core: move @id from struct iio_dev to struct iio_dev_opaque iio: avoid shadowing of variable name in to_iio_dev_opaque() iio: core: move @driver_module from struct iio_dev to struct iio_dev_opaque iio: core: move @trig_readonly from struct iio_dev to struct iio_dev_opaque iio: core: move @scan_index_timestamp to struct iio_dev_opaque iio: core: move @info_exist_lock to struct iio_dev_opaque iio: core: move @chrdev from struct iio_dev to struct iio_dev_opaque iio: core: move @flags from struct iio_dev to struct iio_dev_opaque iio: core: move @clock_id from struct iio_dev to struct iio_dev_opaque drivers/iio/accel/adxl372.c | 4 +- drivers/iio/accel/bma180.c | 2 +- drivers/iio/accel/bmc150-accel-core.c | 4 +- drivers/iio/accel/kxcjk-1013.c | 4 +- drivers/iio/accel/mma8452.c | 2 +- drivers/iio/accel/mxc4005.c | 2 +- drivers/iio/accel/stk8312.c | 2 +- drivers/iio/accel/stk8ba50.c | 2 +- drivers/iio/adc/ad7606.c | 3 +- drivers/iio/adc/ad7766.c | 3 +- drivers/iio/adc/ad7768-1.c | 3 +- drivers/iio/adc/ad_sigma_delta.c | 2 +- drivers/iio/adc/at91_adc.c | 4 +- drivers/iio/adc/dln2-adc.c | 3 +- drivers/iio/adc/ina2xx-adc.c | 3 +- drivers/iio/adc/ti-ads131e08.c | 2 +- drivers/iio/adc/xilinx-xadc-core.c | 2 +- .../buffer/industrialio-triggered-buffer.c | 2 +- drivers/iio/chemical/atlas-sensor.c | 2 +- drivers/iio/chemical/ccs811.c | 2 +- drivers/iio/chemical/scd30_core.c | 3 +- .../common/hid-sensors/hid-sensor-trigger.c | 2 +- drivers/iio/gyro/adxrs290.c | 2 +- drivers/iio/gyro/bmg160_core.c | 4 +- drivers/iio/gyro/fxas21002c_core.c | 2 +- drivers/iio/gyro/itg3200_buffer.c | 2 +- drivers/iio/gyro/mpu3050-core.c | 2 +- drivers/iio/health/afe4403.c | 2 +- drivers/iio/health/afe4404.c | 2 +- drivers/iio/imu/adis_trigger.c | 3 +- drivers/iio/imu/bmi160/bmi160_core.c | 3 +- drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c | 2 +- drivers/iio/imu/kmx61.c | 2 +- drivers/iio/industrialio-buffer.c | 12 ++- drivers/iio/industrialio-core.c | 76 +++++++++++++------ drivers/iio/industrialio-trigger.c | 19 +++-- drivers/iio/industrialio-triggered-event.c | 2 +- drivers/iio/inkern.c | 46 ++++++----- drivers/iio/light/acpi-als.c | 3 +- drivers/iio/light/rpr0521.c | 2 +- drivers/iio/light/si1145.c | 2 +- drivers/iio/light/vcnl4000.c | 3 +- drivers/iio/light/vcnl4035.c | 2 +- drivers/iio/magnetometer/bmc150_magn.c | 2 +- drivers/iio/magnetometer/rm3100-core.c | 2 +- drivers/iio/potentiostat/lmp91000.c | 3 +- drivers/iio/pressure/zpa2326.c | 3 +- drivers/iio/proximity/as3935.c | 3 +- drivers/iio/proximity/sx9310.c | 2 +- drivers/iio/proximity/sx9500.c | 2 +- include/linux/iio/iio-opaque.h | 22 +++++- include/linux/iio/iio.h | 29 +------ 52 files changed, 188 insertions(+), 131 deletions(-)