[media] media: i.MX27 camera: Use spin_lock() inside the IRQ handler
authorJavier Martin <javier.martin@vista-silicon.com>
Mon, 13 Feb 2012 13:51:52 +0000 (10:51 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Thu, 8 Mar 2012 12:44:00 +0000 (09:44 -0300)
We don't need to use spin_lock_irqsave() since there are not
any other IRQs that can race with this ISR.

Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/mx2_camera.c

index 2d1941435786b91829d91bee34bae99d7ee1bcb0..d555b6eccb82f74e966223997eb9e9516f749782 100644 (file)
@@ -1286,9 +1286,8 @@ static irqreturn_t mx27_camera_emma_irq(int irq_emma, void *data)
        struct mx2_camera_dev *pcdev = data;
        unsigned int status = readl(pcdev->base_emma + PRP_INTRSTATUS);
        struct mx2_buffer *buf;
-       unsigned long flags;
 
-       spin_lock_irqsave(&pcdev->lock, flags);
+       spin_lock(&pcdev->lock);
 
        if (list_empty(&pcdev->active_bufs)) {
                dev_warn(pcdev->dev, "%s: called while active list is empty\n",
@@ -1325,7 +1324,7 @@ static irqreturn_t mx27_camera_emma_irq(int irq_emma, void *data)
        }
 
 irq_ok:
-       spin_unlock_irqrestore(&pcdev->lock, flags);
+       spin_unlock(&pcdev->lock);
        writel(status, pcdev->base_emma + PRP_INTRSTATUS);
 
        return IRQ_HANDLED;