[Bug 251503] Disconnecting/reconnecting USB-C dock makes other USB ports unusable
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Mon Dec 21 13:28:06 UTC 2020
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=251503
--- Comment #3 from Ali Abdallah <ali.abdallah at suse.com> ---
The attachment order of usb hubs is somehow broken when the dock is unplugged
and plugged again.
When the system is first booted, on xhci0 at pci0:6:0:3 I have:
xhci0
usbus1
uhub0
uhub3
uhub5
uhub6
uhid0
uhid1
uaudio0
pcm4
But when I unplug/re-plug the dock, I get
xhci0
usbus1
uhub0
uhub3
uhub5
When all USB devices on the dock were correctly detected, uhub5 was a child of
uhub3 and not of uhub0.
On system boot:
uhub5 on uhub3
uhub5: <VIA Labs, Inc. USB2.0 Hub, class 9/0, rev 2.10/d.23, addr 3> on usbus1
uhub5: MTT enabled
uhub5: 4 ports with 3 removable, self powered
When the dock is unplugged/replugged again:
uhub5: detached
uhub5 on uhub0
uhub5: <VIA Labs, Inc. USB3.1 Hub, class 9/0, rev 3.10/d.24, addr 2> on usbus1
And no devices attached to the dock are detected.
BTW: I tried out Dragon Fly 5.8.3 since it has similar USB implementation to
FreeBSD, and the issue doesn't happen, uhub5 remains child of uhub3 and uhub6
child of uhub5, with all USB devices being correctly detected when the dock is
unplugged/plugged back.
Unfortunately I know little about the USB stack, could you please provide some
hints on how to proceed here?
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-usb
mailing list