USB - No working controllers found

The usb ports are no longer working.
How to troubleshoot?
I see this message in u-boot:
U-Boot SPL 2021.10 (Sep 28 2024 - 01:14:56 +0800)
LPDDR4: 8G version: g8ad50857.
Trying to boot from MMC2
OpenSBI v1.2
U-Boot 2021.10 (Sep 28 2024 - 01:14:56 +0800), Build: jenkins-github_visionfive2_6.6-5
Model: StarFive VisionFive V2
Net: eth0: ethernet@16030000, eth1: ethernet@16040000
starting USB…
No working controllers found

No longer implies they did before.

Was there any change, hardware or bootloaders? Did you overload the usb?

USB worked in the past. Now it does not work. In the past I used the usb to transfer data to single usb stick or a single usb nic. This is not a case of overload.
The bootloader as you can see from output, is the current official bootloader.
Does this mean I have to throw the board in the trash? No repair.

1 Like

I’d suspect the power supply first.

As for overload, I mentioned due to reset-able fuses. If the usb ports were ever overloaded, these fuses would require resetting, which is done by un-powering the board (overnight best).

As an additional idea, since usb is (I think?) on the PCIe bus, ensure there’s nothing installed in the m.2 port underneath, as a debug step.

1 Like

I tried two different power supplies.
I have nothing in the m.2 slot. I already tried waiting overnight to see if anything changes.
I have seen this now for a week. I am trying to decide what action to take, as I am working on various RISCV projects.
Is it time to look for a different board?

1 Like

My next step would be to pull up the schematic and with a multimeter confirm that the PCIe to USB 3.0 hub chip is receiving the correct voltage.

If the voltage looks good then my next step would be to reach out to anyone I knew with a hot air soldering station (If I did not own one) to cover most of the board with aluminium foil and kapton tape and reheat only the USB controller. My assumption being that either thermal cycles or vibration caused a poor solder connection to fail under the chip. If you have no access to a hot air rework station, a hotplate might be used as a final option.

If the voltage looked bad, on most boards I’d normally check for a failed LDO, but in this case a bad configuration value for the power management unit. Or it might be a partially faulty PMU.

Basically the USB controller is not being enumerated. So the typical cause would be power, failed chip, PCIe bus issue. Might be worthwhile to blast the M2 slot with compressed air incase there is a short caused by lint or something else before going any further.

1 Like