unusual_devs.h 58.0 KB
Newer Older
L
Linus Torvalds 已提交
1
/* Driver for USB Mass Storage compliant devices
2
 * Unusual Devices File
L
Linus Torvalds 已提交
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
 *
 * Current development and maintenance by:
 *   (c) 2000-2002 Matthew Dharm (mdharm-usb@one-eyed-alien.net)
 *
 * Initial work by:
 *   (c) 2000 Adam J. Richter (adam@yggdrasil.com), Yggdrasil Computing, Inc.
 *
 * Please see http://www.one-eyed-alien.net/~mdharm/linux-usb for more
 * information about this driver.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the
 * Free Software Foundation; either version 2, or (at your option) any
 * later version.
 *
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program; if not, write to the Free Software Foundation, Inc.,
 * 675 Mass Ave, Cambridge, MA 02139, USA.
 */

/* IMPORTANT NOTE: This file must be included in another file which does
 * the following thing for it to work:
A
Alan Stern 已提交
30 31
 * The UNUSUAL_DEV, COMPLIANT_DEV, and USUAL_DEV macros must be defined
 * before this file is included.
L
Linus Torvalds 已提交
32 33 34 35 36 37 38 39 40 41 42 43 44 45
 */

/* If you edit this file, please try to keep it sorted first by VendorID,
 * then by ProductID.
 *
 * If you want to add an entry for this file, be sure to include the
 * following information:
 *	- a patch that adds the entry for your device, including your
 *	  email address right above the entry (plus maybe a brief
 *	  explanation of the reason for the entry),
 *	- a copy of /proc/bus/usb/devices with your device plugged in
 *	  running with this patch.
 * Send your submission to either Phil Dibowitz <phil@ipom.com> or
 * Alan Stern <stern@rowland.harvard.edu>, and don't forget to CC: the
46 47
 * USB development list <linux-usb@vger.kernel.org> and the USB storage list
 * <usb-storage@lists.one-eyed-alien.net>
L
Linus Torvalds 已提交
48 49
 */

A
Alan Stern 已提交
50 51 52 53 54 55
/* Note: If you add an entry only in order to set the CAPACITY_OK flag,
 * use the COMPLIANT_DEV macro instead of UNUSUAL_DEV.  This is
 * because such entries mark devices which actually work correctly,
 * as opposed to devices that do something strangely or wrongly.
 */

56 57 58 59 60
#if !defined(CONFIG_USB_STORAGE_SDDR09) && \
		!defined(CONFIG_USB_STORAGE_SDDR09_MODULE)
#define NO_SDDR09
#endif

61 62 63
/* patch submitted by Vivian Bregier <Vivian.Bregier@imag.fr>
 */
UNUSUAL_DEV(  0x03eb, 0x2002, 0x0100, 0x0100,
64 65
		"ATMEL",
		"SND1 Storage",
66
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
67
		US_FL_IGNORE_RESIDUE),
68

69 70 71 72
/* Reported by Rodolfo Quesada <rquesada@roqz.net> */
UNUSUAL_DEV(  0x03ee, 0x6906, 0x0003, 0x0003,
		"VIA Technologies Inc.",
		"Mitsumi multi cardreader",
73
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
74 75
		US_FL_IGNORE_RESIDUE ),

76
UNUSUAL_DEV(  0x03f0, 0x0107, 0x0200, 0x0200,
L
Linus Torvalds 已提交
77 78
		"HP",
		"CD-Writer+",
79
		USB_SC_8070, USB_PR_CB, NULL, 0),
L
Linus Torvalds 已提交
80

81 82 83 84
/* Reported by Ben Efros <ben@pc-doctor.com> */
UNUSUAL_DEV(  0x03f0, 0x070c, 0x0000, 0x0000,
		"HP",
		"Personal Media Drive",
85
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
86 87
		US_FL_SANE_SENSE ),

88 89 90 91 92 93
/* Reported by Grant Grundler <grundler@parisc-linux.org>
 * HP r707 camera in "Disk" mode with 2.00.23 or 2.00.24 firmware.
 */
UNUSUAL_DEV(  0x03f0, 0x4002, 0x0001, 0x0001,
		"HP",
		"PhotoSmart R707",
94
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_FIX_CAPACITY),
95

96 97 98 99 100 101 102
/* Reported by Sebastian Kapfer <sebastian_kapfer@gmx.net>
 * and Olaf Hering <olh@suse.de> (different bcd's, same vendor/product)
 * for USB floppies that need the SINGLE_LUN enforcement.
 */
UNUSUAL_DEV(  0x0409, 0x0040, 0x0000, 0x9999,
		"NEC",
		"NEC USB UF000x",
103
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
104 105
		US_FL_SINGLE_LUN ),

106 107 108 109
/* Patch submitted by Mihnea-Costin Grigore <mihnea@zulu.ro> */
UNUSUAL_DEV(  0x040d, 0x6205, 0x0003, 0x0003,
		"VIA Technologies Inc.",
		"USB 2.0 Card Reader",
110
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
111 112
		US_FL_IGNORE_RESIDUE ),

L
Linus Torvalds 已提交
113 114 115 116 117 118 119
/* Deduced by Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
 * Entry needed for flags: US_FL_FIX_INQUIRY because initial inquiry message
 * always fails and confuses drive.
 */
UNUSUAL_DEV(  0x0411, 0x001c, 0x0113, 0x0113,
		"Buffalo",
		"DUB-P40G HDD",
120
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
121 122
		US_FL_FIX_INQUIRY ),

123 124
/* Submitted by Ernestas Vaiciukevicius <ernisv@gmail.com> */
UNUSUAL_DEV(  0x0419, 0x0100, 0x0100, 0x0100,
125 126
		"Samsung Info. Systems America, Inc.",
		"MP3 Player",
127
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
128
		US_FL_IGNORE_RESIDUE ),
129

130 131 132
/* Reported by Orgad Shaneh <orgads@gmail.com> */
UNUSUAL_DEV(  0x0419, 0xaace, 0x0100, 0x0100,
		"Samsung", "MP3 Player",
133
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
134 135
		US_FL_IGNORE_RESIDUE ),

136 137 138 139
/* Reported by Christian Leber <christian@leber.de> */
UNUSUAL_DEV(  0x0419, 0xaaf5, 0x0100, 0x0100,
		"TrekStor",
		"i.Beat 115 2.0",
140
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
141 142
		US_FL_IGNORE_RESIDUE | US_FL_NOT_LOCKABLE ),

P
Phil Dibowitz 已提交
143 144 145 146
/* Reported by Stefan Werner <dustbln@gmx.de> */
UNUSUAL_DEV(  0x0419, 0xaaf6, 0x0100, 0x0100,
		"TrekStor",
		"i.Beat Joy 2.0",
147
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
P
Phil Dibowitz 已提交
148 149
		US_FL_IGNORE_RESIDUE ),

150 151 152
/* Reported by Pete Zaitcev <zaitcev@redhat.com>, bz#176584 */
UNUSUAL_DEV(  0x0420, 0x0001, 0x0100, 0x0100,
		"GENERIC", "MP3 PLAYER", /* MyMusix PD-205 on the outside. */
153
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
154 155
		US_FL_IGNORE_RESIDUE ),

156 157 158
/* Reported by Andrew Nayenko <relan@bk.ru>
 * Updated for new firmware by Phillip Potter <phillipinda@hotmail.com> */
UNUSUAL_DEV(  0x0421, 0x0019, 0x0592, 0x0610,
159 160
		"Nokia",
		"Nokia 6288",
161
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
162 163
		US_FL_MAX_SECTORS_64 ),

164 165 166 167
/* Reported by Mario Rettig <mariorettig@web.de> */
UNUSUAL_DEV(  0x0421, 0x042e, 0x0100, 0x0100,
		"Nokia",
		"Nokia 3250",
168
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
169 170
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),

171 172 173 174
/* Reported by <honkkis@gmail.com> */
UNUSUAL_DEV(  0x0421, 0x0433, 0x0100, 0x0100,
		"Nokia",
		"E70",
175
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
176 177
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),

178 179 180 181
/* Reported by Jon Hart <Jon.Hart@web.de> */
UNUSUAL_DEV(  0x0421, 0x0434, 0x0100, 0x0100,
		"Nokia",
		"E60",
182
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
183 184
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),

185 186 187 188 189
/* Reported by Sumedha Swamy <sumedhaswamy@gmail.com> and
 * Einar Th. Einarsson <einarthered@gmail.com> */
UNUSUAL_DEV(  0x0421, 0x0444, 0x0100, 0x0100,
		"Nokia",
		"N91",
190
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
191 192
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),

193 194 195 196 197
/* Reported by Jiri Slaby <jirislaby@gmail.com> and
 * Rene C. Castberg <Rene@Castberg.org> */
UNUSUAL_DEV(  0x0421, 0x0446, 0x0100, 0x0100,
		"Nokia",
		"N80",
198
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
199 200
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),

201 202 203 204
/* Reported by Matthew Bloch <matthew@bytemark.co.uk> */
UNUSUAL_DEV(  0x0421, 0x044e, 0x0100, 0x0100,
		"Nokia",
		"E61",
205
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
206 207
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),

208
/* Reported by Bardur Arantsson <bardur@scientician.net> */
209
UNUSUAL_DEV(  0x0421, 0x047c, 0x0370, 0x0610,
210 211
		"Nokia",
		"6131",
212
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
213 214
		US_FL_MAX_SECTORS_64 ),

215
/* Reported by Manuel Osdoba <manuel.osdoba@tu-ilmenau.de> */
216
UNUSUAL_DEV( 0x0421, 0x0492, 0x0452, 0x9999,
217 218
		"Nokia",
		"Nokia 6233",
219
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
220 221
		US_FL_MAX_SECTORS_64 ),

222 223 224 225
/* Reported by Alex Corcoles <alex@corcoles.net> */
UNUSUAL_DEV(  0x0421, 0x0495, 0x0370, 0x0370,
		"Nokia",
		"6234",
226
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
227 228
		US_FL_MAX_SECTORS_64 ),

229
#ifdef NO_SDDR09
230 231 232
UNUSUAL_DEV(  0x0436, 0x0005, 0x0100, 0x0100,
		"Microtech",
		"CameraMate",
233
		USB_SC_SCSI, USB_PR_CB, NULL,
234
		US_FL_SINGLE_LUN ),
L
Linus Torvalds 已提交
235 236
#endif

P
Phil Dibowitz 已提交
237 238 239 240 241
/* Patch submitted by Daniel Drake <dsd@gentoo.org>
 * Device reports nonsense bInterfaceProtocol 6 when connected over USB2 */
UNUSUAL_DEV(  0x0451, 0x5416, 0x0100, 0x0100,
		"Neuros Audio",
		"USB 2.0 HD 2.5",
242
		USB_SC_DEVICE, USB_PR_BULK, NULL,
P
Phil Dibowitz 已提交
243 244
		US_FL_NEED_OVERRIDE ),

245 246 247 248 249 250 251 252
/*
 * Pete Zaitcev <zaitcev@yahoo.com>, from Patrick C. F. Ernzer, bz#162559.
 * The key does not actually break, but it returns zero sense which
 * makes our SCSI stack to print confusing messages.
 */
UNUSUAL_DEV(  0x0457, 0x0150, 0x0100, 0x0100,
		"USBest Technology",	/* sold by Transcend */
		"USB Mass Storage Device",
253
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
254

P
Phil Dibowitz 已提交
255 256 257 258 259 260
/*
* Bohdan Linda <bohdan.linda@gmail.com>
* 1GB USB sticks MyFlash High Speed. I have restricted
* the revision to my model only
*/
UNUSUAL_DEV(  0x0457, 0x0151, 0x0100, 0x0100,
261 262
		"USB 2.0",
		"Flash Disk",
263
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
264
		US_FL_NOT_LOCKABLE ),
265

266 267 268 269 270 271 272 273 274
/* Reported by Tamas Kerecsen <kerecsen@bigfoot.com>
 * Obviously the PROM has not been customized by the VAR;
 * the Vendor and Product string descriptors are:
 *	Generic Mass Storage (PROTOTYPE--Remember to change idVendor)
 *	Generic Manufacturer (PROTOTYPE--Remember to change idVendor)
 */
UNUSUAL_DEV(  0x045e, 0xffff, 0x0000, 0x0000,
		"Mitac",
		"GPS",
275
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
276 277
		US_FL_MAX_SECTORS_64 ),

278 279 280 281 282 283 284 285 286
/*
 * This virtual floppy is found in Sun equipment (x4600, x4200m2, etc.)
 * Reported by Pete Zaitcev <zaitcev@redhat.com>
 * This device chokes on both version of MODE SENSE which we have, so
 * use_10_for_ms is not effective, and we use US_FL_NO_WP_DETECT.
 */
UNUSUAL_DEV(  0x046b, 0xff40, 0x0100, 0x0100,
		"AMI",
		"Virtual Floppy",
287
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
288 289
		US_FL_NO_WP_DETECT),

L
Linus Torvalds 已提交
290 291 292 293
/* Patch submitted by Philipp Friedrich <philipp@void.at> */
UNUSUAL_DEV(  0x0482, 0x0100, 0x0100, 0x0100,
		"Kyocera",
		"Finecam S3x",
294
		USB_SC_8070, USB_PR_CB, NULL, US_FL_FIX_INQUIRY),
L
Linus Torvalds 已提交
295 296 297 298 299

/* Patch submitted by Philipp Friedrich <philipp@void.at> */
UNUSUAL_DEV(  0x0482, 0x0101, 0x0100, 0x0100,
		"Kyocera",
		"Finecam S4",
300
		USB_SC_8070, USB_PR_CB, NULL, US_FL_FIX_INQUIRY),
L
Linus Torvalds 已提交
301 302 303 304 305

/* Patch submitted by Stephane Galles <stephane.galles@free.fr> */
UNUSUAL_DEV(  0x0482, 0x0103, 0x0100, 0x0100,
		"Kyocera",
		"Finecam S5",
306
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
L
Linus Torvalds 已提交
307

308 309 310 311
/* Patch submitted by Jens Taprogge <jens.taprogge@taprogge.org> */
UNUSUAL_DEV(  0x0482, 0x0107, 0x0100, 0x0100,
		"Kyocera",
		"CONTAX SL300R T*",
312
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
313 314
		US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE),

L
Linus Torvalds 已提交
315 316 317 318 319
/* Reported by Paul Stewart <stewart@wetlogic.net>
 * This entry is needed because the device reports Sub=ff */
UNUSUAL_DEV(  0x04a4, 0x0004, 0x0001, 0x0001,
		"Hitachi",
		"DVD-CAM DZ-MV100A Camcorder",
320
		USB_SC_SCSI, USB_PR_CB, NULL, US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
321

322 323 324 325 326 327
/* BENQ DC5330
 * Reported by Manuel Fombuena <mfombuena@ya.com> and
 * Frank Copeland <fjc@thingy.apana.org.au> */
UNUSUAL_DEV(  0x04a5, 0x3010, 0x0100, 0x0100,
		"Tekom Technologies, Inc",
		"300_CAMERA",
328
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
329 330
		US_FL_IGNORE_RESIDUE ),

331 332 333 334 335
/* Patch for Nikon coolpix 2000
 * Submitted by Fabien Cosse <fabien.cosse@wanadoo.fr>*/
UNUSUAL_DEV(  0x04b0, 0x0301, 0x0010, 0x0010,
		"NIKON",
		"NIKON DSC E2000",
336
		USB_SC_DEVICE, USB_PR_DEVICE,NULL,
337 338
		US_FL_NOT_LOCKABLE ),

339 340 341 342
/* Reported by Doug Maxey (dwm@austin.ibm.com) */
UNUSUAL_DEV(  0x04b3, 0x4001, 0x0110, 0x0110,
		"IBM",
		"IBM RSA2",
343
		USB_SC_DEVICE, USB_PR_CB, NULL,
344 345
		US_FL_MAX_SECTORS_MIN),

L
Linus Torvalds 已提交
346 347 348 349 350
/* Reported by Simon Levitt <simon@whattf.com>
 * This entry needs Sub and Proto fields */
UNUSUAL_DEV(  0x04b8, 0x0601, 0x0100, 0x0100,
		"Epson",
		"875DC Storage",
351
		USB_SC_SCSI, USB_PR_CB, NULL, US_FL_FIX_INQUIRY),
L
Linus Torvalds 已提交
352 353 354 355 356 357

/* Reported by Khalid Aziz <khalid@gonehiking.org>
 * This entry is needed because the device reports Sub=ff */
UNUSUAL_DEV(  0x04b8, 0x0602, 0x0110, 0x0110,
		"Epson",
		"785EPX Storage",
358
		USB_SC_SCSI, USB_PR_BULK, NULL, US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
359 360 361 362 363 364 365

/* Not sure who reported this originally but
 * Pavel Machek <pavel@ucw.cz> reported that the extra US_FL_SINGLE_LUN
 * flag be added */
UNUSUAL_DEV(  0x04cb, 0x0100, 0x0000, 0x2210,
		"Fujifilm",
		"FinePix 1400Zoom",
366
		USB_SC_UFI, USB_PR_DEVICE, NULL, US_FL_FIX_INQUIRY | US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
367

368 369 370 371 372 373
/* Reported by Ondrej Zary <linux@rainbow-software.org>
 * The device reports one sector more and breaks when that sector is accessed
 */
UNUSUAL_DEV(  0x04ce, 0x0002, 0x026c, 0x026c,
		"ScanLogic",
		"SL11R-IDE",
374
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
375 376
		US_FL_FIX_CAPACITY),

L
Linus Torvalds 已提交
377 378 379 380 381 382 383 384
/* Reported by Kriston Fincher <kriston@airmail.net>
 * Patch submitted by Sean Millichamp <sean@bruenor.org>
 * This is to support the Panasonic PalmCam PV-SD4090
 * This entry is needed because the device reports Sub=ff 
 */
UNUSUAL_DEV(  0x04da, 0x0901, 0x0100, 0x0200,
		"Panasonic",
		"LS-120 Camera",
385
		USB_SC_UFI, USB_PR_DEVICE, NULL, 0),
L
Linus Torvalds 已提交
386 387 388 389 390 391

/* From Yukihiro Nakai, via zaitcev@yahoo.com.
 * This is needed for CB instead of CBI */
UNUSUAL_DEV(  0x04da, 0x0d05, 0x0000, 0x0000,
		"Sharp CE-CW05",
		"CD-R/RW Drive",
392
		USB_SC_8070, USB_PR_CB, NULL, 0),
L
Linus Torvalds 已提交
393 394 395 396 397

/* Reported by Adriaan Penning <a.penning@luon.net> */
UNUSUAL_DEV(  0x04da, 0x2372, 0x0000, 0x9999,
		"Panasonic",
		"DMC-LCx Camera",
398
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
399
		US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ),
400 401 402 403 404

/* Reported by Simeon Simeonov <simeonov_2000@yahoo.com> */
UNUSUAL_DEV(  0x04da, 0x2373, 0x0000, 0x9999,
		"LEICA",
		"D-LUX Camera",
405
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
406
		US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ),
L
Linus Torvalds 已提交
407 408 409 410

/* Most of the following entries were developed with the help of
 * Shuttle/SCM directly.
 */
411
UNUSUAL_DEV(  0x04e6, 0x0001, 0x0200, 0x0200,
L
Linus Torvalds 已提交
412 413
		"Matshita",
		"LS-120",
414
		USB_SC_8020, USB_PR_CB, NULL, 0),
L
Linus Torvalds 已提交
415

416
UNUSUAL_DEV(  0x04e6, 0x0002, 0x0100, 0x0100,
L
Linus Torvalds 已提交
417 418
		"Shuttle",
		"eUSCSI Bridge",
419
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_euscsi_init,
420
		US_FL_SCM_MULT_TARG ),
L
Linus Torvalds 已提交
421

422
#ifdef NO_SDDR09
423 424 425
UNUSUAL_DEV(  0x04e6, 0x0005, 0x0100, 0x0208,
		"SCM Microsystems",
		"eUSB CompactFlash Adapter",
426
		USB_SC_SCSI, USB_PR_CB, NULL,
427
		US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
428 429 430
#endif

/* Reported by Markus Demleitner <msdemlei@cl.uni-heidelberg.de> */
431
UNUSUAL_DEV(  0x04e6, 0x0006, 0x0100, 0x0100,
L
Linus Torvalds 已提交
432 433
		"SCM Microsystems Inc.",
		"eUSB MMC Adapter",
434
		USB_SC_SCSI, USB_PR_CB, NULL,
435
		US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
436 437

/* Reported by Daniel Nouri <dpunktnpunkt@web.de> */
438
UNUSUAL_DEV(  0x04e6, 0x0006, 0x0205, 0x0205,
L
Linus Torvalds 已提交
439 440
		"Shuttle",
		"eUSB MMC Adapter",
441
		USB_SC_SCSI, USB_PR_DEVICE, NULL,
442
		US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
443

444
UNUSUAL_DEV(  0x04e6, 0x0007, 0x0100, 0x0200,
L
Linus Torvalds 已提交
445 446
		"Sony",
		"Hifd",
447
		USB_SC_SCSI, USB_PR_CB, NULL,
448
		US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
449

450
UNUSUAL_DEV(  0x04e6, 0x0009, 0x0200, 0x0200,
L
Linus Torvalds 已提交
451 452
		"Shuttle",
		"eUSB ATA/ATAPI Adapter",
453
		USB_SC_8020, USB_PR_CB, NULL, 0),
L
Linus Torvalds 已提交
454

455
UNUSUAL_DEV(  0x04e6, 0x000a, 0x0200, 0x0200,
L
Linus Torvalds 已提交
456 457
		"Shuttle",
		"eUSB CompactFlash Adapter",
458
		USB_SC_8020, USB_PR_CB, NULL, 0),
L
Linus Torvalds 已提交
459

460
UNUSUAL_DEV(  0x04e6, 0x000B, 0x0100, 0x0100,
L
Linus Torvalds 已提交
461 462
		"Shuttle",
		"eUSCSI Bridge",
463
		USB_SC_SCSI, USB_PR_BULK, usb_stor_euscsi_init,
L
Linus Torvalds 已提交
464 465
		US_FL_SCM_MULT_TARG ), 

466
UNUSUAL_DEV(  0x04e6, 0x000C, 0x0100, 0x0100,
L
Linus Torvalds 已提交
467 468
		"Shuttle",
		"eUSCSI Bridge",
469
		USB_SC_SCSI, USB_PR_BULK, usb_stor_euscsi_init,
470
		US_FL_SCM_MULT_TARG ),
L
Linus Torvalds 已提交
471

472
UNUSUAL_DEV(  0x04e6, 0x0101, 0x0200, 0x0200,
L
Linus Torvalds 已提交
473 474
		"Shuttle",
		"CD-RW Device",
475
		USB_SC_8020, USB_PR_CB, NULL, 0),
L
Linus Torvalds 已提交
476

477 478 479 480
/* Reported by Dmitry Khlystov <adminimus@gmail.com> */
UNUSUAL_DEV(  0x04e8, 0x507c, 0x0220, 0x0220,
		"Samsung",
		"YP-U3",
481
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
482 483
		US_FL_MAX_SECTORS_64),

484 485 486 487 488 489 490
/* Reported by Vitaly Kuznetsov <vitty@altlinux.ru> */
UNUSUAL_DEV(  0x04e8, 0x5122, 0x0000, 0x9999,
		"Samsung",
		"YP-CP3",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_MAX_SECTORS_64 | US_FL_BULK_IGNORE_TAG),

P
Phil Dibowitz 已提交
491 492 493 494 495 496 497
/* Entry and supporting patch by Theodore Kilgore <kilgota@auburn.edu>.
 * Device uses standards-violating 32-byte Bulk Command Block Wrappers and
 * reports itself as "Proprietary SCSI Bulk." Cf. device entry 0x084d:0x0011.
 */
UNUSUAL_DEV(  0x04fc, 0x80c2, 0x0100, 0x0100,
		"Kobian Mercury",
		"Binocam DCB-132",
498
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
P
Phil Dibowitz 已提交
499 500
		US_FL_BULK32),

L
Linus Torvalds 已提交
501 502 503 504
/* Reported by Bob Sass <rls@vectordb.com> -- only rev 1.33 tested */
UNUSUAL_DEV(  0x050d, 0x0115, 0x0133, 0x0133,
		"Belkin",
		"USB SCSI Adaptor",
505
		USB_SC_SCSI, USB_PR_BULK, usb_stor_euscsi_init,
L
Linus Torvalds 已提交
506 507 508 509 510 511 512 513 514
		US_FL_SCM_MULT_TARG ),

/* Iomega Clik! Drive 
 * Reported by David Chatenay <dchatenay@hotmail.com>
 * The reason this is needed is not fully known.
 */
UNUSUAL_DEV(  0x0525, 0xa140, 0x0100, 0x0100,
		"Iomega",
		"USB Clik! 40",
515
		USB_SC_8070, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
516 517
		US_FL_FIX_INQUIRY ),

A
Alan Stern 已提交
518 519 520 521
/* Added by Alan Stern <stern@rowland.harvard.edu> */
COMPLIANT_DEV(0x0525, 0xa4a5, 0x0000, 0x9999,
		"Linux",
		"File-backed Storage Gadget",
522
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
A
Alan Stern 已提交
523 524
		US_FL_CAPACITY_OK ),

L
Linus Torvalds 已提交
525 526 527 528 529
/* Yakumo Mega Image 37
 * Submitted by Stephan Fuhrmann <atomenergie@t-online.de> */
UNUSUAL_DEV(  0x052b, 0x1801, 0x0100, 0x0100,
		"Tekom Technologies, Inc",
		"300_CAMERA",
530
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
531 532 533 534 535 536 537
		US_FL_IGNORE_RESIDUE ),

/* Another Yakumo camera.
 * Reported by Michele Alzetta <michele.alzetta@aliceposta.it> */
UNUSUAL_DEV(  0x052b, 0x1804, 0x0100, 0x0100,
		"Tekom Technologies, Inc",
		"300_CAMERA",
538
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
539 540 541 542 543 544
		US_FL_IGNORE_RESIDUE ),

/* Reported by Iacopo Spalletti <avvisi@spalletti.it> */
UNUSUAL_DEV(  0x052b, 0x1807, 0x0100, 0x0100,
		"Tekom Technologies, Inc",
		"300_CAMERA",
545
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
546 547 548 549 550 551 552
		US_FL_IGNORE_RESIDUE ),

/* Yakumo Mega Image 47
 * Reported by Bjoern Paetzel <kolrabi@kolrabi.de> */
UNUSUAL_DEV(  0x052b, 0x1905, 0x0100, 0x0100,
		"Tekom Technologies, Inc",
		"400_CAMERA",
553
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
554 555 556 557 558 559 560
		US_FL_IGNORE_RESIDUE ),

/* Reported by Paul Ortyl <ortylp@3miasto.net>
 * Note that it's similar to the device above, only different prodID */
UNUSUAL_DEV(  0x052b, 0x1911, 0x0100, 0x0100,
		"Tekom Technologies, Inc",
		"400_CAMERA",
561
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
562 563
		US_FL_IGNORE_RESIDUE ),

564
UNUSUAL_DEV(  0x054c, 0x0010, 0x0106, 0x0450,
L
Linus Torvalds 已提交
565
		"Sony",
566
		"DSC-S30/S70/S75/505V/F505/F707/F717/P8",
567
		USB_SC_SCSI, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
568 569
		US_FL_SINGLE_LUN | US_FL_NOT_LOCKABLE | US_FL_NO_WP_DETECT ),

570 571 572
/* Submitted by Lars Jacob <jacob.lars@googlemail.com>
 * This entry is needed because the device reports Sub=ff */
UNUSUAL_DEV(  0x054c, 0x0010, 0x0500, 0x0610,
573
		"Sony",
574
		"DSC-T1/T5/H5",
575
		USB_SC_8070, USB_PR_DEVICE, NULL,
576
		US_FL_SINGLE_LUN ),
L
Linus Torvalds 已提交
577 578 579


/* Reported by wim@geeks.nl */
580
UNUSUAL_DEV(  0x054c, 0x0025, 0x0100, 0x0100,
L
Linus Torvalds 已提交
581 582
		"Sony",
		"Memorystick NW-MS7",
583
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
584 585 586
		US_FL_SINGLE_LUN ),

/* Submitted by Olaf Hering, <olh@suse.de> SuSE Bugzilla #49049 */
587
UNUSUAL_DEV(  0x054c, 0x002c, 0x0501, 0x2000,
L
Linus Torvalds 已提交
588 589
		"Sony",
		"USB Floppy Drive",
590
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
591 592
		US_FL_SINGLE_LUN ),

593
UNUSUAL_DEV(  0x054c, 0x002d, 0x0100, 0x0100,
L
Linus Torvalds 已提交
594 595
		"Sony",
		"Memorystick MSAC-US1",
596
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
597 598 599
		US_FL_SINGLE_LUN ),

/* Submitted by Klaus Mueller <k.mueller@intershop.de> */
600
UNUSUAL_DEV(  0x054c, 0x002e, 0x0106, 0x0310,
L
Linus Torvalds 已提交
601 602
		"Sony",
		"Handycam",
603
		USB_SC_SCSI, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
604 605 606
		US_FL_SINGLE_LUN ),

/* Submitted by Rajesh Kumble Nayak <nayak@obs-nice.fr> */
607
UNUSUAL_DEV(  0x054c, 0x002e, 0x0500, 0x0500,
L
Linus Torvalds 已提交
608 609
		"Sony",
		"Handycam HC-85",
610
		USB_SC_UFI, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
611 612 613 614 615
		US_FL_SINGLE_LUN ),

UNUSUAL_DEV(  0x054c, 0x0032, 0x0000, 0x9999,
		"Sony",
		"Memorystick MSC-U01N",
616
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
617 618 619 620 621 622
		US_FL_SINGLE_LUN ),

/* Submitted by Michal Mlotek <mlotek@foobar.pl> */
UNUSUAL_DEV(  0x054c, 0x0058, 0x0000, 0x9999,
		"Sony",
		"PEG N760c Memorystick",
623
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
624 625 626 627 628
		US_FL_FIX_INQUIRY ),
		
UNUSUAL_DEV(  0x054c, 0x0069, 0x0000, 0x9999,
		"Sony",
		"Memorystick MSC-U03",
629
		USB_SC_UFI, USB_PR_CB, NULL,
L
Linus Torvalds 已提交
630 631 632 633 634 635
		US_FL_SINGLE_LUN ),

/* Submitted by Nathan Babb <nathan@lexi.com> */
UNUSUAL_DEV(  0x054c, 0x006d, 0x0000, 0x9999,
		"Sony",
		"PEG Mass Storage",
636
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
637 638
		US_FL_FIX_INQUIRY ),

639 640
/* Submitted by Frank Engel <frankie@cse.unsw.edu.au> */
UNUSUAL_DEV(  0x054c, 0x0099, 0x0000, 0x9999,
L
Linus Torvalds 已提交
641 642
		"Sony",
		"PEG Mass Storage",
643
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
644
		US_FL_FIX_INQUIRY ),
645 646 647

/* Submitted by Mike Alborn <malborn@deandra.homeip.net> */
UNUSUAL_DEV(  0x054c, 0x016a, 0x0000, 0x9999,
648 649
		"Sony",
		"PEG Mass Storage",
650
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
651
		US_FL_FIX_INQUIRY ),
L
Linus Torvalds 已提交
652

653 654
/* floppy reports multiple luns */
UNUSUAL_DEV(  0x055d, 0x2020, 0x0000, 0x0210,
655 656
		"SAMSUNG",
		"SFD-321U [FW 0C]",
657
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
658
		US_FL_SINGLE_LUN ),
659

660
/* We keep this entry to force the transport; firmware 3.00 and later is ok. */
661
UNUSUAL_DEV(  0x057b, 0x0000, 0x0000, 0x0299,
L
Linus Torvalds 已提交
662 663
		"Y-E Data",
		"Flashbuster-U",
664
		USB_SC_DEVICE,  USB_PR_CB, NULL,
L
Linus Torvalds 已提交
665 666 667 668 669 670
		US_FL_SINGLE_LUN),

/* Reported by Johann Cardon <johann.cardon@free.fr>
 * This entry is needed only because the device reports
 * bInterfaceClass = 0xff (vendor-specific)
 */
671
UNUSUAL_DEV(  0x057b, 0x0022, 0x0000, 0x9999,
L
Linus Torvalds 已提交
672 673
		"Y-E Data",
		"Silicon Media R/W",
674
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, 0),
L
Linus Torvalds 已提交
675

676 677 678 679
/* Reported by RTE <raszilki@yandex.ru> */
UNUSUAL_DEV(  0x058f, 0x6387, 0x0141, 0x0141,
		"JetFlash",
		"TS1GJF2A/120",
680
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
681 682
		US_FL_MAX_SECTORS_64 ),

L
Linus Torvalds 已提交
683 684 685 686
/* Fabrizio Fellini <fello@libero.it> */
UNUSUAL_DEV(  0x0595, 0x4343, 0x0000, 0x2210,
		"Fujifilm",
		"Digital Camera EX-20 DSC",
687
		USB_SC_8070, USB_PR_DEVICE, NULL, 0 ),
L
Linus Torvalds 已提交
688

689 690 691 692 693 694 695 696 697
/* Reported by Andre Welter <a.r.welter@gmx.de>
 * This antique device predates the release of the Bulk-only Transport
 * spec, and if it gets a Get-Max-LUN then it requires the host to do a
 * Clear-Halt on the bulk endpoints.  The SINGLE_LUN flag will prevent
 * us from sending the request.
 */
UNUSUAL_DEV(  0x059b, 0x0001, 0x0100, 0x0100,
		"Iomega",
		"ZIP 100",
698
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
699 700
		US_FL_SINGLE_LUN ),

701 702 703 704
/* Reported by <Hendryk.Pfeiffer@gmx.de> */
UNUSUAL_DEV(  0x059f, 0x0643, 0x0000, 0x0000,
		"LaCie",
		"DVD+-RW",
705
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
706 707
		US_FL_GO_SLOW ),

L
Linus Torvalds 已提交
708 709 710 711 712 713 714
/* Submitted by Joel Bourquard <numlock@freesurf.ch>
 * Some versions of this device need the SubClass and Protocol overrides
 * while others don't.
 */
UNUSUAL_DEV(  0x05ab, 0x0060, 0x1104, 0x1110,
		"In-System",
		"PyroGate External CD-ROM Enclosure (FCD-523)",
715
		USB_SC_SCSI, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
716 717
		US_FL_NEED_OVERRIDE ),

718 719 720 721 722 723 724 725 726
/* Submitted by Sven Anderson <sven-linux@anderson.de>
 * There are at least four ProductIDs used for iPods, so I added 0x1202 and
 * 0x1204. They just need the US_FL_FIX_CAPACITY. As the bcdDevice appears
 * to change with firmware updates, I changed the range to maximum for all
 * iPod entries.
 */
UNUSUAL_DEV( 0x05ac, 0x1202, 0x0000, 0x9999,
		"Apple",
		"iPod",
727
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
728 729
		US_FL_FIX_CAPACITY ),

L
Linus Torvalds 已提交
730
/* Reported by Avi Kivity <avi@argo.co.il> */
731 732 733
UNUSUAL_DEV( 0x05ac, 0x1203, 0x0000, 0x9999,
		"Apple",
		"iPod",
734
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
735 736 737
		US_FL_FIX_CAPACITY ),

UNUSUAL_DEV( 0x05ac, 0x1204, 0x0000, 0x9999,
L
Linus Torvalds 已提交
738 739
		"Apple",
		"iPod",
740
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
741
		US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ),
L
Linus Torvalds 已提交
742

743
UNUSUAL_DEV( 0x05ac, 0x1205, 0x0000, 0x9999,
L
Linus Torvalds 已提交
744 745
		"Apple",
		"iPod",
746
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
747 748
		US_FL_FIX_CAPACITY ),

749 750 751 752 753 754 755
/*
 * Reported by Tyson Vinson <lornoss@gmail.com>
 * This particular productId is the iPod Nano
 */
UNUSUAL_DEV( 0x05ac, 0x120a, 0x0000, 0x9999,
		"Apple",
		"iPod",
756
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
757 758
		US_FL_FIX_CAPACITY ),

759 760 761 762 763 764 765 766 767
/* Reported by Dan Williams <dcbw@redhat.com>
 * Option N.V. mobile broadband modems
 * Ignore driver CD mode and force into modem mode by default.
 */

/* Globetrotter HSDPA; mass storage shows up as Qualcomm for vendor */
UNUSUAL_DEV(  0x05c6, 0x1000, 0x0000, 0x9999,
		"Option N.V.",
		"Mass Storage",
768
		USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init,
769 770
		0),

L
Linus Torvalds 已提交
771 772 773 774
/* Reported by Blake Matheny <bmatheny@purdue.edu> */
UNUSUAL_DEV(  0x05dc, 0xb002, 0x0000, 0x0113,
		"Lexar",
		"USB CF Reader",
775
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
776 777 778 779 780 781 782 783
		US_FL_FIX_INQUIRY ),

/* The following two entries are for a Genesys USB to IDE
 * converter chip, but it changes its ProductId depending
 * on whether or not a disk or an optical device is enclosed
 * They were originally reported by Alexander Oltu
 * <alexander@all-2.com> and Peter Marks <peter.marks@turner.com>
 * respectively.
784 785 786 787
 *
 * US_FL_GO_SLOW and US_FL_MAX_SECTORS_64 added by Phil Dibowitz
 * <phil@ipom.com> as these flags were made and hard-coded
 * special-cases were pulled from scsiglue.c.
L
Linus Torvalds 已提交
788 789 790 791
 */
UNUSUAL_DEV(  0x05e3, 0x0701, 0x0000, 0xffff,
		"Genesys Logic",
		"USB to IDE Optical",
792
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
793
		US_FL_GO_SLOW | US_FL_MAX_SECTORS_64 | US_FL_IGNORE_RESIDUE ),
L
Linus Torvalds 已提交
794 795 796 797

UNUSUAL_DEV(  0x05e3, 0x0702, 0x0000, 0xffff,
		"Genesys Logic",
		"USB to IDE Disk",
798
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
799
		US_FL_GO_SLOW | US_FL_MAX_SECTORS_64 | US_FL_IGNORE_RESIDUE ),
L
Linus Torvalds 已提交
800

801 802 803 804
/* Reported by Ben Efros <ben@pc-doctor.com> */
UNUSUAL_DEV(  0x05e3, 0x0723, 0x9451, 0x9451,
		"Genesys Logic",
		"USB to SATA",
805
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
806 807
		US_FL_SANE_SENSE ),

L
Linus Torvalds 已提交
808 809 810 811 812
/* Reported by Hanno Boeck <hanno@gmx.de>
 * Taken from the Lycoris Kernel */
UNUSUAL_DEV(  0x0636, 0x0003, 0x0000, 0x9999,
		"Vivitar",
		"Vivicam 35Xx",
813
		USB_SC_SCSI, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
814 815
		US_FL_FIX_INQUIRY ),

816
UNUSUAL_DEV(  0x0644, 0x0000, 0x0100, 0x0100,
L
Linus Torvalds 已提交
817 818
		"TEAC",
		"Floppy Drive",
819
		USB_SC_UFI, USB_PR_CB, NULL, 0 ),
L
Linus Torvalds 已提交
820 821 822 823 824

/* Reported by Darsen Lu <darsen@micro.ee.nthu.edu.tw> */
UNUSUAL_DEV( 0x066f, 0x8000, 0x0001, 0x0001,
		"SigmaTel",
		"USBMSC Audio Player",
825
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
826 827
		US_FL_FIX_CAPACITY ),

A
Alan Stern 已提交
828 829 830 831
/* Reported by Daniel Kukula <daniel.kuku@gmail.com> */
UNUSUAL_DEV( 0x067b, 0x1063, 0x0100, 0x0100,
		"Prolific Technology, Inc.",
		"Prolific Storage Gadget",
832
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
A
Alan Stern 已提交
833 834
		US_FL_BAD_SENSE ),

835 836 837 838
/* Reported by Rogerio Brito <rbrito@ime.usp.br> */
UNUSUAL_DEV( 0x067b, 0x2317, 0x0001, 0x001,
		"Prolific Technology, Inc.",
		"Mass Storage Device",
839
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
840 841
		US_FL_NOT_LOCKABLE ),

L
Linus Torvalds 已提交
842
/* Reported by Richard -=[]=- <micro_flyer@hotmail.com> */
843 844 845
/* Change to bcdDeviceMin (0x0100 to 0x0001) reported by
 * Thomas Bartosik <tbartdev@gmx-topmail.de> */
UNUSUAL_DEV( 0x067b, 0x2507, 0x0001, 0x0100,
L
Linus Torvalds 已提交
846 847
		"Prolific Technology Inc.",
		"Mass Storage Device",
848
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
849 850 851
		US_FL_FIX_CAPACITY | US_FL_GO_SLOW ),

/* Reported by Alex Butcher <alex.butcher@assursys.co.uk> */
852
UNUSUAL_DEV( 0x067b, 0x3507, 0x0001, 0x0101,
L
Linus Torvalds 已提交
853 854
		"Prolific Technology Inc.",
		"ATAPI-6 Bridge Controller",
855
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
856 857 858 859 860 861
		US_FL_FIX_CAPACITY | US_FL_GO_SLOW ),

/* Submitted by Benny Sjostrand <benny@hostmobility.com> */
UNUSUAL_DEV( 0x0686, 0x4011, 0x0001, 0x0001,
		"Minolta",
		"Dimage F300",
862
		USB_SC_SCSI, USB_PR_BULK, NULL, 0 ),
L
Linus Torvalds 已提交
863 864 865

/* Reported by Miguel A. Fosas <amn3s1a@ono.com> */
UNUSUAL_DEV(  0x0686, 0x4017, 0x0001, 0x0001,
866 867
		"Minolta",
		"DIMAGE E223",
868
		USB_SC_SCSI, USB_PR_DEVICE, NULL, 0 ),
L
Linus Torvalds 已提交
869 870 871 872

UNUSUAL_DEV(  0x0693, 0x0005, 0x0100, 0x0100,
		"Hagiwara",
		"Flashgate",
873
		USB_SC_SCSI, USB_PR_BULK, NULL, 0 ),
L
Linus Torvalds 已提交
874

875 876 877 878
/* Reported by David Hamilton <niftimusmaximus@lycos.com> */
UNUSUAL_DEV(  0x069b, 0x3004, 0x0001, 0x0001,
		"Thomson Multimedia Inc.",
		"RCA RD1080 MP3 Player",
879
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
880 881
		US_FL_FIX_CAPACITY ),

882 883 884 885
/* Reported by Adrian Pilchowiec <adi1981@epf.pl> */
UNUSUAL_DEV(  0x071b, 0x3203, 0x0000, 0x0000,
		"RockChip",
		"MP3",
886
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
887 888
		US_FL_NO_WP_DETECT | US_FL_MAX_SECTORS_64 |
		US_FL_NO_READ_CAPACITY_16),
889

890 891 892 893 894 895 896
/* Reported by Jean-Baptiste Onofre <jb@nanthrax.net>
 * Support the following product :
 *    "Dane-Elec MediaTouch"
 */
UNUSUAL_DEV(  0x071b, 0x32bb, 0x0000, 0x0000,
		"RockChip",
		"MTP",
897
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
898 899
		US_FL_NO_WP_DETECT | US_FL_MAX_SECTORS_64),

900 901 902 903 904 905 906 907 908 909 910 911 912
/* Reported by Massimiliano Ghilardi <massimiliano.ghilardi@gmail.com>
 * This USB MP3/AVI player device fails and disconnects if more than 128
 * sectors (64kB) are read/written in a single command, and may be present
 * at least in the following products:
 *   "Magnex Digital Video Panel DVP 1800"
 *   "MP4 AIGO 4GB SLOT SD"
 *   "Teclast TL-C260 MP3"
 *   "i.Meizu PMP MP3/MP4"
 *   "Speed MV8 MP4 Audio Player"
 */
UNUSUAL_DEV(  0x071b, 0x3203, 0x0100, 0x0100,
		"RockChip",
		"ROCK MP3",
913
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
914 915
		US_FL_MAX_SECTORS_64),

916 917 918 919
/* Reported by Olivier Blondeau <zeitoun@gmail.com> */
UNUSUAL_DEV(  0x0727, 0x0306, 0x0100, 0x0100,
		"ATMEL",
		"SND1 Storage",
920
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
921 922
		US_FL_IGNORE_RESIDUE),

923 924
/* Submitted by Roman Hodek <roman@hodek.net> */
UNUSUAL_DEV(  0x0781, 0x0001, 0x0200, 0x0200,
L
Linus Torvalds 已提交
925 926
		"Sandisk",
		"ImageMate SDDR-05a",
927
		USB_SC_SCSI, USB_PR_CB, NULL,
L
Linus Torvalds 已提交
928 929
		US_FL_SINGLE_LUN ),

930 931 932
UNUSUAL_DEV(  0x0781, 0x0002, 0x0009, 0x0009,
		"SanDisk Corporation",
		"ImageMate CompactFlash USB",
933
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
934 935
		US_FL_FIX_CAPACITY ),

L
Linus Torvalds 已提交
936 937 938
UNUSUAL_DEV(  0x0781, 0x0100, 0x0100, 0x0100,
		"Sandisk",
		"ImageMate SDDR-12",
939
		USB_SC_SCSI, USB_PR_CB, NULL,
L
Linus Torvalds 已提交
940 941 942
		US_FL_SINGLE_LUN ),

/* Reported by Eero Volotinen <eero@ping-viini.org> */
943
UNUSUAL_DEV(  0x07ab, 0xfccd, 0x0000, 0x9999,
L
Linus Torvalds 已提交
944 945
		"Freecom Technologies",
		"FHD-Classic",
946
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
947 948
		US_FL_FIX_CAPACITY),

949
UNUSUAL_DEV(  0x07af, 0x0004, 0x0100, 0x0133,
L
Linus Torvalds 已提交
950 951
		"Microtech",
		"USB-SCSI-DB25",
952
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_euscsi_init,
L
Linus Torvalds 已提交
953 954
		US_FL_SCM_MULT_TARG ), 

955
UNUSUAL_DEV(  0x07af, 0x0005, 0x0100, 0x0100,
L
Linus Torvalds 已提交
956 957
		"Microtech",
		"USB-SCSI-HD50",
958
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_euscsi_init,
959
		US_FL_SCM_MULT_TARG ),
L
Linus Torvalds 已提交
960

961
#ifdef NO_SDDR09
962 963 964
UNUSUAL_DEV(  0x07af, 0x0006, 0x0100, 0x0100,
		"Microtech",
		"CameraMate",
965
		USB_SC_SCSI, USB_PR_CB, NULL,
966
		US_FL_SINGLE_LUN ),
L
Linus Torvalds 已提交
967 968 969 970 971 972 973 974 975 976 977
#endif

/* Datafab KECF-USB / Sagatek DCS-CF / Simpletech Flashlink UCF-100
 * Only revision 1.13 tested (same for all of the above devices,
 * based on the Datafab DF-UG-07 chip).  Needed for US_FL_FIX_INQUIRY.
 * Submitted by Marek Michalkiewicz <marekm@amelek.gda.pl>.
 * See also http://martin.wilck.bei.t-online.de/#kecf .
 */
UNUSUAL_DEV(  0x07c4, 0xa400, 0x0000, 0xffff,
		"Datafab",
		"KECF-USB",
978
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
979
		US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY ),
L
Linus Torvalds 已提交
980

981 982 983
/* Reported by Rauch Wolke <rauchwolke@gmx.net>
 * and augmented by binbin <binbinsh@gmail.com> (Bugzilla #12882)
 */
984 985 986
UNUSUAL_DEV(  0x07c4, 0xa4a5, 0x0000, 0xffff,
		"Simple Tech/Datafab",
		"CF+SM Reader",
987
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
988
		US_FL_IGNORE_RESIDUE | US_FL_MAX_SECTORS_64 ),
989

L
Linus Torvalds 已提交
990 991 992 993 994 995 996
/* Casio QV 2x00/3x00/4000/8000 digital still cameras are not conformant
 * to the USB storage specification in two ways:
 * - They tell us they are using transport protocol CBI. In reality they
 *   are using transport protocol CB.
 * - They don't like the INQUIRY command. So we must handle this command
 *   of the SCSI layer ourselves.
 * - Some cameras with idProduct=0x1001 and bcdDevice=0x1000 have
997 998 999
 *   bInterfaceProtocol=0x00 (USB_PR_CBI) while others have 0x01 (USB_PR_CB).
 *   So don't remove the USB_PR_CB override!
 * - Cameras with bcdDevice=0x9009 require the USB_SC_8070 override.
L
Linus Torvalds 已提交
1000 1001 1002 1003
 */
UNUSUAL_DEV( 0x07cf, 0x1001, 0x1000, 0x9999,
		"Casio",
		"QV DigitalCamera",
1004
		USB_SC_8070, USB_PR_CB, NULL,
L
Linus Torvalds 已提交
1005 1006 1007 1008 1009 1010
		US_FL_NEED_OVERRIDE | US_FL_FIX_INQUIRY ),

/* Submitted by Hartmut Wahl <hwahl@hwahl.de>*/
UNUSUAL_DEV( 0x0839, 0x000a, 0x0001, 0x0001,
		"Samsung",
		"Digimax 410",
1011
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1012 1013
		US_FL_FIX_INQUIRY),

1014 1015 1016 1017
/* Reported by Luciano Rocha <luciano@eurotux.com> */
UNUSUAL_DEV( 0x0840, 0x0082, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1018
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1019 1020
		US_FL_FIX_CAPACITY),

1021 1022 1023 1024
/* Reported and patched by Nguyen Anh Quynh <aquynh@gmail.com> */
UNUSUAL_DEV( 0x0840, 0x0084, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1025
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1026 1027
		US_FL_FIX_CAPACITY),

1028 1029 1030 1031
/* Reported by Martijn Hijdra <martijn.hijdra@gmail.com> */
UNUSUAL_DEV( 0x0840, 0x0085, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1032
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1033 1034
		US_FL_FIX_CAPACITY),

L
Linus Torvalds 已提交
1035 1036 1037 1038 1039 1040 1041 1042 1043
/* Entry and supporting patch by Theodore Kilgore <kilgota@auburn.edu>.
 * Flag will support Bulk devices which use a standards-violating 32-byte
 * Command Block Wrapper. Here, the "DC2MEGA" cameras (several brands) with
 * Grandtech GT892x chip, which request "Proprietary SCSI Bulk" support.
 */

UNUSUAL_DEV(  0x084d, 0x0011, 0x0110, 0x0110,
		"Grandtech",
		"DC2MEGA",
1044
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1045 1046
		US_FL_BULK32),

1047 1048 1049 1050 1051 1052 1053 1054
/* Andrew Lunn <andrew@lunn.ch>
 * PanDigital Digital Picture Frame. Does not like ALLOW_MEDIUM_REMOVAL
 * on LUN 4.
 * Note: Vend:Prod clash with "Ltd Maxell WS30 Slim Digital Camera"
*/
UNUSUAL_DEV(  0x0851, 0x1543, 0x0200, 0x0200,
		"PanDigital",
		"Photo Frame",
1055
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1056 1057
		US_FL_NOT_LOCKABLE),

1058 1059 1060 1061
/* Submitted by Jan De Luyck <lkml@kcore.org> */
UNUSUAL_DEV(  0x08bd, 0x1100, 0x0000, 0x0000,
		"CITIZEN",
		"X1DE-USB",
1062
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1063
		US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
1064

1065 1066 1067 1068
/* Submitted by Dylan Taft <d13f00l@gmail.com>
 * US_FL_IGNORE_RESIDUE Needed
 */
UNUSUAL_DEV(  0x08ca, 0x3103, 0x0100, 0x0100,
1069 1070
		"AIPTEK",
		"Aiptek USB Keychain MP3 Player",
1071
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1072
		US_FL_IGNORE_RESIDUE),
1073

L
Linus Torvalds 已提交
1074 1075 1076 1077 1078 1079 1080 1081
/* Entry needed for flags. Moreover, all devices with this ID use
 * bulk-only transport, but _some_ falsely report Control/Bulk instead.
 * One example is "Trumpion Digital Research MYMP3".
 * Submitted by Bjoern Brill <brill(at)fs.math.uni-frankfurt.de>
 */
UNUSUAL_DEV(  0x090a, 0x1001, 0x0100, 0x0100,
		"Trumpion",
		"t33520 USB Flash Card Controller",
1082
		USB_SC_DEVICE, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
1083 1084
		US_FL_NEED_OVERRIDE ),

1085 1086 1087 1088 1089 1090
/* Reported by Filippo Bardelli <filibard@libero.it>
 * The device reports a subclass of RBC, which is wrong.
 */
UNUSUAL_DEV(  0x090a, 0x1050, 0x0100, 0x0100,
		"Trumpion Microelectronics, Inc.",
		"33520 USB Digital Voice Recorder",
1091
		USB_SC_UFI, USB_PR_DEVICE, NULL,
1092 1093
		0),

L
Linus Torvalds 已提交
1094 1095 1096 1097
/* Trumpion Microelectronics MP3 player (felipe_alfaro@linuxmail.org) */
UNUSUAL_DEV( 0x090a, 0x1200, 0x0000, 0x9999,
		"Trumpion",
		"MP3 player",
1098
		USB_SC_RBC, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
1099 1100 1101 1102 1103 1104
		0 ),

/* aeb */
UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff,
		"Feiya",
		"5-in-1 Card Reader",
1105
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1106 1107 1108 1109 1110 1111 1112 1113 1114 1115
		US_FL_FIX_CAPACITY ),

/* This Pentax still camera is not conformant
 * to the USB storage specification: -
 * - It does not like the INQUIRY command. So we must handle this command
 *   of the SCSI layer ourselves.
 * Tested on Rev. 10.00 (0x1000)
 * Submitted by James Courtier-Dutton <James@superbug.demon.co.uk>
 */
UNUSUAL_DEV( 0x0a17, 0x0004, 0x1000, 0x1000,
1116 1117
		"Pentax",
		"Optio 2/3/400",
1118
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1119
		US_FL_FIX_INQUIRY ),
L
Linus Torvalds 已提交
1120

1121 1122
/* These are virtual windows driver CDs, which the zd1211rw driver
 * automatically converts into WLAN devices. */
1123
UNUSUAL_DEV( 0x0ace, 0x2011, 0x0101, 0x0101,
1124 1125
		"ZyXEL",
		"G-220F USB-WLAN Install",
1126
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1127
		US_FL_IGNORE_DEVICE ),
1128

1129 1130 1131
UNUSUAL_DEV( 0x0ace, 0x20ff, 0x0101, 0x0101,
		"SiteCom",
		"WL-117 USB-WLAN Install",
1132
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1133 1134
		US_FL_IGNORE_DEVICE ),

1135 1136 1137 1138 1139 1140 1141 1142 1143
/* Reported by Dan Williams <dcbw@redhat.com>
 * Option N.V. mobile broadband modems
 * Ignore driver CD mode and force into modem mode by default.
 */

/* iCON 225 */
UNUSUAL_DEV(  0x0af0, 0x6971, 0x0000, 0x9999,
		"Option N.V.",
		"Mass Storage",
1144
		USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init,
1145 1146
		0),

1147 1148 1149 1150 1151 1152 1153
/* Reported by F. Aben <f.aben@option.com>
 * This device (wrongly) has a vendor-specific device descriptor.
 * The entry is needed so usb-storage can bind to it's mass-storage
 * interface as an interface driver */
UNUSUAL_DEV( 0x0af0, 0x7401, 0x0000, 0x0000,
		"Option",
		"GI 0401 SD-Card",
1154
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1155 1156
		0 ),

1157
/* Reported by Jan Dumon <j.dumon@option.com>
1158 1159
 * These devices (wrongly) have a vendor-specific device descriptor.
 * These entries are needed so usb-storage can bind to their mass-storage
1160 1161 1162 1163
 * interface as an interface driver */
UNUSUAL_DEV( 0x0af0, 0x7501, 0x0000, 0x0000,
		"Option",
		"GI 0431 SD-Card",
1164
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1165 1166
		0 ),

1167 1168 1169
UNUSUAL_DEV( 0x0af0, 0x7701, 0x0000, 0x0000,
		"Option",
		"GI 0451 SD-Card",
1170
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1171 1172 1173 1174 1175
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7706, 0x0000, 0x0000,
		"Option",
		"GI 0451 SD-Card",
1176
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1177 1178 1179 1180 1181
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7901, 0x0000, 0x0000,
		"Option",
		"GI 0452 SD-Card",
1182
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1183 1184 1185 1186 1187
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7A01, 0x0000, 0x0000,
		"Option",
		"GI 0461 SD-Card",
1188
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1189 1190 1191 1192 1193
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7A05, 0x0000, 0x0000,
		"Option",
		"GI 0461 SD-Card",
1194
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1195 1196 1197 1198 1199
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8300, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1200
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1201 1202 1203 1204 1205
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8302, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1206
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1207 1208 1209 1210 1211
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1212
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1213 1214 1215 1216 1217
		0 ),

UNUSUAL_DEV( 0x0af0, 0xc100, 0x0000, 0x0000,
		"Option",
		"GI 070x SD-Card",
1218
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1219 1220 1221 1222 1223
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd057, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1224
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1225 1226 1227 1228 1229
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd058, 0x0000, 0x0000,
		"Option",
		"GI 1509 SD-Card",
1230
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1231 1232 1233 1234 1235
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd157, 0x0000, 0x0000,
		"Option",
		"GI 1515 SD-Card",
1236
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1237 1238 1239 1240 1241
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd257, 0x0000, 0x0000,
		"Option",
		"GI 1215 SD-Card",
1242
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1243 1244 1245 1246 1247
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd357, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1248
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1249 1250
		0 ),

1251 1252 1253 1254
/* Reported by Ben Efros <ben@pc-doctor.com> */
UNUSUAL_DEV( 0x0bc2, 0x3010, 0x0000, 0x0000,
		"Seagate",
		"FreeAgent Pro",
1255
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1256 1257 1258 1259 1260
		US_FL_SANE_SENSE ),

UNUSUAL_DEV(  0x0d49, 0x7310, 0x0000, 0x9999,
		"Maxtor",
		"USB to SATA",
1261
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1262 1263
		US_FL_SANE_SENSE),

1264 1265 1266 1267 1268 1269 1270
/*
 * Pete Zaitcev <zaitcev@yahoo.com>, bz#164688.
 * The device blatantly ignores LUN and returns 1 in GetMaxLUN.
 */
UNUSUAL_DEV( 0x0c45, 0x1060, 0x0100, 0x0100,
		"Unknown",
		"Unknown",
1271
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1272 1273
		US_FL_SINGLE_LUN ),

L
Linus Torvalds 已提交
1274 1275 1276 1277
/* Submitted by Joris Struyve <joris@struyve.be> */
UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff,
		"Medion",
		"MD 7425",
1278
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1279 1280 1281 1282 1283 1284 1285 1286 1287 1288
		US_FL_FIX_INQUIRY),

/*
 * Entry for Jenoptik JD 5200z3
 *
 * email: car.busse@gmx.de
 */
UNUSUAL_DEV(  0x0d96, 0x5200, 0x0001, 0x0200,
		"Jenoptik",
		"JD 5200 z3",
1289
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
L
Linus Torvalds 已提交
1290

1291 1292 1293 1294
/* Reported by  Jason Johnston <killean@shaw.ca> */
UNUSUAL_DEV(  0x0dc4, 0x0073, 0x0000, 0x0000,
		"Macpower Technology Co.LTD.",
		"USB 2.0 3.5\" DEVICE",
1295
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1296 1297
		US_FL_FIX_CAPACITY),

L
Linus Torvalds 已提交
1298 1299 1300 1301 1302 1303 1304 1305
/* Reported by Lubomir Blaha <tritol@trilogic.cz>
 * I _REALLY_ don't know what 3rd, 4th number and all defines mean, but this
 * works for me. Can anybody correct these values? (I able to test corrected
 * version.)
 */
UNUSUAL_DEV( 0x0dd8, 0x1060, 0x0000, 0xffff,
		"Netac",
		"USB-CF-Card",
1306
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1307 1308
		US_FL_FIX_INQUIRY ),

1309 1310 1311 1312 1313
/* Reported by Edward Chapman (taken from linux-usb mailing list)
   Netac OnlyDisk Mini U2CV2 512MB USB 2.0 Flash Drive */
UNUSUAL_DEV( 0x0dd8, 0xd202, 0x0000, 0x9999,
		"Netac",
		"USB Flash Disk",
1314
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1315 1316 1317
		US_FL_IGNORE_RESIDUE ),


L
Linus Torvalds 已提交
1318 1319 1320 1321 1322
/* Patch by Stephan Walter <stephan.walter@epfl.ch>
 * I don't know why, but it works... */
UNUSUAL_DEV( 0x0dda, 0x0001, 0x0012, 0x0012,
		"WINWARD",
		"Music Disk",
1323
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1324 1325 1326 1327 1328 1329
		US_FL_IGNORE_RESIDUE ),

/* Reported by Ian McConnell <ian at emit.demon.co.uk> */
UNUSUAL_DEV(  0x0dda, 0x0301, 0x0012, 0x0012,
		"PNP_MP3",
		"PNP_MP3 PLAYER",
1330
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1331 1332
		US_FL_IGNORE_RESIDUE ),

1333 1334 1335 1336
/* Reported by Jim McCloskey <mcclosk@ucsc.edu> */
UNUSUAL_DEV( 0x0e21, 0x0520, 0x0100, 0x0100,
		"Cowon Systems",
		"iAUDIO M5",
1337
		USB_SC_DEVICE, USB_PR_BULK, NULL,
1338
		US_FL_NEED_OVERRIDE ),
1339

L
Linus Torvalds 已提交
1340 1341 1342 1343
/* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */
UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300,
		"USB",
		"Solid state disk",
1344
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1345 1346 1347 1348 1349 1350 1351
		US_FL_FIX_INQUIRY ),

/* Submitted by Daniel Drake <dsd@gentoo.org>
 * Reported by dayul on the Gentoo Forums */
UNUSUAL_DEV(  0x0ea0, 0x2168, 0x0110, 0x0110,
		"Ours Technology",
		"Flash Disk",
1352
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1353 1354 1355 1356 1357 1358
		US_FL_IGNORE_RESIDUE ),

/* Reported by Rastislav Stanik <rs_kernel@yahoo.com> */
UNUSUAL_DEV(  0x0ea0, 0x6828, 0x0110, 0x0110,
		"USB",
		"Flash Disk",
1359
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1360 1361
		US_FL_IGNORE_RESIDUE ),

1362 1363 1364 1365 1366
/* Reported by Benjamin Schiller <sbenni@gmx.de>
 * It is also sold by Easylite as DJ 20 */
UNUSUAL_DEV(  0x0ed1, 0x7636, 0x0103, 0x0103,
		"Typhoon",
		"My DJ 1820",
1367
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1368 1369
		US_FL_IGNORE_RESIDUE | US_FL_GO_SLOW | US_FL_MAX_SECTORS_64),

1370 1371 1372 1373 1374 1375 1376 1377
/* Patch by Leonid Petrov mail at lpetrov.net
 * Reported by Robert Spitzenpfeil <robert@spitzenpfeil.org>
 * http://www.qbik.ch/usb/devices/showdev.php?id=1705
 * Updated to 103 device by MJ Ray mjr at phonecoop.coop
 */
UNUSUAL_DEV(  0x0f19, 0x0103, 0x0100, 0x0100,
		"Oracom Co., Ltd",
		"ORC-200M",
1378
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1379 1380
		US_FL_IGNORE_RESIDUE ),

1381 1382 1383 1384 1385 1386 1387
/* David Kuehling <dvdkhlng@gmx.de>:
 * for MP3-Player AVOX WSX-300ER (bought in Japan).  Reports lots of SCSI
 * errors when trying to write.
 */
UNUSUAL_DEV(  0x0f19, 0x0105, 0x0100, 0x0100,
		"C-MEX",
		"A-VOX",
1388
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1389 1390
		US_FL_IGNORE_RESIDUE ),

L
Linus Torvalds 已提交
1391 1392 1393 1394
/* Reported by Michael Stattmann <michael@stattmann.com> */
UNUSUAL_DEV(  0x0fce, 0xd008, 0x0000, 0x0000,
		"Sony Ericsson",
		"V800-Vodafone 802",
1395
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1396 1397
		US_FL_NO_WP_DETECT ),

1398 1399 1400 1401
/* Reported by The Solutor <thesolutor@gmail.com> */
UNUSUAL_DEV(  0x0fce, 0xd0e1, 0x0000, 0x0000,
		"Sony Ericsson",
		"MD400",
1402
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1403 1404
		US_FL_IGNORE_DEVICE),

1405 1406
/* Reported by Jan Mate <mate@fiit.stuba.sk>
 * and by Soeren Sonnenburg <kernel@nn7.de> */
1407 1408 1409
UNUSUAL_DEV(  0x0fce, 0xe030, 0x0000, 0x0000,
		"Sony Ericsson",
		"P990i",
1410
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1411
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),
1412

1413 1414 1415 1416
/* Reported by Emmanuel Vasilakis <evas@forthnet.gr> */
UNUSUAL_DEV(  0x0fce, 0xe031, 0x0000, 0x0000,
		"Sony Ericsson",
		"M600i",
1417
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1418
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
1419

1420 1421 1422 1423
/* Reported by Ricardo Barberis <ricardo@dattatec.com> */
UNUSUAL_DEV(  0x0fce, 0xe092, 0x0000, 0x0000,
		"Sony Ericsson",
		"P1i",
1424
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1425 1426
		US_FL_IGNORE_RESIDUE ),

L
Linus Torvalds 已提交
1427 1428 1429
/* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu>
 * Tested on hardware version 1.10.
 * Entry is needed only for the initializer function override.
1430 1431
 * Devices with bcd > 110 seem to not need it while those
 * with bcd < 110 appear to need it.
L
Linus Torvalds 已提交
1432
 */
1433
UNUSUAL_DEV(  0x1019, 0x0c55, 0x0000, 0x0110,
L
Linus Torvalds 已提交
1434 1435
		"Desknote",
		"UCR-61S2B",
1436
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_ucr61s2b_init,
L
Linus Torvalds 已提交
1437 1438
		0 ),

1439 1440 1441
UNUSUAL_DEV(  0x1058, 0x0704, 0x0000, 0x9999,
		"Western Digital",
		"External HDD",
1442
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1443 1444
		US_FL_SANE_SENSE),

1445 1446 1447 1448 1449 1450
/* Reported by Fabio Venturi <f.venturi@tdnet.it>
 * The device reports a vendor-specific bDeviceClass.
 */
UNUSUAL_DEV(  0x10d6, 0x2200, 0x0100, 0x0100,
		"Actions Semiconductor",
		"Mtp device",
1451
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1452 1453
		0),

1454 1455 1456 1457 1458 1459
/* Reported by Pascal Terjan <pterjan@mandriva.com>
 * Ignore driver CD mode and force into modem mode by default.
 */
UNUSUAL_DEV(  0x1186, 0x3e04, 0x0000, 0x0000,
           "D-Link",
           "USB Mass Storage",
1460
           USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, US_FL_IGNORE_DEVICE),
1461

1462 1463 1464 1465 1466 1467 1468 1469
/* Reported by Kevin Lloyd <linux@sierrawireless.com>
 * Entry is needed for the initializer function override,
 * which instructs the device to load as a modem
 * device.
 */
UNUSUAL_DEV(  0x1199, 0x0fff, 0x0000, 0x9999,
		"Sierra Wireless",
		"USB MMC Storage",
1470
		USB_SC_DEVICE, USB_PR_DEVICE, sierra_ms_init,
1471
		0),
1472

1473 1474 1475 1476 1477 1478 1479
/* Reported by Jaco Kroon <jaco@kroon.co.za>
 * The usb-storage module found on the Digitech GNX4 (and supposedly other
 * devices) misbehaves and causes a bunch of invalid I/O errors.
 */
UNUSUAL_DEV(  0x1210, 0x0003, 0x0100, 0x0100,
		"Digitech HMG",
		"DigiTech Mass Storage",
1480
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1481 1482
		US_FL_IGNORE_RESIDUE ),

1483 1484
/* Reported by fangxiaozhi <huananhu@huawei.com>
 * This brings the HUAWEI data card devices into multi-port mode
1485
 */
1486
UNUSUAL_DEV(  0x12d1, 0x1001, 0x0000, 0x0000,
1487 1488
		"HUAWEI MOBILE",
		"Mass Storage",
1489
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1490
		0),
1491
UNUSUAL_DEV(  0x12d1, 0x1003, 0x0000, 0x0000,
1492 1493
		"HUAWEI MOBILE",
		"Mass Storage",
1494
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1495
		0),
1496
UNUSUAL_DEV(  0x12d1, 0x1004, 0x0000, 0x0000,
1497 1498
		"HUAWEI MOBILE",
		"Mass Storage",
1499
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1500
		0),
1501
UNUSUAL_DEV(  0x12d1, 0x1401, 0x0000, 0x0000,
1502 1503
		"HUAWEI MOBILE",
		"Mass Storage",
1504
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1505
		0),
1506
UNUSUAL_DEV(  0x12d1, 0x1402, 0x0000, 0x0000,
1507 1508
		"HUAWEI MOBILE",
		"Mass Storage",
1509
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1510
		0),
1511
UNUSUAL_DEV(  0x12d1, 0x1403, 0x0000, 0x0000,
1512 1513
		"HUAWEI MOBILE",
		"Mass Storage",
1514
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1515
		0),
1516
UNUSUAL_DEV(  0x12d1, 0x1404, 0x0000, 0x0000,
1517 1518
		"HUAWEI MOBILE",
		"Mass Storage",
1519
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1520
		0),
1521
UNUSUAL_DEV(  0x12d1, 0x1405, 0x0000, 0x0000,
1522 1523
		"HUAWEI MOBILE",
		"Mass Storage",
1524
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1525
		0),
1526
UNUSUAL_DEV(  0x12d1, 0x1406, 0x0000, 0x0000,
1527 1528
		"HUAWEI MOBILE",
		"Mass Storage",
1529
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1530
		0),
1531
UNUSUAL_DEV(  0x12d1, 0x1407, 0x0000, 0x0000,
1532 1533
		"HUAWEI MOBILE",
		"Mass Storage",
1534
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1535
		0),
1536
UNUSUAL_DEV(  0x12d1, 0x1408, 0x0000, 0x0000,
1537 1538
		"HUAWEI MOBILE",
		"Mass Storage",
1539
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1540
		0),
1541
UNUSUAL_DEV(  0x12d1, 0x1409, 0x0000, 0x0000,
1542 1543
		"HUAWEI MOBILE",
		"Mass Storage",
1544
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1545
		0),
1546
UNUSUAL_DEV(  0x12d1, 0x140A, 0x0000, 0x0000,
1547 1548
		"HUAWEI MOBILE",
		"Mass Storage",
1549
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1550
		0),
1551
UNUSUAL_DEV(  0x12d1, 0x140B, 0x0000, 0x0000,
1552 1553
		"HUAWEI MOBILE",
		"Mass Storage",
1554
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1555
		0),
1556
UNUSUAL_DEV(  0x12d1, 0x140C, 0x0000, 0x0000,
1557 1558
		"HUAWEI MOBILE",
		"Mass Storage",
1559
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1560
		0),
1561
UNUSUAL_DEV(  0x12d1, 0x140D, 0x0000, 0x0000,
1562 1563
		"HUAWEI MOBILE",
		"Mass Storage",
1564
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1565
		0),
1566
UNUSUAL_DEV(  0x12d1, 0x140E, 0x0000, 0x0000,
1567 1568
		"HUAWEI MOBILE",
		"Mass Storage",
1569
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1570
		0),
1571
UNUSUAL_DEV(  0x12d1, 0x140F, 0x0000, 0x0000,
1572 1573
		"HUAWEI MOBILE",
		"Mass Storage",
1574
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1575
		0),
1576 1577 1578
UNUSUAL_DEV(  0x12d1, 0x1410, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1579
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1580 1581 1582 1583
		0),
UNUSUAL_DEV(  0x12d1, 0x1411, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1584
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1585 1586 1587 1588
		0),
UNUSUAL_DEV(  0x12d1, 0x1412, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1589
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1590 1591 1592 1593
		0),
UNUSUAL_DEV(  0x12d1, 0x1413, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1594
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1595 1596 1597 1598
		0),
UNUSUAL_DEV(  0x12d1, 0x1414, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1599
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1600 1601 1602 1603
		0),
UNUSUAL_DEV(  0x12d1, 0x1415, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1604
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1605 1606 1607 1608
		0),
UNUSUAL_DEV(  0x12d1, 0x1416, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1609
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1610 1611 1612 1613
		0),
UNUSUAL_DEV(  0x12d1, 0x1417, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1614
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1615 1616 1617 1618
		0),
UNUSUAL_DEV(  0x12d1, 0x1418, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1619
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1620 1621 1622 1623
		0),
UNUSUAL_DEV(  0x12d1, 0x1419, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1624
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1625 1626 1627 1628
		0),
UNUSUAL_DEV(  0x12d1, 0x141A, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1629
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1630 1631 1632 1633
		0),
UNUSUAL_DEV(  0x12d1, 0x141B, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1634
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1635 1636 1637 1638
		0),
UNUSUAL_DEV(  0x12d1, 0x141C, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1639
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1640 1641 1642 1643
		0),
UNUSUAL_DEV(  0x12d1, 0x141D, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1644
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1645 1646 1647 1648
		0),
UNUSUAL_DEV(  0x12d1, 0x141E, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1649
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1650 1651 1652 1653
		0),
UNUSUAL_DEV(  0x12d1, 0x141F, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1654
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1655 1656 1657 1658
		0),
UNUSUAL_DEV(  0x12d1, 0x1420, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1659
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1660 1661 1662 1663
		0),
UNUSUAL_DEV(  0x12d1, 0x1421, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1664
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1665 1666 1667 1668
		0),
UNUSUAL_DEV(  0x12d1, 0x1422, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1669
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1670 1671 1672 1673
		0),
UNUSUAL_DEV(  0x12d1, 0x1423, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1674
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1675 1676 1677 1678
		0),
UNUSUAL_DEV(  0x12d1, 0x1424, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1679
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1680 1681 1682 1683
		0),
UNUSUAL_DEV(  0x12d1, 0x1425, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1684
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1685 1686 1687 1688
		0),
UNUSUAL_DEV(  0x12d1, 0x1426, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1689
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1690 1691 1692 1693
		0),
UNUSUAL_DEV(  0x12d1, 0x1427, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1694
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1695 1696 1697 1698
		0),
UNUSUAL_DEV(  0x12d1, 0x1428, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1699
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1700 1701 1702 1703
		0),
UNUSUAL_DEV(  0x12d1, 0x1429, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1704
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1705 1706 1707 1708
		0),
UNUSUAL_DEV(  0x12d1, 0x142A, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1709
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1710 1711 1712 1713
		0),
UNUSUAL_DEV(  0x12d1, 0x142B, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1714
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1715 1716 1717 1718
		0),
UNUSUAL_DEV(  0x12d1, 0x142C, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1719
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1720 1721 1722 1723
		0),
UNUSUAL_DEV(  0x12d1, 0x142D, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1724
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1725 1726 1727 1728
		0),
UNUSUAL_DEV(  0x12d1, 0x142E, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1729
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1730 1731 1732 1733
		0),
UNUSUAL_DEV(  0x12d1, 0x142F, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1734
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1735 1736 1737 1738
		0),
UNUSUAL_DEV(  0x12d1, 0x1430, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1739
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1740 1741 1742 1743
		0),
UNUSUAL_DEV(  0x12d1, 0x1431, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1744
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1745 1746 1747 1748
		0),
UNUSUAL_DEV(  0x12d1, 0x1432, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1749
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1750 1751 1752 1753
		0),
UNUSUAL_DEV(  0x12d1, 0x1433, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1754
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1755 1756 1757 1758
		0),
UNUSUAL_DEV(  0x12d1, 0x1434, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1759
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1760 1761 1762 1763
		0),
UNUSUAL_DEV(  0x12d1, 0x1435, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1764
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1765 1766 1767 1768
		0),
UNUSUAL_DEV(  0x12d1, 0x1436, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1769
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1770 1771 1772 1773
		0),
UNUSUAL_DEV(  0x12d1, 0x1437, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1774
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1775 1776 1777 1778
		0),
UNUSUAL_DEV(  0x12d1, 0x1438, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1779
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1780 1781 1782 1783
		0),
UNUSUAL_DEV(  0x12d1, 0x1439, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1784
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1785 1786 1787 1788
		0),
UNUSUAL_DEV(  0x12d1, 0x143A, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1789
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1790 1791 1792 1793
		0),
UNUSUAL_DEV(  0x12d1, 0x143B, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1794
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1795 1796 1797 1798
		0),
UNUSUAL_DEV(  0x12d1, 0x143C, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1799
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1800 1801 1802 1803
		0),
UNUSUAL_DEV(  0x12d1, 0x143D, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1804
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1805 1806 1807 1808
		0),
UNUSUAL_DEV(  0x12d1, 0x143E, 0x0000, 0x0000,
		"HUAWEI MOBILE",
		"Mass Storage",
1809
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1810 1811
		0),
UNUSUAL_DEV(  0x12d1, 0x143F, 0x0000, 0x0000,
1812 1813
		"HUAWEI MOBILE",
		"Mass Storage",
1814
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_e220_init,
1815
		0),
1816

1817 1818 1819 1820
/* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */
UNUSUAL_DEV(  0x132b, 0x000b, 0x0001, 0x0001,
		"Minolta",
		"Dimage Z10",
1821
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1822 1823
		0 ),

L
Linus Torvalds 已提交
1824 1825 1826 1827
/* Reported by Kotrla Vitezslav <kotrla@ceb.cz> */
UNUSUAL_DEV(  0x1370, 0x6828, 0x0110, 0x0110,
		"SWISSBIT",
		"Black Silver",
1828
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1829 1830
		US_FL_IGNORE_RESIDUE ),

1831 1832 1833 1834
/* Reported by Francesco Foresti <frafore@tiscali.it> */
UNUSUAL_DEV(  0x14cd, 0x6600, 0x0201, 0x0201,
		"Super Top",
		"IDE DEVICE",
1835
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1836 1837
		US_FL_IGNORE_RESIDUE ),

1838 1839 1840 1841
/* Reported by Alexandre Oliva <oliva@lsd.ic.unicamp.br>
 * JMicron responds to USN and several other SCSI ioctls with a
 * residue that causes subsequent I/O requests to fail.  */
UNUSUAL_DEV(  0x152d, 0x2329, 0x0100, 0x0100,
1842 1843
		"JMicron",
		"USB to ATA/ATAPI Bridge",
1844
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1845
		US_FL_IGNORE_RESIDUE | US_FL_SANE_SENSE ),
1846

1847 1848 1849 1850 1851
/* Reported by Robert Schedel <r.schedel@yahoo.de>
 * Note: this is a 'super top' device like the above 14cd/6600 device */
UNUSUAL_DEV(  0x1652, 0x6600, 0x0201, 0x0201,
		"Teac",
		"HD-35PUK-B",
1852
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1853 1854
		US_FL_IGNORE_RESIDUE ),

1855 1856 1857 1858 1859 1860 1861
/* Reported by Hans de Goede <hdegoede@redhat.com>
 * These Appotech controllers are found in Picture Frames, they provide a
 * (buggy) emulation of a cdrom drive which contains the windows software
 * Uploading of pictures happens over the corresponding /dev/sg device. */
UNUSUAL_DEV( 0x1908, 0x1315, 0x0000, 0x0000,
		"BUILDWIN",
		"Photo Frame",
1862
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1863 1864 1865 1866
		US_FL_BAD_SENSE ),
UNUSUAL_DEV( 0x1908, 0x1320, 0x0000, 0x0000,
		"BUILDWIN",
		"Photo Frame",
1867
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1868
		US_FL_BAD_SENSE ),
1869 1870 1871 1872 1873
UNUSUAL_DEV( 0x1908, 0x3335, 0x0200, 0x0200,
		"BUILDWIN",
		"Photo Frame",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_NO_READ_DISC_INFO ),
1874

1875 1876 1877
UNUSUAL_DEV( 0x2116, 0x0320, 0x0001, 0x0001,
		"ST",
		"2A",
1878
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1879 1880
		US_FL_FIX_CAPACITY),

1881 1882 1883 1884 1885 1886
/* patch submitted by Davide Perini <perini.davide@dpsoftware.org>
 * and Renato Perini <rperini@email.it>
 */
UNUSUAL_DEV(  0x22b8, 0x3010, 0x0001, 0x0001,
		"Motorola",
		"RAZR V3x",
1887
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1888 1889
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),

1890 1891 1892 1893 1894 1895 1896 1897
/*
 * Patch by Constantin Baranov <const@tltsu.ru>
 * Report by Andreas Koenecke.
 * Motorola ROKR Z6.
 */
UNUSUAL_DEV(  0x22b8, 0x6426, 0x0101, 0x0101,
		"Motorola",
		"MSnc.",
1898
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1899 1900
		US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY | US_FL_BULK_IGNORE_TAG),

L
Linus Torvalds 已提交
1901 1902 1903 1904
/* Reported by Radovan Garabik <garabik@kassiopeia.juls.savba.sk> */
UNUSUAL_DEV(  0x2735, 0x100b, 0x0000, 0x9999,
		"MPIO",
		"HS200",
1905
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1906 1907
		US_FL_GO_SLOW ),

1908 1909 1910 1911 1912 1913
/* Reported by Frederic Marchal <frederic.marchal@wowcompany.com>
 * Mio Moov 330
 */
UNUSUAL_DEV(  0x3340, 0xffff, 0x0000, 0x0000,
		"Mitac",
		"Mio DigiWalker USB Sync",
1914
		USB_SC_DEVICE,USB_PR_DEVICE,NULL,
1915 1916
		US_FL_MAX_SECTORS_64 ),

1917 1918 1919 1920
/* Reported by Andrey Rahmatullin <wrar@altlinux.org> */
UNUSUAL_DEV(  0x4102, 0x1020, 0x0100,  0x0100,
		"iRiver",
		"MP3 T10",
1921
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1922 1923
		US_FL_IGNORE_RESIDUE ),

1924 1925 1926 1927
/* Reported by Sergey Pinaev <dfo@antex.ru> */
UNUSUAL_DEV(  0x4102, 0x1059, 0x0000,  0x0000,
               "iRiver",
               "P7K",
1928
               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1929 1930
               US_FL_MAX_SECTORS_64 ),

1931
/*
1932
 * David Härdeman <david@2gen.com>
1933 1934 1935 1936 1937
 * The key makes the SCSI stack print confusing (but harmless) messages
 */
UNUSUAL_DEV(  0x4146, 0xba01, 0x0100, 0x0100,
		"Iomega",
		"Micro Mini 1GB",
1938
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1939

1940 1941 1942 1943
/* Reported by Andrew Simmons <andrew.simmons@gmail.com> */
UNUSUAL_DEV(  0xed06, 0x4500, 0x0001, 0x0001,
		"DataStor",
		"USB4500 FW1.04",
1944
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1945
		US_FL_CAPACITY_HEURISTICS),
1946

1947 1948 1949 1950
/* Reported by Alessio Treglia <quadrispro@ubuntu.com> */
UNUSUAL_DEV( 0xed10, 0x7636, 0x0001, 0x0001,
		"TGE",
		"Digital MP3 Audio Player",
1951
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1952

1953
/* Control/Bulk transport for all SubClass values */
1954 1955 1956 1957 1958 1959
USUAL_DEV(USB_SC_RBC, USB_PR_CB, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_8020, USB_PR_CB, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_QIC, USB_PR_CB, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_UFI, USB_PR_CB, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_8070, USB_PR_CB, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_SCSI, USB_PR_CB, USB_US_TYPE_STOR),
1960 1961

/* Control/Bulk/Interrupt transport for all SubClass values */
1962 1963 1964 1965 1966 1967
USUAL_DEV(USB_SC_RBC, USB_PR_CBI, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_8020, USB_PR_CBI, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_QIC, USB_PR_CBI, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_UFI, USB_PR_CBI, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_8070, USB_PR_CBI, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_SCSI, USB_PR_CBI, USB_US_TYPE_STOR),
1968 1969

/* Bulk-only transport for all SubClass values */
1970 1971 1972 1973 1974 1975
USUAL_DEV(USB_SC_RBC, USB_PR_BULK, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_8020, USB_PR_BULK, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_QIC, USB_PR_BULK, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_UFI, USB_PR_BULK, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_8070, USB_PR_BULK, USB_US_TYPE_STOR),
USUAL_DEV(USB_SC_SCSI, USB_PR_BULK, 0),