Each drivers are setting trig->dev.parent to a common value - usually. Move that in boiler plate code. The first patch set the parent pointer, the next is an automatic change with spatch. The remaining ones are straightforward manual changes. Few drivers remain: drivers/iio/adc/at91-sama5d2_adc.c drivers/iio/adc/mxs-lradc-adc.c trigger parent set to iio device instead of its parent. drivers/iio/adc/dln2-adc.c trigger parent not set. drivers/iio/gyro/mpu3050-core.c trigger allocated for iio device but parent set to iio device parent. drivers/iio/imu/bmi160/bmi160_core.c drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c trigger allocated for iio device but parent set to mapped register device holder. Looks like iio device parent. drivers/iio/trigger/stm32-lptimer-trigger.c drivers/iio/trigger/stm32-timer-trigger.c trigger allocated for device, but parent set to device parent. Gwendal Grignou (8): iio: set default trig->dev.parent iio: fix devm_iio_trigger_alloc with parent.cocci iio: adis_trigger: Remove code to set trigger parent iio: gp2ap020a00f: Remove code to set trigger parent iio: lmp91000: Remove code to set trigger parent iio: chemical: atlas: Remove code to set trigger parent iio: as3935: Remove code to set trigger parent iio: xilinx-xadc: Remove code to set trigger parent drivers/iio/accel/adxl372.c | 2 -- drivers/iio/accel/bma180.c | 3 +- drivers/iio/accel/bmc150-accel-core.c | 1 - drivers/iio/accel/kxcjk-1013.c | 2 -- drivers/iio/accel/mma8452.c | 1 - drivers/iio/accel/mxc4005.c | 1 - drivers/iio/accel/stk8312.c | 1 - drivers/iio/accel/stk8ba50.c | 1 - drivers/iio/adc/ad7606.c | 1 - drivers/iio/adc/ad7766.c | 1 - drivers/iio/adc/ad7768-1.c | 1 - drivers/iio/adc/ad_sigma_delta.c | 6 ++-- drivers/iio/adc/at91_adc.c | 3 +- drivers/iio/adc/max1027.c | 1 - drivers/iio/adc/xilinx-xadc-core.c | 1 - drivers/iio/chemical/atlas-sensor.c | 1 - drivers/iio/chemical/ccs811.c | 1 - drivers/iio/chemical/scd30_core.c | 1 - .../common/hid-sensors/hid-sensor-trigger.c | 4 +-- .../common/st_sensors/st_sensors_trigger.c | 4 +-- drivers/iio/gyro/adxrs290.c | 1 - drivers/iio/gyro/bmg160_core.c | 2 -- drivers/iio/gyro/fxas21002c_core.c | 1 - drivers/iio/gyro/itg3200_buffer.c | 3 +- drivers/iio/health/afe4403.c | 1 - drivers/iio/health/afe4404.c | 1 - drivers/iio/humidity/hts221_buffer.c | 1 - drivers/iio/imu/adis_trigger.c | 10 ++---- drivers/iio/imu/kmx61.c | 1 - drivers/iio/industrialio-trigger.c | 36 +++++++++++-------- drivers/iio/light/gp2ap020a00f.c | 1 - drivers/iio/light/rpr0521.c | 1 - drivers/iio/light/si1145.c | 1 - drivers/iio/light/st_uvis25_core.c | 1 - drivers/iio/light/vcnl4000.c | 1 - drivers/iio/light/vcnl4035.c | 1 - drivers/iio/magnetometer/bmc150_magn.c | 1 - drivers/iio/magnetometer/rm3100-core.c | 1 - drivers/iio/potentiostat/lmp91000.c | 3 +- drivers/iio/pressure/zpa2326.c | 1 - drivers/iio/proximity/as3935.c | 1 - drivers/iio/proximity/sx9310.c | 1 - drivers/iio/proximity/sx9500.c | 1 - drivers/iio/trigger/iio-trig-hrtimer.c | 2 +- drivers/iio/trigger/iio-trig-interrupt.c | 2 +- drivers/iio/trigger/iio-trig-loop.c | 2 +- drivers/iio/trigger/iio-trig-sysfs.c | 3 +- include/linux/iio/iio.h | 2 +- include/linux/iio/trigger.h | 3 +- 49 files changed, 42 insertions(+), 81 deletions(-) -- 2.30.1.766.gb4fecdf3b7-goog