uas: Set max_sectors_240 quirk for ASM1053 devices
authorHans de Goede <hdegoede@redhat.com>
Tue, 21 Apr 2015 09:20:32 +0000 (11:20 +0200)
committerSasha Levin <sasha.levin@oracle.com>
Sun, 17 May 2015 23:12:40 +0000 (19:12 -0400)
[ Upstream commit 8e779c6c4a398763c21371fe40f649206041dc1e ]

Testing has shown that ASM1053 devices do not work properly with transfers
larger than 240 sectors, so set max_sectors to 240 on these.

Cc: stable@vger.kernel.org # 3.16
Reported-by: Steve Bangert <sbangert@frontier.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Tested-by: Steve Bangert <sbangert@frontier.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
drivers/usb/storage/uas-detect.h

index 856cc1f94a314a349e76c9a4ba1ca470947a1463..a451903a6857d3442a67d89bc7ae33fd2346aae8 100644 (file)
@@ -81,6 +81,9 @@ static int uas_use_uas_driver(struct usb_interface *intf,
                        flags |= US_FL_IGNORE_UAS;
                } else if (usb_ss_max_streams(&eps[1]->ss_ep_comp) == 32) {
                        flags |= US_FL_IGNORE_UAS;
+               } else {
+                       /* ASM1053, these have issues with large transfers */
+                       flags |= US_FL_MAX_SECTORS_240;
                }
        }