unusual_devs.h 57.6 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),

P
Phil Dibowitz 已提交
484 485 486 487 488 489 490
/* 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",
491
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
P
Phil Dibowitz 已提交
492 493
		US_FL_BULK32),

L
Linus Torvalds 已提交
494 495 496 497
/* Reported by Bob Sass <rls@vectordb.com> -- only rev 1.33 tested */
UNUSUAL_DEV(  0x050d, 0x0115, 0x0133, 0x0133,
		"Belkin",
		"USB SCSI Adaptor",
498
		USB_SC_SCSI, USB_PR_BULK, usb_stor_euscsi_init,
L
Linus Torvalds 已提交
499 500 501 502 503 504 505 506 507
		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",
508
		USB_SC_8070, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
509 510
		US_FL_FIX_INQUIRY ),

A
Alan Stern 已提交
511 512 513 514
/* Added by Alan Stern <stern@rowland.harvard.edu> */
COMPLIANT_DEV(0x0525, 0xa4a5, 0x0000, 0x9999,
		"Linux",
		"File-backed Storage Gadget",
515
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
A
Alan Stern 已提交
516 517
		US_FL_CAPACITY_OK ),

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

/* Reported by Iacopo Spalletti <avvisi@spalletti.it> */
UNUSUAL_DEV(  0x052b, 0x1807, 0x0100, 0x0100,
		"Tekom Technologies, Inc",
		"300_CAMERA",
538
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
539 540 541 542 543 544 545
		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",
546
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
547 548 549 550 551 552 553
		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",
554
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
555 556
		US_FL_IGNORE_RESIDUE ),

557
UNUSUAL_DEV(  0x054c, 0x0010, 0x0106, 0x0450,
L
Linus Torvalds 已提交
558
		"Sony",
559
		"DSC-S30/S70/S75/505V/F505/F707/F717/P8",
560
		USB_SC_SCSI, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
561 562
		US_FL_SINGLE_LUN | US_FL_NOT_LOCKABLE | US_FL_NO_WP_DETECT ),

563 564 565
/* Submitted by Lars Jacob <jacob.lars@googlemail.com>
 * This entry is needed because the device reports Sub=ff */
UNUSUAL_DEV(  0x054c, 0x0010, 0x0500, 0x0610,
566
		"Sony",
567
		"DSC-T1/T5/H5",
568
		USB_SC_8070, USB_PR_DEVICE, NULL,
569
		US_FL_SINGLE_LUN ),
L
Linus Torvalds 已提交
570 571 572


/* Reported by wim@geeks.nl */
573
UNUSUAL_DEV(  0x054c, 0x0025, 0x0100, 0x0100,
L
Linus Torvalds 已提交
574 575
		"Sony",
		"Memorystick NW-MS7",
576
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
577 578 579
		US_FL_SINGLE_LUN ),

/* Submitted by Olaf Hering, <olh@suse.de> SuSE Bugzilla #49049 */
580
UNUSUAL_DEV(  0x054c, 0x002c, 0x0501, 0x2000,
L
Linus Torvalds 已提交
581 582
		"Sony",
		"USB Floppy Drive",
583
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
584 585
		US_FL_SINGLE_LUN ),

586
UNUSUAL_DEV(  0x054c, 0x002d, 0x0100, 0x0100,
L
Linus Torvalds 已提交
587 588
		"Sony",
		"Memorystick MSAC-US1",
589
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
590 591 592
		US_FL_SINGLE_LUN ),

/* Submitted by Klaus Mueller <k.mueller@intershop.de> */
593
UNUSUAL_DEV(  0x054c, 0x002e, 0x0106, 0x0310,
L
Linus Torvalds 已提交
594 595
		"Sony",
		"Handycam",
596
		USB_SC_SCSI, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
597 598 599
		US_FL_SINGLE_LUN ),

/* Submitted by Rajesh Kumble Nayak <nayak@obs-nice.fr> */
600
UNUSUAL_DEV(  0x054c, 0x002e, 0x0500, 0x0500,
L
Linus Torvalds 已提交
601 602
		"Sony",
		"Handycam HC-85",
603
		USB_SC_UFI, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
604 605 606 607 608
		US_FL_SINGLE_LUN ),

UNUSUAL_DEV(  0x054c, 0x0032, 0x0000, 0x9999,
		"Sony",
		"Memorystick MSC-U01N",
609
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
610 611 612 613 614 615
		US_FL_SINGLE_LUN ),

/* Submitted by Michal Mlotek <mlotek@foobar.pl> */
UNUSUAL_DEV(  0x054c, 0x0058, 0x0000, 0x9999,
		"Sony",
		"PEG N760c Memorystick",
616
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
617 618 619 620 621
		US_FL_FIX_INQUIRY ),
		
UNUSUAL_DEV(  0x054c, 0x0069, 0x0000, 0x9999,
		"Sony",
		"Memorystick MSC-U03",
622
		USB_SC_UFI, USB_PR_CB, NULL,
L
Linus Torvalds 已提交
623 624 625 626 627 628
		US_FL_SINGLE_LUN ),

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

632 633
/* Submitted by Frank Engel <frankie@cse.unsw.edu.au> */
UNUSUAL_DEV(  0x054c, 0x0099, 0x0000, 0x9999,
L
Linus Torvalds 已提交
634 635
		"Sony",
		"PEG Mass Storage",
636
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
637
		US_FL_FIX_INQUIRY ),
638 639 640

/* Submitted by Mike Alborn <malborn@deandra.homeip.net> */
UNUSUAL_DEV(  0x054c, 0x016a, 0x0000, 0x9999,
641 642
		"Sony",
		"PEG Mass Storage",
643
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
644
		US_FL_FIX_INQUIRY ),
L
Linus Torvalds 已提交
645

646 647
/* floppy reports multiple luns */
UNUSUAL_DEV(  0x055d, 0x2020, 0x0000, 0x0210,
648 649
		"SAMSUNG",
		"SFD-321U [FW 0C]",
650
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
651
		US_FL_SINGLE_LUN ),
652

653
/* We keep this entry to force the transport; firmware 3.00 and later is ok. */
654
UNUSUAL_DEV(  0x057b, 0x0000, 0x0000, 0x0299,
L
Linus Torvalds 已提交
655 656
		"Y-E Data",
		"Flashbuster-U",
657
		USB_SC_DEVICE,  USB_PR_CB, NULL,
L
Linus Torvalds 已提交
658 659 660 661 662 663
		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)
 */
664
UNUSUAL_DEV(  0x057b, 0x0022, 0x0000, 0x9999,
L
Linus Torvalds 已提交
665 666
		"Y-E Data",
		"Silicon Media R/W",
667
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, 0),
L
Linus Torvalds 已提交
668

669 670 671 672
/* Reported by RTE <raszilki@yandex.ru> */
UNUSUAL_DEV(  0x058f, 0x6387, 0x0141, 0x0141,
		"JetFlash",
		"TS1GJF2A/120",
673
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
674 675
		US_FL_MAX_SECTORS_64 ),

L
Linus Torvalds 已提交
676 677 678 679
/* Fabrizio Fellini <fello@libero.it> */
UNUSUAL_DEV(  0x0595, 0x4343, 0x0000, 0x2210,
		"Fujifilm",
		"Digital Camera EX-20 DSC",
680
		USB_SC_8070, USB_PR_DEVICE, NULL, 0 ),
L
Linus Torvalds 已提交
681

682 683 684 685 686 687 688 689 690
/* 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",
691
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
692 693
		US_FL_SINGLE_LUN ),

694 695 696 697
/* Reported by <Hendryk.Pfeiffer@gmx.de> */
UNUSUAL_DEV(  0x059f, 0x0643, 0x0000, 0x0000,
		"LaCie",
		"DVD+-RW",
698
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
699 700
		US_FL_GO_SLOW ),

L
Linus Torvalds 已提交
701 702 703 704 705 706 707
/* 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)",
708
		USB_SC_SCSI, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
709 710
		US_FL_NEED_OVERRIDE ),

711 712 713 714 715 716 717 718 719
/* 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",
720
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
721 722
		US_FL_FIX_CAPACITY ),

L
Linus Torvalds 已提交
723
/* Reported by Avi Kivity <avi@argo.co.il> */
724 725 726
UNUSUAL_DEV( 0x05ac, 0x1203, 0x0000, 0x9999,
		"Apple",
		"iPod",
727
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
728 729 730
		US_FL_FIX_CAPACITY ),

UNUSUAL_DEV( 0x05ac, 0x1204, 0x0000, 0x9999,
L
Linus Torvalds 已提交
731 732
		"Apple",
		"iPod",
733
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
734
		US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ),
L
Linus Torvalds 已提交
735

736
UNUSUAL_DEV( 0x05ac, 0x1205, 0x0000, 0x9999,
L
Linus Torvalds 已提交
737 738
		"Apple",
		"iPod",
739
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
740 741
		US_FL_FIX_CAPACITY ),

742 743 744 745 746 747 748
/*
 * Reported by Tyson Vinson <lornoss@gmail.com>
 * This particular productId is the iPod Nano
 */
UNUSUAL_DEV( 0x05ac, 0x120a, 0x0000, 0x9999,
		"Apple",
		"iPod",
749
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
750 751
		US_FL_FIX_CAPACITY ),

752 753 754 755 756 757 758 759 760
/* 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",
761
		USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init,
762 763
		0),

L
Linus Torvalds 已提交
764 765 766 767
/* Reported by Blake Matheny <bmatheny@purdue.edu> */
UNUSUAL_DEV(  0x05dc, 0xb002, 0x0000, 0x0113,
		"Lexar",
		"USB CF Reader",
768
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
769 770 771 772 773 774 775 776
		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.
777 778 779 780
 *
 * 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 已提交
781 782 783 784
 */
UNUSUAL_DEV(  0x05e3, 0x0701, 0x0000, 0xffff,
		"Genesys Logic",
		"USB to IDE Optical",
785
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
786
		US_FL_GO_SLOW | US_FL_MAX_SECTORS_64 | US_FL_IGNORE_RESIDUE ),
L
Linus Torvalds 已提交
787 788 789 790

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

794 795 796 797
/* Reported by Ben Efros <ben@pc-doctor.com> */
UNUSUAL_DEV(  0x05e3, 0x0723, 0x9451, 0x9451,
		"Genesys Logic",
		"USB to SATA",
798
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
799 800
		US_FL_SANE_SENSE ),

L
Linus Torvalds 已提交
801 802 803 804 805
/* Reported by Hanno Boeck <hanno@gmx.de>
 * Taken from the Lycoris Kernel */
UNUSUAL_DEV(  0x0636, 0x0003, 0x0000, 0x9999,
		"Vivitar",
		"Vivicam 35Xx",
806
		USB_SC_SCSI, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
807 808
		US_FL_FIX_INQUIRY ),

809
UNUSUAL_DEV(  0x0644, 0x0000, 0x0100, 0x0100,
L
Linus Torvalds 已提交
810 811
		"TEAC",
		"Floppy Drive",
812
		USB_SC_UFI, USB_PR_CB, NULL, 0 ),
L
Linus Torvalds 已提交
813 814 815 816 817

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

A
Alan Stern 已提交
821 822 823 824
/* Reported by Daniel Kukula <daniel.kuku@gmail.com> */
UNUSUAL_DEV( 0x067b, 0x1063, 0x0100, 0x0100,
		"Prolific Technology, Inc.",
		"Prolific Storage Gadget",
825
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
A
Alan Stern 已提交
826 827
		US_FL_BAD_SENSE ),

828 829 830 831
/* Reported by Rogerio Brito <rbrito@ime.usp.br> */
UNUSUAL_DEV( 0x067b, 0x2317, 0x0001, 0x001,
		"Prolific Technology, Inc.",
		"Mass Storage Device",
832
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
833 834
		US_FL_NOT_LOCKABLE ),

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

/* Reported by Alex Butcher <alex.butcher@assursys.co.uk> */
845
UNUSUAL_DEV( 0x067b, 0x3507, 0x0001, 0x0101,
L
Linus Torvalds 已提交
846 847
		"Prolific Technology Inc.",
		"ATAPI-6 Bridge Controller",
848
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
849 850 851 852 853 854
		US_FL_FIX_CAPACITY | US_FL_GO_SLOW ),

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

/* Reported by Miguel A. Fosas <amn3s1a@ono.com> */
UNUSUAL_DEV(  0x0686, 0x4017, 0x0001, 0x0001,
859 860
		"Minolta",
		"DIMAGE E223",
861
		USB_SC_SCSI, USB_PR_DEVICE, NULL, 0 ),
L
Linus Torvalds 已提交
862 863 864 865

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

868 869 870 871
/* Reported by David Hamilton <niftimusmaximus@lycos.com> */
UNUSUAL_DEV(  0x069b, 0x3004, 0x0001, 0x0001,
		"Thomson Multimedia Inc.",
		"RCA RD1080 MP3 Player",
872
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
873 874
		US_FL_FIX_CAPACITY ),

875 876 877 878
/* Reported by Adrian Pilchowiec <adi1981@epf.pl> */
UNUSUAL_DEV(  0x071b, 0x3203, 0x0000, 0x0000,
		"RockChip",
		"MP3",
879
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
880 881
		US_FL_NO_WP_DETECT | US_FL_MAX_SECTORS_64),

882 883 884 885 886 887 888
/* Reported by Jean-Baptiste Onofre <jb@nanthrax.net>
 * Support the following product :
 *    "Dane-Elec MediaTouch"
 */
UNUSUAL_DEV(  0x071b, 0x32bb, 0x0000, 0x0000,
		"RockChip",
		"MTP",
889
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
890 891
		US_FL_NO_WP_DETECT | US_FL_MAX_SECTORS_64),

892 893 894 895 896 897 898 899 900 901 902 903 904
/* 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",
905
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
906 907
		US_FL_MAX_SECTORS_64),

908 909 910 911
/* Reported by Olivier Blondeau <zeitoun@gmail.com> */
UNUSUAL_DEV(  0x0727, 0x0306, 0x0100, 0x0100,
		"ATMEL",
		"SND1 Storage",
912
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
913 914
		US_FL_IGNORE_RESIDUE),

915 916
/* Submitted by Roman Hodek <roman@hodek.net> */
UNUSUAL_DEV(  0x0781, 0x0001, 0x0200, 0x0200,
L
Linus Torvalds 已提交
917 918
		"Sandisk",
		"ImageMate SDDR-05a",
919
		USB_SC_SCSI, USB_PR_CB, NULL,
L
Linus Torvalds 已提交
920 921
		US_FL_SINGLE_LUN ),

922 923 924
UNUSUAL_DEV(  0x0781, 0x0002, 0x0009, 0x0009,
		"SanDisk Corporation",
		"ImageMate CompactFlash USB",
925
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
926 927
		US_FL_FIX_CAPACITY ),

L
Linus Torvalds 已提交
928 929 930
UNUSUAL_DEV(  0x0781, 0x0100, 0x0100, 0x0100,
		"Sandisk",
		"ImageMate SDDR-12",
931
		USB_SC_SCSI, USB_PR_CB, NULL,
L
Linus Torvalds 已提交
932 933 934
		US_FL_SINGLE_LUN ),

/* Reported by Eero Volotinen <eero@ping-viini.org> */
935
UNUSUAL_DEV(  0x07ab, 0xfccd, 0x0000, 0x9999,
L
Linus Torvalds 已提交
936 937
		"Freecom Technologies",
		"FHD-Classic",
938
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
939 940
		US_FL_FIX_CAPACITY),

941
UNUSUAL_DEV(  0x07af, 0x0004, 0x0100, 0x0133,
L
Linus Torvalds 已提交
942 943
		"Microtech",
		"USB-SCSI-DB25",
944
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_euscsi_init,
L
Linus Torvalds 已提交
945 946
		US_FL_SCM_MULT_TARG ), 

947
UNUSUAL_DEV(  0x07af, 0x0005, 0x0100, 0x0100,
L
Linus Torvalds 已提交
948 949
		"Microtech",
		"USB-SCSI-HD50",
950
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_euscsi_init,
951
		US_FL_SCM_MULT_TARG ),
L
Linus Torvalds 已提交
952

953
#ifdef NO_SDDR09
954 955 956
UNUSUAL_DEV(  0x07af, 0x0006, 0x0100, 0x0100,
		"Microtech",
		"CameraMate",
957
		USB_SC_SCSI, USB_PR_CB, NULL,
958
		US_FL_SINGLE_LUN ),
L
Linus Torvalds 已提交
959 960 961 962 963 964 965 966 967 968 969
#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",
970
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
971
		US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY ),
L
Linus Torvalds 已提交
972

973 974 975
/* Reported by Rauch Wolke <rauchwolke@gmx.net>
 * and augmented by binbin <binbinsh@gmail.com> (Bugzilla #12882)
 */
976 977 978
UNUSUAL_DEV(  0x07c4, 0xa4a5, 0x0000, 0xffff,
		"Simple Tech/Datafab",
		"CF+SM Reader",
979
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
980
		US_FL_IGNORE_RESIDUE | US_FL_MAX_SECTORS_64 ),
981

L
Linus Torvalds 已提交
982 983 984 985 986 987 988
/* 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
989 990 991
 *   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 已提交
992 993 994 995
 */
UNUSUAL_DEV( 0x07cf, 0x1001, 0x1000, 0x9999,
		"Casio",
		"QV DigitalCamera",
996
		USB_SC_8070, USB_PR_CB, NULL,
L
Linus Torvalds 已提交
997 998 999 1000 1001 1002
		US_FL_NEED_OVERRIDE | US_FL_FIX_INQUIRY ),

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

1006 1007 1008 1009
/* Reported by Luciano Rocha <luciano@eurotux.com> */
UNUSUAL_DEV( 0x0840, 0x0082, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1010
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1011 1012
		US_FL_FIX_CAPACITY),

1013 1014 1015 1016
/* Reported and patched by Nguyen Anh Quynh <aquynh@gmail.com> */
UNUSUAL_DEV( 0x0840, 0x0084, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1017
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1018 1019
		US_FL_FIX_CAPACITY),

1020 1021 1022 1023
/* Reported by Martijn Hijdra <martijn.hijdra@gmail.com> */
UNUSUAL_DEV( 0x0840, 0x0085, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1024
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1025 1026
		US_FL_FIX_CAPACITY),

L
Linus Torvalds 已提交
1027 1028 1029 1030 1031 1032 1033 1034 1035
/* 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",
1036
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1037 1038
		US_FL_BULK32),

1039 1040 1041 1042 1043 1044 1045 1046
/* 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",
1047
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1048 1049
		US_FL_NOT_LOCKABLE),

1050 1051 1052 1053
/* Submitted by Jan De Luyck <lkml@kcore.org> */
UNUSUAL_DEV(  0x08bd, 0x1100, 0x0000, 0x0000,
		"CITIZEN",
		"X1DE-USB",
1054
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1055
		US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
1056

1057 1058 1059 1060
/* Submitted by Dylan Taft <d13f00l@gmail.com>
 * US_FL_IGNORE_RESIDUE Needed
 */
UNUSUAL_DEV(  0x08ca, 0x3103, 0x0100, 0x0100,
1061 1062
		"AIPTEK",
		"Aiptek USB Keychain MP3 Player",
1063
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1064
		US_FL_IGNORE_RESIDUE),
1065

L
Linus Torvalds 已提交
1066 1067 1068 1069 1070 1071 1072 1073
/* 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",
1074
		USB_SC_DEVICE, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
1075 1076
		US_FL_NEED_OVERRIDE ),

1077 1078 1079 1080 1081 1082
/* 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",
1083
		USB_SC_UFI, USB_PR_DEVICE, NULL,
1084 1085
		0),

L
Linus Torvalds 已提交
1086 1087 1088 1089
/* Trumpion Microelectronics MP3 player (felipe_alfaro@linuxmail.org) */
UNUSUAL_DEV( 0x090a, 0x1200, 0x0000, 0x9999,
		"Trumpion",
		"MP3 player",
1090
		USB_SC_RBC, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
1091 1092 1093 1094 1095 1096
		0 ),

/* aeb */
UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff,
		"Feiya",
		"5-in-1 Card Reader",
1097
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1098 1099 1100 1101 1102 1103 1104 1105 1106 1107
		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,
1108 1109
		"Pentax",
		"Optio 2/3/400",
1110
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1111
		US_FL_FIX_INQUIRY ),
L
Linus Torvalds 已提交
1112

1113 1114
/* These are virtual windows driver CDs, which the zd1211rw driver
 * automatically converts into WLAN devices. */
1115
UNUSUAL_DEV( 0x0ace, 0x2011, 0x0101, 0x0101,
1116 1117
		"ZyXEL",
		"G-220F USB-WLAN Install",
1118
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1119
		US_FL_IGNORE_DEVICE ),
1120

1121 1122 1123
UNUSUAL_DEV( 0x0ace, 0x20ff, 0x0101, 0x0101,
		"SiteCom",
		"WL-117 USB-WLAN Install",
1124
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1125 1126
		US_FL_IGNORE_DEVICE ),

1127 1128 1129 1130 1131 1132 1133 1134 1135
/* 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",
1136
		USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init,
1137 1138
		0),

1139 1140 1141 1142 1143 1144 1145
/* 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",
1146
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1147 1148
		0 ),

1149
/* Reported by Jan Dumon <j.dumon@option.com>
1150 1151
 * These devices (wrongly) have a vendor-specific device descriptor.
 * These entries are needed so usb-storage can bind to their mass-storage
1152 1153 1154 1155
 * interface as an interface driver */
UNUSUAL_DEV( 0x0af0, 0x7501, 0x0000, 0x0000,
		"Option",
		"GI 0431 SD-Card",
1156
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1157 1158
		0 ),

1159 1160 1161
UNUSUAL_DEV( 0x0af0, 0x7701, 0x0000, 0x0000,
		"Option",
		"GI 0451 SD-Card",
1162
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1163 1164 1165 1166 1167
		0 ),

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

UNUSUAL_DEV( 0x0af0, 0x7901, 0x0000, 0x0000,
		"Option",
		"GI 0452 SD-Card",
1174
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1175 1176 1177 1178 1179
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7A01, 0x0000, 0x0000,
		"Option",
		"GI 0461 SD-Card",
1180
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1181 1182 1183 1184 1185
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7A05, 0x0000, 0x0000,
		"Option",
		"GI 0461 SD-Card",
1186
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1187 1188 1189 1190 1191
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8300, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1192
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1193 1194 1195 1196 1197
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8302, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1198
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1199 1200 1201 1202 1203
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1204
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1205 1206 1207 1208 1209
		0 ),

UNUSUAL_DEV( 0x0af0, 0xc100, 0x0000, 0x0000,
		"Option",
		"GI 070x SD-Card",
1210
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1211 1212 1213 1214 1215
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd057, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1216
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1217 1218 1219 1220 1221
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd058, 0x0000, 0x0000,
		"Option",
		"GI 1509 SD-Card",
1222
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1223 1224 1225 1226 1227
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd157, 0x0000, 0x0000,
		"Option",
		"GI 1515 SD-Card",
1228
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1229 1230 1231 1232 1233
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd257, 0x0000, 0x0000,
		"Option",
		"GI 1215 SD-Card",
1234
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1235 1236 1237 1238 1239
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd357, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1240
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1241 1242
		0 ),

1243 1244 1245 1246
/* Reported by Ben Efros <ben@pc-doctor.com> */
UNUSUAL_DEV( 0x0bc2, 0x3010, 0x0000, 0x0000,
		"Seagate",
		"FreeAgent Pro",
1247
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1248 1249 1250 1251 1252
		US_FL_SANE_SENSE ),

UNUSUAL_DEV(  0x0d49, 0x7310, 0x0000, 0x9999,
		"Maxtor",
		"USB to SATA",
1253
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1254 1255
		US_FL_SANE_SENSE),

1256 1257 1258 1259 1260 1261 1262
/*
 * 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",
1263
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1264 1265
		US_FL_SINGLE_LUN ),

L
Linus Torvalds 已提交
1266 1267 1268 1269
/* Submitted by Joris Struyve <joris@struyve.be> */
UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff,
		"Medion",
		"MD 7425",
1270
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1271 1272 1273 1274 1275 1276 1277 1278 1279 1280
		US_FL_FIX_INQUIRY),

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

1283 1284 1285 1286
/* Reported by  Jason Johnston <killean@shaw.ca> */
UNUSUAL_DEV(  0x0dc4, 0x0073, 0x0000, 0x0000,
		"Macpower Technology Co.LTD.",
		"USB 2.0 3.5\" DEVICE",
1287
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1288 1289
		US_FL_FIX_CAPACITY),

L
Linus Torvalds 已提交
1290 1291 1292 1293 1294 1295 1296 1297
/* 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",
1298
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1299 1300
		US_FL_FIX_INQUIRY ),

1301 1302 1303 1304 1305
/* 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",
1306
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1307 1308 1309
		US_FL_IGNORE_RESIDUE ),


L
Linus Torvalds 已提交
1310 1311 1312 1313 1314
/* 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",
1315
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1316 1317 1318 1319 1320 1321
		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",
1322
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1323 1324
		US_FL_IGNORE_RESIDUE ),

1325 1326 1327 1328
/* Reported by Jim McCloskey <mcclosk@ucsc.edu> */
UNUSUAL_DEV( 0x0e21, 0x0520, 0x0100, 0x0100,
		"Cowon Systems",
		"iAUDIO M5",
1329
		USB_SC_DEVICE, USB_PR_BULK, NULL,
1330
		US_FL_NEED_OVERRIDE ),
1331

L
Linus Torvalds 已提交
1332 1333 1334 1335
/* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */
UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300,
		"USB",
		"Solid state disk",
1336
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1337 1338 1339 1340 1341 1342 1343
		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",
1344
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1345 1346 1347 1348 1349 1350
		US_FL_IGNORE_RESIDUE ),

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

1354 1355 1356 1357 1358
/* 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",
1359
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1360 1361
		US_FL_IGNORE_RESIDUE | US_FL_GO_SLOW | US_FL_MAX_SECTORS_64),

1362 1363 1364 1365 1366 1367 1368 1369
/* 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",
1370
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1371 1372
		US_FL_IGNORE_RESIDUE ),

1373 1374 1375 1376 1377 1378 1379
/* 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",
1380
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1381 1382
		US_FL_IGNORE_RESIDUE ),

L
Linus Torvalds 已提交
1383 1384 1385 1386
/* Reported by Michael Stattmann <michael@stattmann.com> */
UNUSUAL_DEV(  0x0fce, 0xd008, 0x0000, 0x0000,
		"Sony Ericsson",
		"V800-Vodafone 802",
1387
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1388 1389
		US_FL_NO_WP_DETECT ),

1390 1391 1392 1393
/* Reported by The Solutor <thesolutor@gmail.com> */
UNUSUAL_DEV(  0x0fce, 0xd0e1, 0x0000, 0x0000,
		"Sony Ericsson",
		"MD400",
1394
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1395 1396
		US_FL_IGNORE_DEVICE),

1397 1398
/* Reported by Jan Mate <mate@fiit.stuba.sk>
 * and by Soeren Sonnenburg <kernel@nn7.de> */
1399 1400 1401
UNUSUAL_DEV(  0x0fce, 0xe030, 0x0000, 0x0000,
		"Sony Ericsson",
		"P990i",
1402
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1403
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),
1404

1405 1406 1407 1408
/* Reported by Emmanuel Vasilakis <evas@forthnet.gr> */
UNUSUAL_DEV(  0x0fce, 0xe031, 0x0000, 0x0000,
		"Sony Ericsson",
		"M600i",
1409
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1410
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
1411

1412 1413 1414 1415
/* Reported by Ricardo Barberis <ricardo@dattatec.com> */
UNUSUAL_DEV(  0x0fce, 0xe092, 0x0000, 0x0000,
		"Sony Ericsson",
		"P1i",
1416
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1417 1418
		US_FL_IGNORE_RESIDUE ),

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

1431 1432 1433
UNUSUAL_DEV(  0x1058, 0x0704, 0x0000, 0x9999,
		"Western Digital",
		"External HDD",
1434
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1435 1436
		US_FL_SANE_SENSE),

1437 1438 1439 1440 1441 1442
/* 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",
1443
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1444 1445
		0),

1446 1447 1448 1449 1450 1451
/* 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",
1452
           USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, US_FL_IGNORE_DEVICE),
1453

1454 1455 1456 1457 1458 1459 1460 1461
/* 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",
1462
		USB_SC_DEVICE, USB_PR_DEVICE, sierra_ms_init,
1463
		0),
1464

1465 1466 1467 1468 1469 1470 1471
/* 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",
1472
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1473 1474
		US_FL_IGNORE_RESIDUE ),

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

1809 1810 1811 1812
/* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */
UNUSUAL_DEV(  0x132b, 0x000b, 0x0001, 0x0001,
		"Minolta",
		"Dimage Z10",
1813
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1814 1815
		0 ),

L
Linus Torvalds 已提交
1816 1817 1818 1819
/* Reported by Kotrla Vitezslav <kotrla@ceb.cz> */
UNUSUAL_DEV(  0x1370, 0x6828, 0x0110, 0x0110,
		"SWISSBIT",
		"Black Silver",
1820
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1821 1822
		US_FL_IGNORE_RESIDUE ),

1823 1824 1825 1826
/* Reported by Francesco Foresti <frafore@tiscali.it> */
UNUSUAL_DEV(  0x14cd, 0x6600, 0x0201, 0x0201,
		"Super Top",
		"IDE DEVICE",
1827
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1828 1829
		US_FL_IGNORE_RESIDUE ),

1830 1831 1832 1833
/* 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,
1834 1835
		"JMicron",
		"USB to ATA/ATAPI Bridge",
1836
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1837
		US_FL_IGNORE_RESIDUE | US_FL_SANE_SENSE ),
1838

1839 1840 1841 1842 1843
/* 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",
1844
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1845 1846
		US_FL_IGNORE_RESIDUE ),

1847 1848 1849 1850 1851 1852 1853
/* 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",
1854
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1855 1856 1857 1858
		US_FL_BAD_SENSE ),
UNUSUAL_DEV( 0x1908, 0x1320, 0x0000, 0x0000,
		"BUILDWIN",
		"Photo Frame",
1859
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1860 1861
		US_FL_BAD_SENSE ),

1862 1863 1864
UNUSUAL_DEV( 0x2116, 0x0320, 0x0001, 0x0001,
		"ST",
		"2A",
1865
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1866 1867
		US_FL_FIX_CAPACITY),

1868 1869 1870 1871 1872 1873
/* patch submitted by Davide Perini <perini.davide@dpsoftware.org>
 * and Renato Perini <rperini@email.it>
 */
UNUSUAL_DEV(  0x22b8, 0x3010, 0x0001, 0x0001,
		"Motorola",
		"RAZR V3x",
1874
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1875 1876
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),

1877 1878 1879 1880 1881 1882 1883 1884
/*
 * Patch by Constantin Baranov <const@tltsu.ru>
 * Report by Andreas Koenecke.
 * Motorola ROKR Z6.
 */
UNUSUAL_DEV(  0x22b8, 0x6426, 0x0101, 0x0101,
		"Motorola",
		"MSnc.",
1885
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1886 1887
		US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY | US_FL_BULK_IGNORE_TAG),

L
Linus Torvalds 已提交
1888 1889 1890 1891
/* Reported by Radovan Garabik <garabik@kassiopeia.juls.savba.sk> */
UNUSUAL_DEV(  0x2735, 0x100b, 0x0000, 0x9999,
		"MPIO",
		"HS200",
1892
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1893 1894
		US_FL_GO_SLOW ),

1895 1896 1897 1898 1899 1900
/* Reported by Frederic Marchal <frederic.marchal@wowcompany.com>
 * Mio Moov 330
 */
UNUSUAL_DEV(  0x3340, 0xffff, 0x0000, 0x0000,
		"Mitac",
		"Mio DigiWalker USB Sync",
1901
		USB_SC_DEVICE,USB_PR_DEVICE,NULL,
1902 1903
		US_FL_MAX_SECTORS_64 ),

1904 1905 1906 1907
/* Reported by Andrey Rahmatullin <wrar@altlinux.org> */
UNUSUAL_DEV(  0x4102, 0x1020, 0x0100,  0x0100,
		"iRiver",
		"MP3 T10",
1908
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1909 1910
		US_FL_IGNORE_RESIDUE ),

1911 1912 1913 1914
/* Reported by Sergey Pinaev <dfo@antex.ru> */
UNUSUAL_DEV(  0x4102, 0x1059, 0x0000,  0x0000,
               "iRiver",
               "P7K",
1915
               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1916 1917
               US_FL_MAX_SECTORS_64 ),

1918
/*
1919
 * David Härdeman <david@2gen.com>
1920 1921 1922 1923 1924
 * The key makes the SCSI stack print confusing (but harmless) messages
 */
UNUSUAL_DEV(  0x4146, 0xba01, 0x0100, 0x0100,
		"Iomega",
		"Micro Mini 1GB",
1925
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1926

1927 1928 1929 1930
/* Reported by Andrew Simmons <andrew.simmons@gmail.com> */
UNUSUAL_DEV(  0xed06, 0x4500, 0x0001, 0x0001,
		"DataStor",
		"USB4500 FW1.04",
1931
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1932
		US_FL_CAPACITY_HEURISTICS),
1933

1934 1935 1936 1937
/* Reported by Alessio Treglia <quadrispro@ubuntu.com> */
UNUSUAL_DEV( 0xed10, 0x7636, 0x0001, 0x0001,
		"TGE",
		"Digital MP3 Audio Player",
1938
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1939

1940
/* Control/Bulk transport for all SubClass values */
1941 1942 1943 1944 1945 1946
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),
1947 1948

/* Control/Bulk/Interrupt transport for all SubClass values */
1949 1950 1951 1952 1953 1954
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),
1955 1956

/* Bulk-only transport for all SubClass values */
1957 1958 1959 1960 1961 1962
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),