]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
media: iris: Fix use IRQF_NO_AUTOEN when requesting the IRQ
authorDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Fri, 29 May 2026 11:27:10 +0000 (14:27 +0300)
committerBryan O'Donoghue <bod@kernel.org>
Sat, 30 May 2026 07:41:48 +0000 (08:41 +0100)
Requesting the IRQ and then immediately disabling it is fragile as it
leaves a window when the IRQ is still enabled although the underlying
device might be not completely setup for IRQ handling. Pass
IRQF_NO_AUTOEN instead of calling disable_irq_nosync().

Fixes: fb583a214337 ("media: iris: introduce host firmware interface with necessary hooks")
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
[bod: Appended Fix to patch title for -stable clarity]
[bod: Added cc stable for backporting]
Cc: stable@vger.kernel.org
Signed-off-by: Bryan O'Donoghue <bod@kernel.org>
drivers/media/platform/qcom/iris/iris_probe.c

index d36f0c0e785b7de0e3527e0a824942db0fb79133..a755a6f73ea6127eafa3ac544bc285830b05a84f 100644 (file)
@@ -259,12 +259,12 @@ static int iris_probe(struct platform_device *pdev)
                return PTR_ERR(core->ubwc_cfg);
 
        ret = devm_request_threaded_irq(core->dev, core->irq, iris_hfi_isr,
-                                       iris_hfi_isr_handler, IRQF_TRIGGER_HIGH, "iris", core);
+                                       iris_hfi_isr_handler,
+                                       IRQF_TRIGGER_HIGH | IRQF_NO_AUTOEN,
+                                       "iris", core);
        if (ret)
                return ret;
 
-       disable_irq_nosync(core->irq);
-
        iris_init_ops(core);
        core->iris_firmware_data->init_hfi_ops(core);