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 <ruanjin...@huawei.com>
---
 drivers/gpu/drm/imx/dcss/dcss-dtg.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/imx/dcss/dcss-dtg.c 
b/drivers/gpu/drm/imx/dcss/dcss-dtg.c
index 2968f5d5bd41..6bbfd9aa27ac 100644
--- a/drivers/gpu/drm/imx/dcss/dcss-dtg.c
+++ b/drivers/gpu/drm/imx/dcss/dcss-dtg.c
@@ -134,14 +134,12 @@ static int dcss_dtg_irq_config(struct dcss_dtg *dtg,
                    dtg->base_reg + DCSS_DTG_INT_MASK);
 
        ret = request_irq(dtg->ctxld_kick_irq, dcss_dtg_irq_handler,
-                         0, "dcss_ctxld_kick", dtg);
+                         IRQF_NO_AUTOEN, "dcss_ctxld_kick", dtg);
        if (ret) {
                dev_err(dtg->dev, "dtg: irq request failed.\n");
                return ret;
        }
 
-       disable_irq(dtg->ctxld_kick_irq);
-
        dtg->ctxld_kick_irq_en = false;
 
        return 0;
-- 
2.34.1

Reply via email to