Dear USB Driver module maintainers, I am trying to use an external SSD drive ( Samsung 850 Pro 256GB ) with Linux in it, and booting it through an external USB drive. The environment itself works totally fine and I got not critical issues using it as a daily driver. Although sometimes, the system "hangs" very rarely, but in an annoying fashion that makes a bit sluggish the experience, which translates to weird dmesg errors like these ones: https://unix.stackexchange.com/questions/441668/debian-usb3-hdd-uas-i-o-errors Initially I thought as I'm using an USB 3.0 adapter[0], that maybe the UAS driver was buggy, but at my own surprise I found out actually that the UAS driver is not used at all, although the adapter supports it fine. I am currently using it on a Dell Latitude 7480, and when I use `lsusb` I see that the device is recognized as `JMicron JMS561U` which, by spec, supports UAS ( see http://www.jmicron.com/PDF/brief/jms561u.pdf ). I am wondering if this device was already tested by anyone of you already, and if not, if I can be a tester for a patch to enable UAS on this adapter. Thank you very much for the support, as an attachment ( sabrent-uas-logs.md ) you may find all the logs you may need to further help me debugging this. Best regards, Julian Xhokaxhiu Full Stack Developer, IT Practised (ISCED 4) https://julianxhokaxhiu.com/ --- [0] https://www.sabrent.com/product/EC-SSHD/usb-3-0-ssd-2-5-inch-sata-hard-drive-adapter-optimized-ssd/ Related: https://bugzilla.kernel.org/show_bug.cgi?id=201421
```sh $ dmesg [ 1.256990] usb 2-1: new SuperSpeed Gen 1 USB device number 2 using xhci_hcd [ 1.274774] usb 2-1: New USB device found, idVendor=152d, idProduct=1561, bcdDevice= 2.04 [ 1.274780] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 1.274784] usb 2-1: Product: SABRENT [ 1.274787] usb 2-1: Manufacturer: SABRENT [ 1.274790] usb 2-1: SerialNumber: DB9876543214E [ 1.284264] usb 2-1: UAS is blacklisted for this device, using usb-storage instead [ 1.284271] usb-storage 2-1:1.0: USB Mass Storage device detected [ 1.284482] usb-storage 2-1:1.0: Quirks match for vid 152d pid 1561: 800000 ``` ```sh $ lspci | grep USB 00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21) ``` ```sh $ lsusb Bus 002 Device 002: ID 152d:1561 JMicron Technology Corp. / JMicron USA Technology Corp. JMS561U two ports SATA 6Gb/s bridge ``` ```sh $ lsusb -t /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M ``` ```sh $ lsusb -v -d 152d:1561 Bus 002 Device 002: ID 152d:1561 JMicron Technology Corp. / JMicron USA Technology Corp. JMS561U two ports SATA 6Gb/s bridge Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 3.00 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 9 idVendor 0x152d JMicron Technology Corp. / JMicron USA Technology Corp. idProduct 0x1561 JMS561U two ports SATA 6Gb/s bridge bcdDevice 2.04 iManufacturer 1 SABRENT iProduct 2 SABRENT iSerial 3 DB9876543214E bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 0x0079 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 896mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk-Only iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 1 bNumEndpoints 4 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 98 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 Command pipe (0x01) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 MaxStreams 32 Status pipe (0x02) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 MaxStreams 32 Data-in pipe (0x03) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x04 EP 4 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 7 MaxStreams 32 Data-out pipe (0x04) Binary Object Store Descriptor: bLength 5 bDescriptorType 15 wTotalLength 0x0016 bNumDeviceCaps 2 USB 2.0 Extension Device Capability: bLength 7 bDescriptorType 16 bDevCapabilityType 2 bmAttributes 0x00000f0e BESL Link Power Management (LPM) Supported BESL value 3840 us SuperSpeed USB Device Capability: bLength 10 bDescriptorType 16 bDevCapabilityType 3 bmAttributes 0x00 wSpeedsSupported 0x000e Device can operate at Full Speed (12Mbps) Device can operate at High Speed (480Mbps) Device can operate at SuperSpeed (5Gbps) bFunctionalitySupport 1 Lowest fully-functional device speed is Full Speed (12Mbps) bU1DevExitLat 10 micro seconds bU2DevExitLat 32 micro seconds Device Status: 0x000c (Bus Powered) U1 Enabled U2 Enabled ```