Remove 'adis_initial_startup()' usage due to the fact that it leads to a deadlock. The same mutex is acquired twice, without releasing it, once inside 'adis_initial_startup()' and once inside 'adis_enable_irq()'. Instead of 'adis_initial_startup()', use '__adis_initial_startup()'. Ramona Bolboaca (8): iio: accel: adis16201: Fix deadlock in probe iio: accel: adis16209: Fix deadlock in probe iio: gyro: adis16136: Fix deadlock in probe iio: gyro: adis16260: Fix deadlock in probe iio: imu: adis16400: Fix deadlock in probe staging: iio: accel: adis16203: Fix deadlock in probe staging: iio: accel: adis16240: Fix deadlock in probe iio: imu: adis: Remove adis_initial_startup function drivers/iio/accel/adis16201.c | 2 +- drivers/iio/accel/adis16209.c | 2 +- drivers/iio/gyro/adis16136.c | 2 +- drivers/iio/gyro/adis16260.c | 2 +- drivers/iio/imu/adis16400.c | 2 +- drivers/staging/iio/accel/adis16203.c | 2 +- drivers/staging/iio/accel/adis16240.c | 2 +- include/linux/iio/imu/adis.h | 12 ------------ 8 files changed, 7 insertions(+), 19 deletions(-) -- 2.25.1