aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/storage
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/storage')
-rw-r--r--drivers/usb/storage/scsiglue.c8
-rw-r--r--drivers/usb/storage/unusual_devs.h12
2 files changed, 18 insertions, 2 deletions
diff --git a/drivers/usb/storage/scsiglue.c b/drivers/usb/storage/scsiglue.c
index fde2e71a6ade..a73ea495d5a7 100644
--- a/drivers/usb/storage/scsiglue.c
+++ b/drivers/usb/storage/scsiglue.c
@@ -235,8 +235,12 @@ static int slave_configure(struct scsi_device *sdev)
235 if (!(us->fflags & US_FL_NEEDS_CAP16)) 235 if (!(us->fflags & US_FL_NEEDS_CAP16))
236 sdev->try_rc_10_first = 1; 236 sdev->try_rc_10_first = 1;
237 237
238 /* assume SPC3 or latter devices support sense size > 18 */ 238 /*
239 if (sdev->scsi_level > SCSI_SPC_2) 239 * assume SPC3 or latter devices support sense size > 18
240 * unless US_FL_BAD_SENSE quirk is specified.
241 */
242 if (sdev->scsi_level > SCSI_SPC_2 &&
243 !(us->fflags & US_FL_BAD_SENSE))
240 us->fflags |= US_FL_SANE_SENSE; 244 us->fflags |= US_FL_SANE_SENSE;
241 245
242 /* 246 /*
diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h
index f7f83b21dc74..ea0d27a94afe 100644
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
@@ -1266,6 +1266,18 @@ UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff,
1266 US_FL_FIX_CAPACITY ), 1266 US_FL_FIX_CAPACITY ),
1267 1267
1268/* 1268/*
1269 * Reported by Icenowy Zheng <icenowy@aosc.io>
1270 * The SMI SM3350 USB-UFS bridge controller will enter a wrong state
1271 * that do not process read/write command if a long sense is requested,
1272 * so force to use 18-byte sense.
1273 */
1274UNUSUAL_DEV( 0x090c, 0x3350, 0x0000, 0xffff,
1275 "SMI",
1276 "SM3350 UFS-to-USB-Mass-Storage bridge",
1277 USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1278 US_FL_BAD_SENSE ),
1279
1280/*
1269 * Reported by Paul Hartman <paul.hartman+linux@gmail.com> 1281 * Reported by Paul Hartman <paul.hartman+linux@gmail.com>
1270 * This card reader returns "Illegal Request, Logical Block Address 1282 * This card reader returns "Illegal Request, Logical Block Address
1271 * Out of Range" for the first READ(10) after a new card is inserted. 1283 * Out of Range" for the first READ(10) after a new card is inserted.