Hi, On Wed, Sep 27, 2017 at 08:35:22PM +1000, Jonathan Liu wrote: > The sunxi musb has a bug where sometimes it will generate a babble > error on device disconnect instead of a disconnect IRQ. When this > happens the musb controller switches from host mode to device mode > (it clears MUSB_DEVCTL_HM/MUSB_DEVCTL_SESSION and sets > MUSB_DEVCTL_BDEVICE) and gets stuck in this state. > > The babble error is misdetected as a bus reset because MUSB_DEVCTL_HM > was cleared. > > To fix this, use is_host_active() rather than (devctl & MUSB_DEVCTL_HM) > to detect babble error so that sunxi musb babble recovery can handle it > by restoring the mode. This information is provided by the driver logic > and does not rely on register contents. > > Cc: stable@xxxxxxxxxxxxxxx # v4.1+ > Signed-off-by: Jonathan Liu <net147@xxxxxxxxx> Applied. Thanks. -Bin. -- 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