Hi, > > This patch is needs to be modified so that we service the real SRP > interrupt > > From B-device. > > > > As per current musb driver when we connect the mini-A plug to A-device > and > > Mini-B plug to B-device then DEVCTL on either side would show the > interface > > To be in B-device. Thus we can't reply on D7 bit of DEVCTL at this > moment. > > > > Moreover Mentor document also says that D7 bit of DEVCTL is valid only > > when a SESSION is in progress. > > How about this: > > diff --git a/drivers/usb/musb/musb_core.c > b/drivers/usb/musb/musb_core.c > index c9f9024..4bb8812 100644 > --- a/drivers/usb/musb/musb_core.c > +++ b/drivers/usb/musb/musb_core.c > @@ -552,7 +552,8 @@ static irqreturn_t musb_stage0_irq(struct musb > *musb, u8 int_usb, > if (int_usb & MUSB_INTR_SESSREQ) { > void __iomem *mbase = musb->mregs; > > - if (devctl & MUSB_DEVCTL_BDEVICE) { > + if ((devctl & MUSB_DEVCTL_VBUS) == MUSB_DEVCTL_VBUS && > + (devctl & MUSB_DEVCTL_BDEVICE)) { Looks fine to me. -Ajay > DBG(3, "SessReq while on B state\n"); > return IRQ_HANDLED; > } > > -- > heikki -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html