On 10/26/26 10:24 AM, Hung-Chun Tseng wrote:
The VL817 is a USB 3.1 Gen 1 hub controller with one supply and a reset
pin. Use the same reset time as Linux.
The Milk-V Jupiter and the Banana Pi BPI-F3 have one in front of all
their USB ports. Without this, U-Boot leaves the hub unpowered and in
reset, so no USB device is found.
Signed-off-by: Hung-Chun Tseng <[email protected]>
---
common/usb_onboard_hub.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/common/usb_onboard_hub.c b/common/usb_onboard_hub.c
index 0684f7bfd..0ed70a6ba 100644
--- a/common/usb_onboard_hub.c
+++ b/common/usb_onboard_hub.c
@@ -289,9 +289,21 @@ static const struct onboard_hub_data usbhx3_data = {
.supply_names = { "vdd-supply", "vdd2-supply" },
};
+static const struct onboard_hub_data vialab_vl817_data = {
+ .reset_us = 10,
+ .num_supplies = 1,
+ .supply_names = { "vdd-supply" },
+};
+
static const struct udevice_id usb_onboard_hub_ids[] = {
/* Use generic usbVID,PID dt-bindings (usb-device.yaml) */
- { .compatible = "usb3431,6241", /* Corechips SL6341 USB 2.0 */
+ { .compatible = "usb2109,2817", /* VIA Labs VL817 USB 2.0 */
+ .data = (ulong)&vialab_vl817_data,
+ }, {
+ .compatible = "usb2109,817", /* VIA Labs VL817 USB 3.0 */
Please keep the list sorted.
[...]