linux/drivers/usb/storage
Sebastian Andrzej Siewior c898add51c usb/uas: only bind if the hcd supports SG
The UAS driver requires SG support by the HCD operating the device. This
patch stops UAS from operating on a HCD without sg support and prints a
message to let him know.

The spec says:
|For [USB2] backward compatibility, the device shall present [BOT] as
|alternate interface zero (primary) and [UAS] as alternate interface one
|(secondary). A device which does not need backward compatibility with
|[BOT] shall present [UAS] as alternate interface zero. In [USB2]
|systems, the [BOT] driver or an associated filter driver may need to
|issue a SET INTERFACE request for alternate interface one and then allow
|the [UAS] driver to load.

If the user used usb_modeswitch to switch to UAS then he can go back to
BOT or use a different HCD. In case UAS is the only interface then there
is currently no way out.
In future usb_sg_wait() should be extended to provide a non-blocking
interface so it can work with the UAS driver.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
2012-02-02 14:51:00 -08:00
..
alauda.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
cypress_atacb.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
datafab.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
debug.c
debug.h
ene_ub6250.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
freecom.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
initializers.c
initializers.h
isd200.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
jumpshot.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
karma.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
Kconfig usb-storage: fix realtek cr configuration 2011-09-18 01:33:07 -07:00
libusual.c
Makefile Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 2011-03-16 15:19:35 -07:00
onetouch.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
option_ms.c usb: Add module.h to drivers/usb consumers who really use it. 2011-10-31 19:31:25 -04:00
option_ms.h
protocol.c usb-storage: Accept 8020i-protocol commands longer than 12 bytes 2011-11-14 17:05:03 -08:00
protocol.h
realtek_cr.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
scsiglue.c Fix common misspellings 2011-03-31 11:26:23 -03:00
scsiglue.h
sddr09.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
sddr55.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
shuttle_usbat.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
sierra_ms.c usb: Add module.h to drivers/usb consumers who really use it. 2011-10-31 19:31:25 -04:00
sierra_ms.h
transport.c usb: Add export.h for EXPORT_SYMBOL/THIS_MODULE where needed 2011-10-31 19:31:25 -04:00
transport.h
uas.c usb/uas: only bind if the hcd supports SG 2012-02-02 14:51:00 -08:00
unusual_alauda.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_cypress.h USB: usb-storage: unusual_devs update for Cypress ATACB 2011-01-22 18:31:26 -08:00
unusual_datafab.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_devs.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-01-08 13:21:22 -08:00
unusual_ene_ub6250.h Staging: Merge ENE UB6250 SD card codes from keucr to drivers/usb/storage 2011-03-07 13:40:59 -08:00
unusual_freecom.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_isd200.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_jumpshot.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_karma.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_onetouch.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_realtek.h usb-storage: fix up the unusual_realtek device list 2011-05-17 11:56:28 -07:00
unusual_sddr09.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_sddr55.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
unusual_usbat.h USB: storage: Use USB_ prefix instead of US_ prefix 2010-10-22 10:21:49 -07:00
usb.c usb: Re-enable usb-storage support dynamic id 2012-01-24 14:31:04 -08:00
usb.h usb-storage: redo incorrect reads 2011-06-07 09:05:42 -07:00
usual-tables.c Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 2011-03-16 15:19:35 -07:00