Forum Discussion
Hi teiram
I can't spot any problem with the GPIO0 definition. Just giving a shot here. Could you please try with
&usb1 {
status = "okay";
dr_mode = "host";
};
- teiram2 days ago
New Contributor
Hi Alan,
thanks for your suggestion. I just tried it and got the same result. GPIOs seems to be set properly (at least that is what gpio status -a shows), but the USB HUB is not detected. Followed the same procedure, tried to reset and set GPIOs 0 and 9 and nothing changed :(
- AlanCLTan1 day ago
Occasional Contributor
Hi teiram,
Let's try these:
1. Do you have a PHY node for USB3300 in the your previous working u-boot? Something like the example below. Add it into the dtsi:
{ /* Define the PHY node outside the soc bus */ usb_phy0: usb-phy { compatible = "usb-nop-xceiv"; #phy-cells = <0>; reset-gpios = <&portb 0 GPIO_ACTIVE_LOW>; status = "okay"; }; }; &usb1 { status = "okay"; dr_mode = "host"; // Usually 'host' for Cyclone V boards usb-phy = <&usb_phy0>; // Link to the PHY node };2. Make sure the Linux kconfig options (set in defconfig) are set:
CONFIG_USB_DWC2=y CONFIG_USB_OHCI_HCD=y --- sometimes needed for full/low speed support CONFIG_PHY=y CONFIG_NOP_USB_XCEIV=y --- Essential if using the usb-nop-xceiv compatible string. CONFIG_USB_ULPI=y --- Required for the ULPI interface protocol.3. The USB3300 or an downstream hub requires specific GPIO states to be enabled before the USB stack starts. You can do this in U-Boot with:
gpio set 9 usb start