Commit c6d76414 authored by Felipe Balbi's avatar Felipe Balbi

usb: dwc3: omap: remove unnecessary lock

the lock was only taken inside the hardirq
handler, which runs with IRQs disabled. There's
no chance of any race condition happening, even
on SMP machines. It's safe to remove that
spinlock.
Acked-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent 9ba96ae5
...@@ -20,7 +20,6 @@ ...@@ -20,7 +20,6 @@
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/spinlock.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/platform_data/dwc3-omap.h> #include <linux/platform_data/dwc3-omap.h>
#include <linux/pm_runtime.h> #include <linux/pm_runtime.h>
...@@ -120,9 +119,6 @@ ...@@ -120,9 +119,6 @@
#define USBOTGSS_UTMI_OTG_STATUS_VBUSVALID (1 << 1) #define USBOTGSS_UTMI_OTG_STATUS_VBUSVALID (1 << 1)
struct dwc3_omap { struct dwc3_omap {
/* device lock */
spinlock_t lock;
struct device *dev; struct device *dev;
int irq; int irq;
...@@ -280,8 +276,6 @@ static irqreturn_t dwc3_omap_interrupt(int irq, void *_omap) ...@@ -280,8 +276,6 @@ static irqreturn_t dwc3_omap_interrupt(int irq, void *_omap)
struct dwc3_omap *omap = _omap; struct dwc3_omap *omap = _omap;
u32 reg; u32 reg;
spin_lock(&omap->lock);
reg = dwc3_omap_read_irqmisc_status(omap); reg = dwc3_omap_read_irqmisc_status(omap);
if (reg & USBOTGSS_IRQMISC_DMADISABLECLR) { if (reg & USBOTGSS_IRQMISC_DMADISABLECLR) {
...@@ -322,8 +316,6 @@ static irqreturn_t dwc3_omap_interrupt(int irq, void *_omap) ...@@ -322,8 +316,6 @@ static irqreturn_t dwc3_omap_interrupt(int irq, void *_omap)
dwc3_omap_write_irq0_status(omap, reg); dwc3_omap_write_irq0_status(omap, reg);
spin_unlock(&omap->lock);
return IRQ_HANDLED; return IRQ_HANDLED;
} }
...@@ -449,8 +441,6 @@ static int dwc3_omap_probe(struct platform_device *pdev) ...@@ -449,8 +441,6 @@ static int dwc3_omap_probe(struct platform_device *pdev)
} }
} }
spin_lock_init(&omap->lock);
omap->dev = dev; omap->dev = dev;
omap->irq = irq; omap->irq = irq;
omap->base = base; omap->base = base;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment