media: atomisp: Cleanup atomisp_isr_thread() spinlock handling
authorHans de Goede <hdegoede@redhat.com>
Sun, 14 Apr 2024 14:51:12 +0000 (15:51 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 26 Apr 2024 10:05:13 +0000 (11:05 +0100)
Refactor the code a tiny bit to avoid the need to have 2 different
paths with spin_unlock_irqrestore() in there.

While at it also remove the non helpful dev_dbg() message.

Reviewed-by: Andy Shevchenko <andy@kernel.org>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/staging/media/atomisp/pci/atomisp_cmd.c

index 9fc2f0af6f3d9f6904f81faa9817ebdc5b7126d5..29b0873f4ed985a77f845f2cb77467145adb5cd5 100644 (file)
@@ -959,17 +959,14 @@ irqreturn_t atomisp_isr_thread(int irq, void *isp_ptr)
 {
        struct atomisp_device *isp = isp_ptr;
        unsigned long flags;
-
-       dev_dbg(isp->dev, ">%s\n", __func__);
+       bool streaming;
 
        spin_lock_irqsave(&isp->lock, flags);
+       streaming = isp->asd.streaming;
+       spin_unlock_irqrestore(&isp->lock, flags);
 
-       if (!isp->asd.streaming) {
-               spin_unlock_irqrestore(&isp->lock, flags);
+       if (!streaming)
                return IRQ_HANDLED;
-       }
-
-       spin_unlock_irqrestore(&isp->lock, flags);
 
        /*
         * The standard CSS2.0 API tells the following calling sequence of