diff options
author | Felipe Balbi <balbi@ti.com> | 2015-02-25 14:30:55 -0600 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2015-03-10 15:33:26 -0500 |
commit | 46571889ec435f1bf29d9094f062948b26630723 (patch) | |
tree | f7b95461074e98e2256f194a6bf1b80faed37a90 /drivers/usb/musb | |
parent | 0acff6b83106ef699f17828caea6545bcc716f14 (diff) | |
download | op-kernel-dev-46571889ec435f1bf29d9094f062948b26630723.zip op-kernel-dev-46571889ec435f1bf29d9094f062948b26630723.tar.gz |
usb: musb: core: remove unnecessary reg access from resume IRQ
when musb is operating as host and a remote wakeup
fires up, a resume interrupt will be raised. At that
point SUSPENDM bit is automatically cleared and
RESUME bit is automatically set.
Remove those two from IRQ handler.
Tested-by: Bin Liu <b-liu@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/musb')
-rw-r--r-- | drivers/usb/musb/musb_core.c | 15 |
1 files changed, 0 insertions, 15 deletions
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index b5dfe83..3fb7d6e 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb/musb_core.c @@ -538,27 +538,12 @@ static irqreturn_t musb_stage0_irq(struct musb *musb, u8 int_usb, usb_otg_state_string(musb->xceiv->otg->state)); if (devctl & MUSB_DEVCTL_HM) { - void __iomem *mbase = musb->mregs; - u8 power; - switch (musb->xceiv->otg->state) { case OTG_STATE_A_SUSPEND: /* remote wakeup? later, GetPortStatus * will stop RESUME signaling */ - power = musb_readb(musb->mregs, MUSB_POWER); - if (power & MUSB_POWER_SUSPENDM) { - /* spurious */ - musb->int_usb &= ~MUSB_INTR_SUSPEND; - dev_dbg(musb->controller, "Spurious SUSPENDM\n"); - break; - } - - power &= ~MUSB_POWER_SUSPENDM; - musb_writeb(mbase, MUSB_POWER, - power | MUSB_POWER_RESUME); - musb->port1_status |= (USB_PORT_STAT_C_SUSPEND << 16) | MUSB_PORT_STAT_RESUME; |