Hi
I am working on our custom board of LS1046A.
usb start can not drive USB_DRVVBUS or detect any device (when set the DRVVBUS as a GPIO and drive it high)
There is no power fault error on USB_PWRFAULT.
=> gpio set 125
gpio: pin 125 (gpio 125) value is 1
=> usb start
starting USB...
Bus usb@2f00000: Register 200017f NbrPorts 2
Starting the controller
USB XHCI 1.00
Bus usb@3000000: Register 200017f NbrPorts 2
Starting the controller
USB XHCI 1.00
Bus usb@3100000: Register 200017f NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus usb@2f00000 for devices... 1 USB Device(s) found
scanning bus usb@3000000 for devices... 1 USB Device(s) found
scanning bus usb@3100000 for devices... 1 USB Device(s) found
scanning usb for storage devices... 0 Storage Device(s) found
I tried to read the SCFG_USB_REFCLK_SELCR and found its reset is asserted :
=> md 01570418 1
01570418: 9e000080 ....
After maually deassertting the reset, the USB device can be detected normally
=> md 01570418 1
01570418: 9e000000 ....
=> usb reset
resetting USB...
Bus usb@2f00000: Register 200017f NbrPorts 2
Starting the controller
USB XHCI 1.00
Bus usb@3000000: Register 200017f NbrPorts 2
Starting the controller
USB XHCI 1.00
Bus usb@3100000: Register 200017f NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus usb@2f00000 for devices... 2 USB Device(s) found
scanning bus usb@3000000 for devices... 1 USB Device(s) found
scanning bus usb@3100000 for devices... 1 USB Device(s) found
scanning usb for storage devices... 1 Storage Device(s) found
Could you tell me how on what case the usb reset is asserted?
Does "usb start" is not enough?
What else should I do to enable usb instead of writing register directly?
The usb related configuration :
CONFIG_USB=y
CONFIG_DM_USB=y
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_XHCI_DWC3=y
Could you give me any ideas, please.