summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Gu <ustc.gu@gmail.com>2026-02-23 09:45:13 +0300
committerJonathan Cameron <Jonathan.Cameron@huawei.com>2026-03-01 14:20:11 +0300
commit20c2a46da4c65ac9c84f2876e2369a260b50e95b (patch)
treea294129ccbb014bdbe1b2834e3b515fdfeb836ef
parentd14116f6529fa085b1a1b1f224dc9604e4d2a29c (diff)
downloadlinux-20c2a46da4c65ac9c84f2876e2369a260b50e95b.tar.xz
iio: adc: ad4062: Replace IRQF_ONESHOT with IRQF_NO_THREAD
In ad4062_request_irq(), when request irq for "gp1", the code uses IRQF_ONESHOT flag, which is not appropriate for a primary handler that does not have a secondary threaded handler. And since commit aef30c8d569c ("genirq: Warn about using IRQF_ONESHOT without a threaded handler"), the IRQ core checks IRQF_ONESHOT flag in IRQ request and gives a warning if there is no threaded handler. Since there is no threaded handler, replace devm_request_threaded_irq with devm_request_irq, and replace IRQF_ONESHOT with IRQF_NO_THREAD. Also remove an extraneous semicolon at the end of ad4062_write_raw_dispatch(). Found by code review, compile pass. Fixes: d5284402d28f ("iio: adc: Add support for ad4062") Signed-off-by: Felix Gu <ustc.gu@gmail.com> Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-rw-r--r--drivers/iio/adc/ad4062.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/iio/adc/ad4062.c b/drivers/iio/adc/ad4062.c
index dd4ad32aa6f5..8b03736d55fc 100644
--- a/drivers/iio/adc/ad4062.c
+++ b/drivers/iio/adc/ad4062.c
@@ -719,10 +719,8 @@ static int ad4062_request_irq(struct iio_dev *indio_dev)
}
st->gpo_irq[1] = true;
- return devm_request_threaded_irq(dev, ret,
- ad4062_irq_handler_drdy,
- NULL, IRQF_ONESHOT, indio_dev->name,
- indio_dev);
+ return devm_request_irq(dev, ret, ad4062_irq_handler_drdy,
+ IRQF_NO_THREAD, indio_dev->name, indio_dev);
}
static const struct iio_trigger_ops ad4062_trigger_ops = {
@@ -955,7 +953,7 @@ static int ad4062_write_raw_dispatch(struct ad4062_state *st, int val, int val2,
default:
return -EINVAL;
}
-};
+}
static int ad4062_write_raw(struct iio_dev *indio_dev,
struct iio_chan_spec const *chan, int val,