Wenn Sie den Namen Ihres Geräts kennen, finden Sie die USB-Bus- und Gerätenummern:
$ lsusb
...
Bus 002 Device 005: ID xxxx:yyyy MyDeviceManufacturer
...
Sehen Sie sich dann den USB-Baum an und finden Sie Ihr Gerät (meins war Bus 2, Dev 5):
$ lsusb -t
...
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
|__ Port 2: Dev 5, If 0, Class=Mass Storage, Driver=uas, 5000M
|__ Port 4: Dev 3, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
...
Sie sehen in meinem Fall den uas
Fahrer.
Wenn UAS nicht verwendet wird, sehen Sie usb-storage
(wie Dev 3 in meinem Fall).
Zusätzlich zu der Antwort von Austinmarton können Sie ausführen
lsusb -v -d VPID | grep -i interface
wobei VPID die in lsusb
gemeldete Anbieter-/Produkt-ID ist . Zum Beispiel:
$ lsusb -v -d 1234:5678 | grep -i interface
Couldn't open device, some information will be missing
bDeviceClass 0 (Defined at Interface level)
bNumInterfaces 1
Interface Descriptor:
bInterfaceNumber 0
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 6
Beachten Sie, dass die einzige bInterfaceProtocol
Der aufgeführte Wert ist 80 Bulk-Only
. Dieses Gerät würde nicht ein UASP-konfiguriertes Gerät sein. Wenn Sie jedoch zusätzlich bInterfaceProtocol 98
sehen , das würde ein UASP-konfiguriertes Gerät sein.
Diese Werte sind dezimal angegeben, aber die Spezifikation bezieht sich auf sie durch ihre Hex-Werte...
50h (80d): USB Mass Storage Class Bulk-Only (BBB) Transport
62h (98d): Allocated by USB-IF for UAS.
Diese Informationen finden Sie in der Mass Storage Specification auf usb.org, Abschnitt 3 Protocol Codes, Table 2 – Mass Storage Transport Protocol.
Ich bin mir jedoch nicht sicher, ob dies Ihre erste oder zweite Frage beantwortet, da unklar ist, ob dieser Wert sowohl auf Computern/Geräten gemeldet wird, die UASP unterstützen, als auch auf solchen, die dies nicht tun.
Um die Antwort zu vervollständigen:
Wenn Ihr Controller dies nicht tut unterstützt UAS, der Linux-Kernel ist so freundlich, Ihnen dies mitzuteilen:
$ dmesg | grep "UAS"
[58669.959610] usb 4-2: USB controller 0000:03:00.0 does not support streams, which are required by the UAS driver.
[58669.959613] usb 4-2: Please try an other USB controller if you wish to use UAS.
Außerdem zeigt lsusb eine Zeile für bInterfaceProtocol 98, aber sie ist leer:
$ lsusb -v -d 0080:a001 | grep -i interface
bDeviceClass 0 (Defined at Interface level)
bNumInterfaces 1
Interface Descriptor:
bInterfaceNumber 0
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Interface Descriptor:
bInterfaceNumber 0
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 98
iInterface 0
HTH,
R. Daneel olivaw,
Der menschliche Roboter im Inneren.