On Thu, Mar 28, 2019 at 03:29:52AM +0100, Daniele Orlandi wrote: > On 3/22/19 2:10 PM, Bin Liu wrote: > > > > Please explain the issue in details here, we will try to solve it. > > I did some more troubleshooting, contrary to what I stated initially the > kernel version does not matter. > > What changed the behaviour is that I was loading g_mass_storage on the > system working and not loading it on the system not working. > > Without loading g_mass_storage the port was staying in "b_idle" mode > regardless of what cable was connected, VBUS was always 0 V, USB_ID was > always in high impedance. > > When loading g_mass_storage the port was instead cycling between > a_wait_vrise and a_idle with a A cable (not connected to anything) and > properly going to a_host when connected to a device. > > How is g_mass_storage linked to the OTG port properly working in host mode? Kind of odd, but this is how musb driver was implemented - if the musb port is in dual-role mode (dr_mode = 'otg' in dts), loading a gadget driver is required to make musb driver functional, even for the host mode. > I'm asking just out of curiosity, since I will be loading it anyway. Regards, -Bin.