[PATCH] soc: ti: knav_qmss_queue: Use IRQF_NO_AUTOEN flag in request_irq()
Nishanth Menon
nm at ti.com
Fri Sep 13 11:14:21 PDT 2024
On 11:38-20240912, Jinjie Ruan wrote:
> disable_irq() after request_irq() still has a time gap in which
> interrupts can come. request_irq() with IRQF_NO_AUTOEN flag will
> disable IRQ auto-enable when request IRQ.
does it explicitly disable the irq?
>
> Fixes: 41f93af900a2 ("soc: ti: add Keystone Navigator QMSS driver")
Not a fixes. at least not a fix when the code was introduced in 2014 and
the flag was introduced in 2015.
> Signed-off-by: Jinjie Ruan <ruanjinjie at huawei.com>
> ---
> drivers/soc/ti/knav_qmss_queue.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/soc/ti/knav_qmss_queue.c b/drivers/soc/ti/knav_qmss_queue.c
> index f2055a76f84c..9c8d2f13b947 100644
> --- a/drivers/soc/ti/knav_qmss_queue.c
> +++ b/drivers/soc/ti/knav_qmss_queue.c
> @@ -119,11 +119,10 @@ static int knav_queue_setup_irq(struct knav_range_info *range,
>
> if (range->flags & RANGE_HAS_IRQ) {
> irq = range->irqs[queue].irq;
> - ret = request_irq(irq, knav_queue_int_handler, 0,
> - inst->irq_name, inst);
> + ret = request_irq(irq, knav_queue_int_handler, IRQF_NO_AUTOEN,
> + inst->irq_name, inst);
> if (ret)
> return ret;
> - disable_irq(irq);
> if (range->irqs[queue].cpu_mask) {
> ret = irq_set_affinity_hint(irq, range->irqs[queue].cpu_mask);
> if (ret) {
> --
> 2.34.1
>
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
More information about the linux-arm-kernel
mailing list