OSDN Git Service

media: coda: Replace the threaded interrupt with a hard interrupt
authorEzequiel Garcia <ezequiel@collabora.com>
Thu, 2 May 2019 22:00:44 +0000 (18:00 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Tue, 28 May 2019 16:22:50 +0000 (12:22 -0400)
The current interrupt handler is doing very little, and not doing
any non-atomic operations. Pretty much all it does is accessing
a couple registers, taking a couple spinlocks and then signalling
a completion.

There is no reason this should be a threaded interrupt handler,
so move the handler to regular hard interrupt context.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/platform/coda/coda-common.c

index 3f028d1..eb5f76d 100644 (file)
@@ -2816,8 +2816,8 @@ static int coda_probe(struct platform_device *pdev)
                return irq;
        }
 
-       ret = devm_request_threaded_irq(&pdev->dev, irq, NULL, coda_irq_handler,
-                       IRQF_ONESHOT, dev_name(&pdev->dev), dev);
+       ret = devm_request_irq(&pdev->dev, irq, coda_irq_handler, 0,
+                              dev_name(&pdev->dev), dev);
        if (ret < 0) {
                dev_err(&pdev->dev, "failed to request irq: %d\n", ret);
                return ret;