[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d6d7fbce-0729-424d-9e2a-870313bb3575@redhat.com>
Date: Sat, 6 Jan 2018 23:12:57 +0100
From: Hans de Goede <hdegoede@...hat.com>
To: Icenowy Zheng <icenowy@...c.io>,
Alan Stern <stern@...land.harvard.edu>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Oliver Neukum <oneukum@...e.com>
Cc: usb-storage@...ts.one-eyed-alien.net, linux-kernel@...r.kernel.org,
linux-sunxi@...glegroups.com, stable@...r.kernel.org
Subject: Re: [PATCH] uas: ignore UAS for Norelsys NS1068(X) chips
Hi,
On 05-01-18 17:56, Icenowy Zheng wrote:
> The UAS mode of Norelsys NS1068(X) is reported to fail to work on
> several platforms with the following error message:
>
> xhci-hcd xhci-hcd.0.auto: ERROR Transfer event for unknown stream ring slot 1 ep 8
> xhci-hcd xhci-hcd.0.auto: @00000000bf04a400 00000000 00000000 1b000000 01098001
>
> And when trying to mount a partition on the disk the disk will
> disconnect from the USB controller, then after re-connecting the device
> will be offlined and not working at all.
>
> Falling back to USB mass storage can solve this problem, so ignore UAS
> function of this chip.
>
> Cc: stable@...r.kernel.org
> Signed-off-by: Icenowy Zheng <icenowy@...c.io>
A quick internet search shows various problems with this device even under
Windows, so yes this seems like a good idea:
Acked-by: Hans de Goede <hdegoede@...hat.com>
> The NS1066 chip from the same vendor seems to also suffer from this
> problem (its USB ID is 2537:1066) according to the report of Armbian
> community. However I don't have such device (I have a USB HDD enclosure
> with USB ID 2537:1066, but it doesn't report UAS function at all; as
> it's
If it has been reported to not work in uas mode then I think adding
the same quirk for the 1066 device-id is a good idea, can you please
submit a patch for that?
Regards,
Hans
>
> The `lsusb -v` result of my NS1068X is shown below:
>
> Bus 004 Device 002: ID 2537:1068
> Device Descriptor:
> bLength 18
> bDescriptorType 1
> bcdUSB 3.00
> bDeviceClass 0
> bDeviceSubClass 0
> bDeviceProtocol 0
> bMaxPacketSize0 9
> idVendor 0x2537
> idProduct 0x1068
> bcdDevice 1.00
> iManufacturer 1 Norelsys
> iProduct 2 NS1068
> iSerial 3 0123456789ABCDE
> bNumConfigurations 1
> Configuration Descriptor:
> bLength 9
> bDescriptorType 2
> wTotalLength 121
> bNumInterfaces 1
> bConfigurationValue 1
> iConfiguration 0
> bmAttributes 0xc0
> Self Powered
> MaxPower 2mA
> Interface Descriptor:
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 0
> bAlternateSetting 0
> bNumEndpoints 2
> bInterfaceClass 8
> bInterfaceSubClass 6
> bInterfaceProtocol 80
> 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
> bInterfaceSubClass 6
> bInterfaceProtocol 98
> iInterface 0
> 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 8
> Status pipe (0x02)
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x06 EP 6 OUT
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0400 1x 1024 bytes
> bInterval 0
> bMaxBurst 15
> Command pipe (0x01)
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x84 EP 4 IN
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0400 1x 1024 bytes
> bInterval 0
> bMaxBurst 15
> MaxStreams 8
> Data-in pipe (0x03)
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x05 EP 5 OUT
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0400 1x 1024 bytes
> bInterval 0
> bMaxBurst 15
> MaxStreams 8
> Data-out pipe (0x04)
> Binary Object Store Descriptor:
> bLength 5
> bDescriptorType 15
> wTotalLength 22
> bNumDeviceCaps 2
> USB 2.0 Extension Device Capability:
> bLength 7
> bDescriptorType 16
> bDevCapabilityType 2
> bmAttributes 0x00000002
> HIRD Link Power Management (LPM) Supported
> 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 2047 micro seconds
> can't get debug descriptor: Resource temporarily unavailable
> Device Status: 0x0001
> Self Powered
>
> drivers/usb/storage/unusual_uas.h | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/drivers/usb/storage/unusual_uas.h b/drivers/usb/storage/unusual_uas.h
> index 9c2ee55ad32e..38434d88954a 100644
> --- a/drivers/usb/storage/unusual_uas.h
> +++ b/drivers/usb/storage/unusual_uas.h
> @@ -80,6 +80,13 @@ UNUSUAL_DEV(0x2109, 0x0711, 0x0000, 0x9999,
> USB_SC_DEVICE, USB_PR_DEVICE, NULL,
> US_FL_NO_ATA_1X),
>
> +/* Reported-by: Icenowy Zheng <icenowy@...c.io> */
> +UNUSUAL_DEV(0x2537, 0x1068, 0x0000, 0x9999,
> + "Norelsys",
> + "NS1068X",
> + USB_SC_DEVICE, USB_PR_DEVICE, NULL,
> + US_FL_IGNORE_UAS),
> +
> /* Reported-by: Takeo Nakayama <javhera@....com> */
> UNUSUAL_DEV(0x357d, 0x7788, 0x0000, 0x9999,
> "JMicron",
>
Powered by blists - more mailing lists