[U-Boot] dwc2 USB host initialization issue

Bogdan Harjoc harjoc at gmail.com
Wed Aug 29 14:06:34 UTC 2018


I am trying to initialize a dwc2 usb otg host using the u-boot dwc2
driver in u-boot and barebox and am trying to get past the port
power-up step. The controller is activated successfully once the Linux
kernel boots up and the mass storage devices are accessible, but in
u-boot and barebox it seems to not receive the

USB_PORT_STAT_C_CONNECTION
nor the
USB_PORT_STAT_C_ENABLE

port change status. In the bootloader, usb_get_port_status returns
0x510 (i.e. HIGH_SPEED | POWER | RESET), while under linux the status
after powering up the port is 0x101 (i.e. POWER | CONNECTION) and the
linux usb core then properly brings up the port.

I looked at the submitted usb requests, and didn't see any relevant
difference (bootloader vs linux). All I could see from the debug
output is that PwrOn2PwrGood time and HubContrCurrent are both zero in
barebox and nonzero in linux.

Could the cause be the fact that in the bootloader the port comes up
with HIGH_SPEED status ? Can I disable this flag during hub
initialization ? Or is there another probable cause for this ?

Regards,
Bogdan


More information about the U-Boot mailing list