summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/file_storage.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-02-28 15:36:58 -0800
committerDavid S. Miller <davem@davemloft.net>2009-02-28 15:36:58 -0800
commit18963caaf55240d6a0491bdb27b7fef2882ffb15 (patch)
treed0e4365cae0ce401ba826809f4eef0bd755f4f2d /drivers/usb/gadget/file_storage.c
parent98f8948f13b4d27c3695c49ac9a970a77166f9ee (diff)
parent778ef1e6cbb049c9bcbf405936ee6f2b6e451892 (diff)
downloadkernel-common-18963caaf55240d6a0491bdb27b7fef2882ffb15.tar.gz
kernel-common-18963caaf55240d6a0491bdb27b7fef2882ffb15.tar.bz2
kernel-common-18963caaf55240d6a0491bdb27b7fef2882ffb15.zip
Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
Diffstat (limited to 'drivers/usb/gadget/file_storage.c')
-rw-r--r--drivers/usb/gadget/file_storage.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/usb/gadget/file_storage.c b/drivers/usb/gadget/file_storage.c
index b10fa31cc915..1ab9dac7e12d 100644
--- a/drivers/usb/gadget/file_storage.c
+++ b/drivers/usb/gadget/file_storage.c
@@ -3879,7 +3879,11 @@ static int __init check_parameters(struct fsg_dev *fsg)
mod_data.protocol_type = USB_SC_SCSI;
mod_data.protocol_name = "Transparent SCSI";
- if (gadget_is_sh(fsg->gadget))
+ /* Some peripheral controllers are known not to be able to
+ * halt bulk endpoints correctly. If one of them is present,
+ * disable stalls.
+ */
+ if (gadget_is_sh(fsg->gadget) || gadget_is_at91(fsg->gadget))
mod_data.can_stall = 0;
if (mod_data.release == 0xffff) { // Parameter wasn't set