usb: musb: dsps: check for the single bit
authorFelipe Balbi <balbi@ti.com>
Thu, 26 Feb 2015 17:01:03 +0000 (11:01 -0600)
committerFelipe Balbi <balbi@ti.com>
Tue, 10 Mar 2015 20:33:27 +0000 (15:33 -0500)
We want to check if that particular bit is
set. It could very well be that bootloader
(or romcode) has fiddled with MUSB before
us which could leave other bits set in this
register.

Tested-by: Bin Liu <b-liu@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/musb/musb_dsps.c

index 8f96e79..e210b75 100644 (file)
@@ -475,7 +475,7 @@ static int dsps_musb_init(struct musb *musb)
         * logic enabled.
         */
        val = dsps_readb(musb->mregs, MUSB_BABBLE_CTL);
-       if (val == MUSB_BABBLE_RCV_DISABLE) {
+       if (val & MUSB_BABBLE_RCV_DISABLE) {
                glue->sw_babble_enabled = true;
                val |= MUSB_BABBLE_SW_SESSION_CTRL;
                dsps_writeb(musb->mregs, MUSB_BABBLE_CTL, val);