The IRQF_NO_AUTOEN can be used for the drivers that don't want
interrupts to be enabled automatically via devm_request_threaded_irq().
Using this flag can provide be more robust compared to the way of
calling disable_irq() after devm_request_threaded_irq() without the
IRQF_NO_AUTOEN flag.

Signed-off-by: Damon Ding <damon.d...@rock-chips.com>
---
 drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c 
b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
index bfa88409a7ff..e23af674d91c 100644
--- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
+++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
@@ -1636,10 +1636,10 @@ analogix_dp_probe(struct device *dev, struct 
analogix_dp_plat_data *plat_data)
                 * that we can get the current state of the GPIO.
                 */
                dp->irq = gpiod_to_irq(dp->hpd_gpiod);
-               irq_flags = IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING;
+               irq_flags = IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING | 
IRQF_NO_AUTOEN;
        } else {
                dp->irq = platform_get_irq(pdev, 0);
-               irq_flags = 0;
+               irq_flags = IRQF_NO_AUTOEN;
        }
 
        if (dp->irq == -ENXIO) {
@@ -1656,7 +1656,6 @@ analogix_dp_probe(struct device *dev, struct 
analogix_dp_plat_data *plat_data)
                dev_err(&pdev->dev, "failed to request irq\n");
                goto err_disable_clk;
        }
-       disable_irq(dp->irq);
 
        return dp;
 
-- 
2.34.1

Reply via email to