From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> This series is dependant on cbe16f35bee68 ("genirq: Add IRQF_NO_AUTOEN for request_irq/nmi()") which is available in an immutable tag in the tip tree. https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/tag/?h=irq-no-autoen-2021-03-25 which I'll merge in to the IIO tree if we need it before it's available upstream. That patch introduces a new IRQF_NO_AUTOEN flag for irq requests to avoid the current dance where we either mark an irq as not to be autoenabled before we know if we can actually request it succesfully, or (as IIO drivers seem to have gone with) we disable the interrupt just after requesting it. In short the flag stops the interrupt being autoenabled in the first place. So this series applies this magic to IIO :) Note these are all just compile tested and some of them aren't entirely trivial because of other aspects of the irq flag handling. Jonathan Cameron (7): iio:adc:ad7766: Use new IRQF_NO_AUTOEN to reduce boilerplate iio:adc:exynos-adc: Use new IRQF_NO_AUTOEN flag rather than separate irq_disable() iio:adc:nau7802: Use IRQF_NO_AUTOEN instead of request then disable iio:adc:sun4i-gpadc: Use new IRQF_NO_AUTOEN flag instead of request then disable iio:chemical:scd30: Use IRQF_NO_AUTOEN to avoid irq request then disable iio:imu:adis: Use IRQF_NO_AUTOEN instead of irq request then disable iio:adc:ad_sigma_delta: Use IRQF_NO_AUTOEN rather than request and disable drivers/iio/adc/ad7766.c | 15 +++++++-------- drivers/iio/adc/ad_sigma_delta.c | 7 ++----- drivers/iio/adc/exynos_adc.c | 4 ++-- drivers/iio/adc/nau7802.c | 6 +++--- drivers/iio/adc/sun4i-gpadc-iio.c | 4 ++-- drivers/iio/chemical/scd30_core.c | 16 ++++++++-------- drivers/iio/imu/adis16460.c | 4 ++-- drivers/iio/imu/adis16475.c | 5 +++-- drivers/iio/imu/adis_trigger.c | 11 ++++++----- 9 files changed, 35 insertions(+), 37 deletions(-) -- 2.31.1