We have a USB touch device that causes a USB babble interrupt to occur in the Linux USB driver upon power-up. This babble interrupt causes the USB host to re-initialize, which also causes the USB0_DRVVBUS signal to go low momentarily while the reset occurs. When the USB initializes again, the same thing happens. The USB host ends up reinitializing many times before finally settling down and working properly.
We've discovered that by leaving the power on to the device (by overriding the USB0_DRVVBUS signal, which also happens to power up the device a bit earlier in relation to the USB host driver enumerating the USB devices) avoid this issue altogether.
If I understand correctly, this signal us used for USB OTG devices, where the AM3358 needs to behave like a device instead of like a host. This is a configuration we're never going to use.
So, our proposed solution is to either rework our schematic to force the USB 5V to simply always be on, or to reconfigure that pin of the AM3358 as a GPIO, and use that to leave it on all the time (this allows us to revert back to the "normal" configuration, or to cycle power manually through software control if necessary).
So, my question is: Is there any issues with leaving the USB voltage on all the time? Our testing seems to indicate that it's okay, but we're worried there might be problems with other devices.