Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

uas: Set max_sectors_240 quirk for ASM1053 devices

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>

authored by

Hans de Goede and committed by
Greg Kroah-Hartman
8e779c6c ee136af4

+4 -1
+4 -1
drivers/usb/storage/uas-detect.h
··· 74 74 * this writing the following versions exist: 75 75 * ASM1051 - no uas support version 76 76 * ASM1051 - with broken (*) uas support 77 - * ASM1053 - with working uas support 77 + * ASM1053 - with working uas support, but problems with large xfers 78 78 * ASM1153 - with working uas support 79 79 * 80 80 * Devices with these chips re-use a number of device-ids over the ··· 104 104 } else if (usb_ss_max_streams(&eps[1]->ss_ep_comp) == 32) { 105 105 /* Possibly an ASM1051, disable uas */ 106 106 flags |= US_FL_IGNORE_UAS; 107 + } else { 108 + /* ASM1053, these have issues with large transfers */ 109 + flags |= US_FL_MAX_SECTORS_240; 107 110 } 108 111 } 109 112