Use '__adis_initial_startup()' instead of 'adis_initial_startup()' to avoid deadlock. When using 'adis_initial_startup()' 'mutex_lock()' is called twice, without releasing it (once inside 'adis_initial_startup()' and once inside 'adis_enable_irq()'). Fixes: b600bd7eb3335 ("iio: adis: do not disabe IRQs in 'adis_init()'") Signed-off-by: Ramona Bolboaca <ramona.bolboaca@xxxxxxxxxx> --- changes in v2: - changed commit in 'Fixes' tag to the correct commit - added commas and brackets for functions in commit message drivers/iio/imu/adis16400.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iio/imu/adis16400.c b/drivers/iio/imu/adis16400.c index 17bb0c40a149..c02fc35dceb4 100644 --- a/drivers/iio/imu/adis16400.c +++ b/drivers/iio/imu/adis16400.c @@ -445,7 +445,7 @@ static int adis16400_initial_setup(struct iio_dev *indio_dev) st->adis.spi->mode = SPI_MODE_3; spi_setup(st->adis.spi); - ret = adis_initial_startup(&st->adis); + ret = __adis_initial_startup(&st->adis); if (ret) return ret; -- 2.25.1