drm/imx/dcss: Use IRQF_NO_AUTOEN flag in request_irq()
authorJinjie Ruan <ruanjinjie@huawei.com>
Thu, 12 Sep 2024 08:30:16 +0000 (16:30 +0800)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Sat, 21 Sep 2024 20:47:42 +0000 (23:47 +0300)
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.

Fixes: 9021c317b770 ("drm/imx: Add initial support for DCSS on iMX8MQ")
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240912083020.3720233-2-ruanjinjie@huawei.com
[DB: fixed the subject]
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
drivers/gpu/drm/imx/dcss/dcss-crtc.c

index 31267c0..af91e45 100644 (file)
@@ -206,15 +206,13 @@ int dcss_crtc_init(struct dcss_crtc *crtc, struct drm_device *drm)
        if (crtc->irq < 0)
                return crtc->irq;
 
-       ret = request_irq(crtc->irq, dcss_crtc_irq_handler,
-                         0, "dcss_drm", crtc);
+       ret = request_irq(crtc->irq, dcss_crtc_irq_handler, IRQF_NO_AUTOEN,
+                         "dcss_drm", crtc);
        if (ret) {
                dev_err(dcss->dev, "irq request failed with %d.\n", ret);
                return ret;
        }
 
-       disable_irq(crtc->irq);
-
        return 0;
 }