Re: [RFC 0/5] usbfs: Add support for bulk streams
Hi, On 08/22/2013 12:54 AM, Sarah Sharp wrote: On Thu, Aug 15, 2013 at 10:33:42PM +0200, Hans de Goede wrote: Hi, On 08/15/2013 12:42 PM, Hans de Goede wrote: snip What device did you find? I have yet to see a shipping device with streams... I don't know about streams, I'm hoping that having a uasp device means it will also use streams. So far I've been unable to get my hands on anything doing uasp, but it seems the tide is turning and now I've found multiple. Now lets hope that: 1) They really support uasp 2) they use streams (not sure if that is optional or mandatory with uasp). This is the one I've ordered: http://www.amazon.co.uk/Anker%C2%AE-Uspeed-Enclosure-2-5-Inch-Support/dp/B005B5NLZ0/ Correction, this one just arrived today and it despite its product description claiming it does, it does *not* support uasp. This one also looks nice, and plugable is known to be a Linux friendly company, and they should be available in the US: http://www.amazon.co.uk/Plugable-Lay-Flat-Docking-Station-ASM1053E/dp/B00D399JU2 I've ordered this one now ... I just ordered that one as well, and it looks like it doesn't have UAS exposed, even though the descriptors mention it: snip I wonder if this needs a vendor specific command to disconnect and reconnect in UAS mode? Or perhaps a firmware blob? I'll have to connect it under Windows with a USB bus analyzer and see what the driver does. Mine arrived yesterday and it does have UAS support (as alternate setting 1 for interface 0) in its descriptors, without needing any special commands. On a hunch I tried to reproduce your experience with my plugable dock, and if I turn it on without a harddisk in there it does not advertise uasp either, so likely it only advertises uasp if the harddisk is tcq capable (or some such), and without a harddisk it cannot determine that ... I wrote a small libusb program to get the super speed endpoint companion descriptors, and it can do up to 4 bulk streams on the uas data endpoints, so it seems like a perfect device to test uasp and bulk streams with. BTW we really ought to extend lsusb to list the number of streams an endpoint can handle in the endpoint info it prints with -v. I can load the Linux uas driver, after which I hit: https://bugzilla.kernel.org/show_bug.cgi?id=51031 So I'm happy to hear you've one too, I hope it will do uasp once you insert a harddisk, because then hopefully you can fix that bug :) If inserting a harddisk fails, ASMedia controllers have upgradable firmware inside them, so the first thing to try and get uasp working on your model is to try the firmware upgrade: http://plugable.com/2013/04/22/usb3-sata-uasp1-sleep-and-large-volume-firmware-update Note I did not need to do this, but judging from the descriptors you do seem to have slightly different firmware, yours has a manufacturer string of ASM1053E, where as mine has a manufacturer string of Plugable. I've attached my full descriptors (from when a harddisk is inserted into the dock). If that does not work I guess you should contact plugable about this, as said before various people in the FOSS community have good experience with them, they are quite FOSS / Linux friendly. Regards, Hans Bus 007 Device 003: ID 174c:55aa ASMedia Technology Inc. ASMedia 2105 SATA bridge Device Descriptor: bLength18 bDescriptorType 1 bcdUSB 3.00 bDeviceClass0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 9 idVendor 0x174c ASMedia Technology Inc. idProduct 0x55aa ASMedia 2105 SATA bridge bcdDevice1.00 iManufacturer 2 Plugable iProduct3 USB3-SATA-UASP1 iSerial 1 0015 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 121 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 36mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber0 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 bmAttributes2 Transfer TypeBulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Endpoint Descriptor: bLength 7 bDescriptorType 5
Re: [RFC 0/5] usbfs: Add support for bulk streams
On Thu, Aug 15, 2013 at 10:33:42PM +0200, Hans de Goede wrote: Hi, On 08/15/2013 12:42 PM, Hans de Goede wrote: snip What device did you find? I have yet to see a shipping device with streams... I don't know about streams, I'm hoping that having a uasp device means it will also use streams. So far I've been unable to get my hands on anything doing uasp, but it seems the tide is turning and now I've found multiple. Now lets hope that: 1) They really support uasp 2) they use streams (not sure if that is optional or mandatory with uasp). This is the one I've ordered: http://www.amazon.co.uk/Anker%C2%AE-Uspeed-Enclosure-2-5-Inch-Support/dp/B005B5NLZ0/ Correction, this one just arrived today and it despite its product description claiming it does, it does *not* support uasp. This one also looks nice, and plugable is known to be a Linux friendly company, and they should be available in the US: http://www.amazon.co.uk/Plugable-Lay-Flat-Docking-Station-ASM1053E/dp/B00D399JU2 I've ordered this one now ... I just ordered that one as well, and it looks like it doesn't have UAS exposed, even though the descriptors mention it: Bus 004 Device 005: ID 174c:55aa ASMedia Technology Inc. Device Descriptor: bLength18 bDescriptorType 1 bcdUSB 3.00 bDeviceClass0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 9 idVendor 0x174c ASMedia Technology Inc. idProduct 0x55aa bcdDevice1.00 iManufacturer 2 ASM1053E iProduct3 Plugable USB3-SATA-UASP1 iSerial 1 123456789045 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 44 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 36mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber0 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 bmAttributes2 Transfer TypeBulk 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 bmAttributes2 Transfer TypeBulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Binary Object Store Descriptor: bLength 5 bDescriptorType15 wTotalLength 22 bNumDeviceCaps 2 USB 2.0 Extension Device Capability: bLength 7 bDescriptorType16 bDevCapabilityType 2 bmAttributes 0x0002 Link Power Management (LPM) Supported SuperSpeed USB Device Capability: bLength10 bDescriptorType16 bDevCapabilityType 3 bmAttributes 0x00 Latency Tolerance Messages (LTM) Supported 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 bU2DevExitLat2047 micro seconds Device Status: 0x0001 Self Powered I wonder if this needs a vendor specific command to disconnect and reconnect in UAS mode? Or perhaps a firmware blob? I'll have to connect it under Windows with a USB bus analyzer and see what the driver does. Sarah Sharp -- To unsubscribe from this list: send the line unsubscribe linux-usb in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC 0/5] usbfs: Add support for bulk streams
Hi, On 08/14/2013 08:21 PM, Greg KH wrote: On Wed, Aug 14, 2013 at 02:32:01PM +0200, Hans de Goede wrote: Hi All, As discussed a long while back, usbfs is currently missing bulk streams support, and we ought to fix this. So this patch extends the usbfs API with bulk stream support. Please review. At first glance, it looks sane, nice job. Note this patch-set is compile-tested only, since I don't have access to any USB-3 devices using bulk streams. I've 4 different USB-3 disk-enclosures, but none of them supports uasp :| Yesterday I've finally managed to find an USB-3 disk enclosure online which in its description actually advertises uasp support, I should receive that in a couple of days, at which point I can actually test this (which is why I wrote this patch set now). What device did you find? I have yet to see a shipping device with streams... I don't know about streams, I'm hoping that having a uasp device means it will also use streams. So far I've been unable to get my hands on anything doing uasp, but it seems the tide is turning and now I've found multiple. Now lets hope that: 1) They really support uasp 2) they use streams (not sure if that is optional or mandatory with uasp). This is the one I've ordered: http://www.amazon.co.uk/Anker%C2%AE-Uspeed-Enclosure-2-5-Inch-Support/dp/B005B5NLZ0/ This one also looks nice, and plugable is known to be a Linux friendly company, and they should be available in the US: http://www.amazon.co.uk/Plugable-Lay-Flat-Docking-Station-ASM1053E/dp/B00D399JU2 Regards, Hans -- To unsubscribe from this list: send the line unsubscribe linux-usb in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC 0/5] usbfs: Add support for bulk streams
Hi, On 08/15/2013 12:42 PM, Hans de Goede wrote: snip What device did you find? I have yet to see a shipping device with streams... I don't know about streams, I'm hoping that having a uasp device means it will also use streams. So far I've been unable to get my hands on anything doing uasp, but it seems the tide is turning and now I've found multiple. Now lets hope that: 1) They really support uasp 2) they use streams (not sure if that is optional or mandatory with uasp). This is the one I've ordered: http://www.amazon.co.uk/Anker%C2%AE-Uspeed-Enclosure-2-5-Inch-Support/dp/B005B5NLZ0/ Correction, this one just arrived today and it despite its product description claiming it does, it does *not* support uasp. This one also looks nice, and plugable is known to be a Linux friendly company, and they should be available in the US: http://www.amazon.co.uk/Plugable-Lay-Flat-Docking-Station-ASM1053E/dp/B00D399JU2 I've ordered this one now ... Regards, Hans -- To unsubscribe from this list: send the line unsubscribe linux-usb in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC 0/5] usbfs: Add support for bulk streams
On Wed, Aug 14, 2013 at 02:32:01PM +0200, Hans de Goede wrote: Hi All, As discussed a long while back, usbfs is currently missing bulk streams support, and we ought to fix this. So this patch extends the usbfs API with bulk stream support. Please review. At first glance, it looks sane, nice job. Note this patch-set is compile-tested only, since I don't have access to any USB-3 devices using bulk streams. I've 4 different USB-3 disk-enclosures, but none of them supports uasp :| Yesterday I've finally managed to find an USB-3 disk enclosure online which in its description actually advertises uasp support, I should receive that in a couple of days, at which point I can actually test this (which is why I wrote this patch set now). What device did you find? I have yet to see a shipping device with streams... Also, please let us know how your testing goes. thanks, greg k-h -- To unsubscribe from this list: send the line unsubscribe linux-usb in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html