Dileepa Prabhakar said:To be clear, the issue we are seeing is that occasionally, typically after a power cycle, the transceiver does not appear to detect that a USB cable is connected to it. No amount of reconnecting will fix the issue and the only workaround is to perform a power cycle.
Dileepa, one reason for this might be that, by default, USB core is set up for serial transceiver interface. We've seen sometimes that this can cause, while reconfiguring to ULPI setup, issue with some transceivers on i.MX27. Problem appeared randomly and immediately after powerup, as you describe it.
One solution to this problem could be to switch i.MX27 USB controller to ULPI mode before GPIO MUX is reconfigured for USB operation.
Other (better) option is to de-assert CS to the PHY after PHY_CLK starts to run. Rest of setup is done as usual and only at the end of USB initialization is CS asserted again. Unfortunately, not all designs have the CS connected to some GPIO on i.MX27.
Hope this helps.
Vladan