Re: Genesys USB3 hub shows up as USB2 (SOLVED)
Greg Troxel <[email protected]> Mon, 04 Sep 2023 15:01:55 -0400
| Newsgroups | gmane.os.netbsd.ports.x86-64 |
|---|---|
| Message-ID | <[email protected]> |
Following up on my earlier report about a labeled-as-USB3 device showing up as USB2: The device is sold as: Sabrent USB Storage Drive Docking Station with 3 USB Ports and has a SATA slot and 3 USB3 ports on the front. It seems that there are two concepts out there: if you plug a device in slowly, it might be detected as usb2 only when you plug in a device, usb2 just works, but there is some link training and adapation for usb3 and if that isn't happy, usb3 just doesn't attach I might have a marginal cable, or finicky connectors, or just not have the right touch. Now I can get it to work, after first figuring out that 2/4 front panel and 2/4 rear panel ports are USB3, and the others are USB2. The rear ports seat the cable better, and the fact that I can perceive this is a clue. boot dmesg: xhci0 at pci0 dev 20 function 0: Intel 300 Series USB 3.1 xHCI (rev. 0x10) xhci0: 64-bit DMA xhci0: interrupting at msi0 vec 0 xhci0: xHCI version 1.10 usb0 at xhci0: USB revision 3.1 usb1 at xhci0: USB revision 2.0 uhub0 at usb0: NetBSD (0x0000) xHCI root hub (0x0000), class 9/0, rev 3.00/1.00, addr 0 uhub0: 8 ports with 8 removable, self powered uhub1 at usb1: NetBSD (0x0000) xHCI root hub (0x0000), class 9/0, rev 2.00/1.00, addr 0 uhub1: 16 ports with 16 removable, self powered and despite xHCI on both, it seems uhub0 is USB3.1 and uhub1 is USB2.1. (USB3.1 is now spelled USB3.2 gen1, apparently, but that's not the point.) dmesg from bad insertion: uhub3 at uhub1 port 2: GenesysLogic (0x05e3) USB2.1 Hub (0x0610), class 9/0, rev 2.10/93.91, addr 35 uhub3: multiple transaction translators uhub3: 4 ports with 3 removable, self powered umass0 at uhub3 port 1 configuration 1 interface 0 umass0: Sabrent Disk Device (0x152d) Sabrent Disk Device (0x0578), rev 2.10/4.01, addr 36 umass0: using SCSI over Bulk-Only scsibus0 at umass0: 2 targets, 1 lun per target sd0 at scsibus0 target 0 lun 0: <Sabrent, Disk Device, 0401> disk fixed sd0: fabricating a geometry sd0: 931 GB, 953869 cyl, 64 head, 32 sec, 512 bytes/sect x 1953525168 sectors sd0: fabricating a geometry dmesg from good insertion: uhub3 at uhub1 port 1: GenesysLogic (0x05e3) USB2.1 Hub (0x0610), class 9/0, rev 2.10/93.91, addr 40 uhub3: multiple transaction translators uhub3: 4 ports with 3 removable, self powered uhub4 at uhub0 port 3: GenesysLogic (0x05e3) USB3.1 Hub (0x0620), class 9/0, rev 3.20/93.91, addr 41 uhub4: 4 ports with 3 removable, self powered umass0 at uhub4 port 1 configuration 1 interface 0 umass0: Sabrent Disk Device (0x152d) Sabrent Disk Device (0x0578), rev 3.00/4.01, addr 42 umass0: using SCSI over Bulk-Only scsibus0 at umass0: 2 targets, 1 lun per target sd0 at scsibus0 target 0 lun 0: <Sabrent, Disk Device, 0401> disk fixed sd0: fabricating a geometry sd0: 931 GB, 953869 cyl, 64 head, 32 sec, 512 bytes/sect x 1953525168 sectors sd0: fabricating a geometry Note: uhub3 at uhub1, USB2 uhub4 at uhub0, USB3 So nothing to be fixed in NetBSD, and just a data point that USB3 can be finicky.