BTW, can you publish your actual commands to configure chip - it may help?
case 'm': if (mbase) { u8 r; u32 l; r = gpio_get_value(RX51_USB_TRANSCEIVER_RST_GPIO); printk("RX51_USB_TRANSCEIVER_RST_GPIO = %hu\n", r); l = omap_readl(OTG_SYSCONFIG); printk("OTG_SYSCONFIG = %x\n", l); r = musb_ulpi_readb(mbase, ISP1704_OTG_CTRL); printk("ulpi read result isp1704_otg_ctrl=%hx\n", r); r = musb_ulpi_readb(mbase, ISP1704_FUNC_CTRL); printk(" isp1704_func_ctrl=%hx\n", r); r = musb_ulpi_readb(mbase, ISP1704_USB_INTRISE); printk(" isp1704_usb_intr_en_r=%hx\n", r); r = musb_ulpi_readb(mbase, ISP1704_USB_INTFALL); printk(" isp1704_usb_intr_en_f=%hx\n", r); r = musb_ulpi_readb(mbase, ISP1704_USB_INTSTAT); printk(" isp1704_usb_intr_stat=%hx\n", r); r = musb_ulpi_readb(mbase, ISP1704_PWR_CTRL); printk(" isp1704_pwr_ctrl=%hx\n", r); } break; case 'M': if (mbase) { u8 r; r = ISP1704_OTG_CTRL_DP_PULLDOWN | ISP1704_OTG_CTRL_DM_PULLDOWN; musb_ulpi_writeb(mbase, ISP1704_OTG_CTRL, r); printk("writing otg_ctrl=%hx\n", r); } break;
case '2': musb->xceiv->set_suspend(musb->xceiv, 0); break;