u = IGNORE_UAS (don't bind to the uas driver);
                                w = NO_WP_DETECT (don't test whether the
                                        medium is write-protected).
+                               y = ALWAYS_SYNC (issue a SYNCHRONIZE_CACHE
+                                       even if the device claims no cache)
                        Example: quirks=0419:aaf5:rl,0421:0433:rc
 
        user_debug=     [KNL,ARM]
 
                if (us->fflags & US_FL_BROKEN_FUA)
                        sdev->broken_fua = 1;
 
+               /* Some even totally fail to indicate a cache */
+               if (us->fflags & US_FL_ALWAYS_SYNC) {
+                       /* don't read caching information */
+                       sdev->skip_ms_page_8 = 1;
+                       sdev->skip_ms_page_3f = 1;
+                       /* assume sync is needed */
+                       sdev->wce_default_on = 1;
+               }
        } else {
 
                /*
 
                USB_SC_DEVICE, USB_PR_DEVICE, NULL,
                US_FL_NO_WP_DETECT),
 
+/* Reported by Egbert Eich <eich@suse.com> */
+UNUSUAL_DEV(  0x0480, 0xd010, 0x0100, 0x9999,
+               "Toshiba",
+               "External USB 3.0",
+               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
+               US_FL_ALWAYS_SYNC),
+
 /* Patch submitted by Philipp Friedrich <philipp@void.at> */
 UNUSUAL_DEV(  0x0482, 0x0100, 0x0100, 0x0100,
                "Kyocera",
 
                        US_FL_NO_READ_DISC_INFO | US_FL_NO_READ_CAPACITY_16 |
                        US_FL_INITIAL_READ10 | US_FL_WRITE_CACHE |
                        US_FL_NO_ATA_1X | US_FL_NO_REPORT_OPCODES |
-                       US_FL_MAX_SECTORS_240 | US_FL_NO_REPORT_LUNS);
+                       US_FL_MAX_SECTORS_240 | US_FL_NO_REPORT_LUNS |
+                       US_FL_ALWAYS_SYNC);
 
        p = quirks;
        while (*p) {
                case 'w':
                        f |= US_FL_NO_WP_DETECT;
                        break;
+               case 'y':
+                       f |= US_FL_ALWAYS_SYNC;
+                       break;
                /* Ignore unrecognized flag characters */
                }
        }
 
                /* Sets max_sectors to 240 */                   \
        US_FLAG(NO_REPORT_LUNS, 0x10000000)                     \
                /* Cannot handle REPORT_LUNS */                 \
+       US_FLAG(ALWAYS_SYNC, 0x20000000)                        \
+               /* lies about caching, so always sync */        \
 
 #define US_FLAG(name, value)   US_FL_##name = value ,
 enum { US_DO_ALL_FLAGS };