]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
usb: musb: core: remove unnecessary reg access from resume IRQ
authorFelipe Balbi <balbi@ti.com>
Wed, 25 Feb 2015 20:30:55 +0000 (14:30 -0600)
committerFelipe Balbi <balbi@ti.com>
Tue, 10 Mar 2015 20:33:26 +0000 (15:33 -0500)
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>
drivers/usb/musb/musb_core.c

index b5dfe83dce7605ae5812604d2fa350fb877e3c13..3fb7d6e032f1afe5ca75a917582799c11934e251 100644 (file)
@@ -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;