linux/drivers/usb/storage
William Wu cd8274c6b5 usb: uas: ignore UAS for Seagate Expansion Portable Drive
The Seagate Expansion Portable Drive HDD (idVendor=0bc2, idProduct=2321) is reported to fail to work on rockchip platforms
with the following error message when do read/write operation by dd command:

xhci-hcd xhci-hcd.11.auto: Ring expansion failed

According to tkaiser's suggestion[1], we can try to increase the kernel's
coherent-pool memory size to fix this issue. The kernel coherent-pool memory
size was limited at 256KB by default. When set the DEFAULT_DMA_COHERENT_POOL_SIZE
to 1MB, the error "Ring expansion failed" can be fixed, but it still not
work with the other error message:

xhci-hcd xhci-hcd.12.auto: ERROR Unknown event condition 34 for slot 1 ep 3 , HC probably busted
sd 0:0:0:0: [sda] tag#16 uas_eh_abort_handler 0 uas-tag 17 inflight: CMD OUT
...
scsi host0: uas_eh_bus_reset_handler start
xhci-hcd xhci-hcd.12.auto: ERROR Transfer event for disabled endpoint slot 1 ep 6 or incorrect stream ring

Falling back to USB mass storage can solve this problem, so ignore UAS
function of this HDD.

[1] https://forum.armbian.com/topic/4811-uas-mainline-kernel-coherent-pool-memory-size/

Change-Id: I0d817cc3aaea548c2060b323c3077c6cbbd3bb6e
Signed-off-by: William Wu <william.wu@rock-chips.com>
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
2021-06-22 16:06:07 +08:00
..
alauda.c usb: storage: alauda: Remove set but unchecked variable 2020-07-09 16:46:59 +02:00
cypress_atacb.c usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
datafab.c usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
debug.c USB: storage: remove invalid URL from drivers 2018-01-23 10:22:34 +01:00
debug.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
ene_ub6250.c scsi: core: Fix scsi_get/set_resid() interface 2019-11-08 21:34:49 -05:00
freecom.c USB: storage: replace HTTP links with HTTPS ones 2020-07-09 18:06:12 +02:00
initializers.c USB: storage: remove invalid URL from drivers 2018-01-23 10:22:34 +01:00
initializers.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
isd200.c USB: storage: isd200: fix spelling mistake "removeable" -> "removable" 2020-08-18 12:12:54 +02:00
jumpshot.c usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
karma.c usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
Kconfig USB: storage: replace HTTP links with HTTPS ones 2020-07-09 18:06:12 +02:00
Makefile usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
onetouch.c usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
option_ms.c USB: storage: Remove redundant license text 2017-11-04 11:55:38 +01:00
option_ms.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
protocol.c USB: storage: remove invalid URL from drivers 2018-01-23 10:22:34 +01:00
protocol.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
realtek_cr.c usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
scsiglue.c usb: storage: add Genesys Logic 05e3:0749 to unusual_devs.h 2021-06-22 16:05:48 +08:00
scsiglue.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
sddr09.c usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
sddr55.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
shuttle_usbat.c usb-storage: export symbols in USB_STORAGE namespace 2019-09-10 10:30:57 +02:00
sierra_ms.c sierra-ms: do not call scsi_get_host_dev() 2020-05-13 14:20:00 +02:00
sierra_ms.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
transport.c usb-storage: Add quirk to defeat Kindle's automatic unload 2021-03-25 09:04:14 +01:00
transport.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
uas-detect.h USB: storage: fix wording in error message 2020-06-19 08:58:51 +02:00
uas.c USB: UAS: introduce a quirk to set no_write_same 2020-12-21 13:30:08 +01:00
unusual_alauda.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_cypress.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_datafab.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_devs.h usb: storage: add Genesys Logic 05e3:0749 to unusual_devs.h 2021-06-22 16:05:48 +08:00
unusual_ene_ub6250.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_freecom.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_isd200.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_jumpshot.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_karma.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_onetouch.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_realtek.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_sddr09.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_sddr55.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
unusual_uas.h usb: uas: ignore UAS for Seagate Expansion Portable Drive 2021-06-22 16:06:07 +08:00
unusual_usbat.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
usb.c USB: UAS: introduce a quirk to set no_write_same 2020-12-21 13:30:08 +01:00
usb.h USB: Storage: Use the correct style for SPDX License Identifier 2020-04-23 15:28:14 +02:00
usual-tables.c usb-storage: Use const to reduce object data size 2020-02-19 11:08:52 +01:00