MLK-12883 usb: limit USB_MAX_XFER_BLK to 256
For Some USB mass storage devices, such as: " - Kingston DataTraveler 2.0 001D7D06CF09B04199C7B3EA - Class: (from Interface) Mass Storage - PacketSize: 64 Configurations: 1 - Vendor: 0x0930 Product 0x6545 Version 1.16 " When `usb read 0x80000000 0 0x2000`, we met "EHCI timed out on TD - token=0x80008d80". The devices does not support scsi VPD page, we are not able to get the maximum transfer length for READ(10)/WRITE(10). So we limit this to 256 blocks as READ(6). Signed-off-by: Peng Fan <peng.fan@nxp.com>
This commit is contained in:
@ -18,6 +18,8 @@
|
||||
* BBB support based on /sys/dev/usb/umass.c from
|
||||
* FreeBSD.
|
||||
*
|
||||
* Copyright (C) 2016 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*/
|
||||
|
||||
@ -103,7 +105,7 @@ struct us_data {
|
||||
* enough free heap space left, but the SCSI READ(10) and WRITE(10) commands are
|
||||
* limited to 65535 blocks.
|
||||
*/
|
||||
#define USB_MAX_XFER_BLK 65535
|
||||
#define USB_MAX_XFER_BLK 256
|
||||
#else
|
||||
#define USB_MAX_XFER_BLK 20
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user