mirror of https://gitee.com/openkylin/linux.git
iio:adc:nau7802: Use IRQF_NO_AUTOEN instead of request then disable
Whilst a race during interrupt enabling is probably not a problem, it is better to not enable the interrupt at all. The new IRQF_NO_AUTOEN flag allows us to do that. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com> Reviewed-by: Barry Song <song.bao.hua@hisilicon.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> Link: https://lore.kernel.org/r/20210402184544.488862-4-jic23@kernel.org
This commit is contained in:
parent
42004ceb34
commit
aef3ef1659
|
@ -498,7 +498,8 @@ static int nau7802_probe(struct i2c_client *client,
|
||||||
ret = request_threaded_irq(client->irq,
|
ret = request_threaded_irq(client->irq,
|
||||||
NULL,
|
NULL,
|
||||||
nau7802_eoc_trigger,
|
nau7802_eoc_trigger,
|
||||||
IRQF_TRIGGER_HIGH | IRQF_ONESHOT,
|
IRQF_TRIGGER_HIGH | IRQF_ONESHOT |
|
||||||
|
IRQF_NO_AUTOEN,
|
||||||
client->dev.driver->name,
|
client->dev.driver->name,
|
||||||
indio_dev);
|
indio_dev);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
|
@ -513,8 +514,7 @@ static int nau7802_probe(struct i2c_client *client,
|
||||||
dev_info(&client->dev,
|
dev_info(&client->dev,
|
||||||
"Failed to allocate IRQ, using polling mode\n");
|
"Failed to allocate IRQ, using polling mode\n");
|
||||||
client->irq = 0;
|
client->irq = 0;
|
||||||
} else
|
}
|
||||||
disable_irq(client->irq);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!client->irq) {
|
if (!client->irq) {
|
||||||
|
|
Loading…
Reference in New Issue