From: Javier Martin Date: Mon, 13 Feb 2012 13:51:52 +0000 (-0300) Subject: [media] media: i.MX27 camera: Use spin_lock() inside the IRQ handler X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=8636ead8b2d738b5b1b9a0c2e6070e3458a47d14;p=mv-sheeva.git [media] media: i.MX27 camera: Use spin_lock() inside the IRQ handler 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 Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/video/mx2_camera.c b/drivers/media/video/mx2_camera.c index 2d194143578..d555b6eccb8 100644 --- a/drivers/media/video/mx2_camera.c +++ b/drivers/media/video/mx2_camera.c @@ -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;