unusual_devs.h 60.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 1055
/* Reported by <ttkspam@free.fr>
 * The device reports a vendor-specific device class, requiring an
 * explicit vendor/product match.
 */
UNUSUAL_DEV(  0x0851, 0x1542, 0x0002, 0x0002,
		"MagicPixel",
		"FW_Omega2",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, 0),

1056 1057 1058 1059 1060 1061 1062 1063
/* 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",
1064
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1065 1066
		US_FL_NOT_LOCKABLE),

1067 1068 1069 1070
/* Submitted by Jan De Luyck <lkml@kcore.org> */
UNUSUAL_DEV(  0x08bd, 0x1100, 0x0000, 0x0000,
		"CITIZEN",
		"X1DE-USB",
1071
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1072
		US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
1073

1074 1075 1076 1077
/* Submitted by Dylan Taft <d13f00l@gmail.com>
 * US_FL_IGNORE_RESIDUE Needed
 */
UNUSUAL_DEV(  0x08ca, 0x3103, 0x0100, 0x0100,
1078 1079
		"AIPTEK",
		"Aiptek USB Keychain MP3 Player",
1080
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1081
		US_FL_IGNORE_RESIDUE),
1082

L
Linus Torvalds 已提交
1083 1084 1085 1086 1087 1088 1089 1090
/* 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",
1091
		USB_SC_DEVICE, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
1092 1093
		US_FL_NEED_OVERRIDE ),

1094 1095 1096 1097 1098 1099
/* 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",
1100
		USB_SC_UFI, USB_PR_DEVICE, NULL,
1101 1102
		0),

L
Linus Torvalds 已提交
1103 1104 1105 1106
/* Trumpion Microelectronics MP3 player (felipe_alfaro@linuxmail.org) */
UNUSUAL_DEV( 0x090a, 0x1200, 0x0000, 0x9999,
		"Trumpion",
		"MP3 player",
1107
		USB_SC_RBC, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
1108 1109 1110 1111 1112 1113
		0 ),

/* aeb */
UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff,
		"Feiya",
		"5-in-1 Card Reader",
1114
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1115 1116
		US_FL_FIX_CAPACITY ),

A
Alan Stern 已提交
1117 1118 1119 1120 1121 1122 1123 1124 1125 1126
/* Reported by Paul Hartman <paul.hartman+linux@gmail.com>
 * This card reader returns "Illegal Request, Logical Block Address
 * Out of Range" for the first READ(10) after a new card is inserted.
 */
UNUSUAL_DEV(  0x090c, 0x6000, 0x0100, 0x0100,
		"Feiya",
		"SD/SDHC Card Reader",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_INITIAL_READ10 ),

L
Linus Torvalds 已提交
1127 1128 1129 1130 1131 1132 1133 1134
/* 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,
1135 1136
		"Pentax",
		"Optio 2/3/400",
1137
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1138
		US_FL_FIX_INQUIRY ),
L
Linus Torvalds 已提交
1139

1140 1141
/* These are virtual windows driver CDs, which the zd1211rw driver
 * automatically converts into WLAN devices. */
1142
UNUSUAL_DEV( 0x0ace, 0x2011, 0x0101, 0x0101,
1143 1144
		"ZyXEL",
		"G-220F USB-WLAN Install",
1145
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1146
		US_FL_IGNORE_DEVICE ),
1147

1148 1149 1150
UNUSUAL_DEV( 0x0ace, 0x20ff, 0x0101, 0x0101,
		"SiteCom",
		"WL-117 USB-WLAN Install",
1151
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1152 1153
		US_FL_IGNORE_DEVICE ),

1154 1155 1156 1157 1158 1159 1160 1161 1162
/* 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",
1163
		USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init,
1164 1165
		0),

1166 1167 1168 1169 1170 1171 1172
/* 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",
1173
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1174 1175
		0 ),

1176
/* Reported by Jan Dumon <j.dumon@option.com>
1177 1178
 * These devices (wrongly) have a vendor-specific device descriptor.
 * These entries are needed so usb-storage can bind to their mass-storage
1179 1180 1181 1182
 * interface as an interface driver */
UNUSUAL_DEV( 0x0af0, 0x7501, 0x0000, 0x0000,
		"Option",
		"GI 0431 SD-Card",
1183
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1184 1185
		0 ),

1186 1187 1188
UNUSUAL_DEV( 0x0af0, 0x7701, 0x0000, 0x0000,
		"Option",
		"GI 0451 SD-Card",
1189
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1190 1191 1192 1193 1194
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7706, 0x0000, 0x0000,
		"Option",
		"GI 0451 SD-Card",
1195
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1196 1197 1198 1199 1200
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7901, 0x0000, 0x0000,
		"Option",
		"GI 0452 SD-Card",
1201
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1202 1203 1204 1205 1206
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7A01, 0x0000, 0x0000,
		"Option",
		"GI 0461 SD-Card",
1207
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1208 1209 1210 1211 1212
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7A05, 0x0000, 0x0000,
		"Option",
		"GI 0461 SD-Card",
1213
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1214 1215 1216 1217 1218
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8300, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1219
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1220 1221 1222 1223 1224
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8302, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1225
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1226 1227 1228 1229 1230
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1231
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1232 1233 1234 1235 1236
		0 ),

UNUSUAL_DEV( 0x0af0, 0xc100, 0x0000, 0x0000,
		"Option",
		"GI 070x SD-Card",
1237
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1238 1239 1240 1241 1242
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd057, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1243
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1244 1245 1246 1247 1248
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd058, 0x0000, 0x0000,
		"Option",
		"GI 1509 SD-Card",
1249
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1250 1251 1252 1253 1254
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd157, 0x0000, 0x0000,
		"Option",
		"GI 1515 SD-Card",
1255
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1256 1257 1258 1259 1260
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd257, 0x0000, 0x0000,
		"Option",
		"GI 1215 SD-Card",
1261
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1262 1263 1264 1265 1266
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd357, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1267
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1268 1269
		0 ),

1270 1271 1272 1273
/* Reported by Ben Efros <ben@pc-doctor.com> */
UNUSUAL_DEV( 0x0bc2, 0x3010, 0x0000, 0x0000,
		"Seagate",
		"FreeAgent Pro",
1274
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1275 1276 1277 1278 1279
		US_FL_SANE_SENSE ),

UNUSUAL_DEV(  0x0d49, 0x7310, 0x0000, 0x9999,
		"Maxtor",
		"USB to SATA",
1280
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1281 1282
		US_FL_SANE_SENSE),

1283 1284 1285 1286 1287 1288 1289
/*
 * 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",
1290
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1291 1292
		US_FL_SINGLE_LUN ),

L
Linus Torvalds 已提交
1293 1294 1295 1296
/* Submitted by Joris Struyve <joris@struyve.be> */
UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff,
		"Medion",
		"MD 7425",
1297
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1298 1299 1300 1301 1302 1303 1304 1305 1306 1307
		US_FL_FIX_INQUIRY),

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

1310 1311 1312 1313
/* Reported by  Jason Johnston <killean@shaw.ca> */
UNUSUAL_DEV(  0x0dc4, 0x0073, 0x0000, 0x0000,
		"Macpower Technology Co.LTD.",
		"USB 2.0 3.5\" DEVICE",
1314
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1315 1316
		US_FL_FIX_CAPACITY),

L
Linus Torvalds 已提交
1317 1318 1319 1320 1321 1322 1323 1324
/* 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",
1325
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1326 1327
		US_FL_FIX_INQUIRY ),

1328 1329 1330 1331 1332
/* 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",
1333
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1334 1335 1336
		US_FL_IGNORE_RESIDUE ),


L
Linus Torvalds 已提交
1337 1338 1339 1340 1341
/* 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",
1342
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1343 1344 1345 1346 1347 1348
		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",
1349
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1350 1351
		US_FL_IGNORE_RESIDUE ),

1352 1353 1354 1355
/* Reported by Jim McCloskey <mcclosk@ucsc.edu> */
UNUSUAL_DEV( 0x0e21, 0x0520, 0x0100, 0x0100,
		"Cowon Systems",
		"iAUDIO M5",
1356
		USB_SC_DEVICE, USB_PR_BULK, NULL,
1357
		US_FL_NEED_OVERRIDE ),
1358

L
Linus Torvalds 已提交
1359 1360 1361 1362
/* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */
UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300,
		"USB",
		"Solid state disk",
1363
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1364 1365 1366 1367 1368 1369 1370
		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",
1371
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1372 1373 1374 1375 1376 1377
		US_FL_IGNORE_RESIDUE ),

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

1381 1382 1383 1384 1385
/* 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",
1386
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1387 1388
		US_FL_IGNORE_RESIDUE | US_FL_GO_SLOW | US_FL_MAX_SECTORS_64),

1389 1390 1391 1392 1393 1394 1395 1396
/* 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",
1397
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1398 1399
		US_FL_IGNORE_RESIDUE ),

1400 1401 1402 1403 1404 1405 1406
/* 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",
1407
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1408 1409
		US_FL_IGNORE_RESIDUE ),

1410 1411 1412 1413 1414 1415 1416
/* Submitted by Nick Holloway */
UNUSUAL_DEV( 0x0f88, 0x042e, 0x0100, 0x0100,
		"VTech",
		"Kidizoom",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_FIX_CAPACITY ),

L
Linus Torvalds 已提交
1417 1418 1419 1420
/* Reported by Michael Stattmann <michael@stattmann.com> */
UNUSUAL_DEV(  0x0fce, 0xd008, 0x0000, 0x0000,
		"Sony Ericsson",
		"V800-Vodafone 802",
1421
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1422 1423
		US_FL_NO_WP_DETECT ),

1424 1425 1426 1427
/* Reported by The Solutor <thesolutor@gmail.com> */
UNUSUAL_DEV(  0x0fce, 0xd0e1, 0x0000, 0x0000,
		"Sony Ericsson",
		"MD400",
1428
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1429 1430
		US_FL_IGNORE_DEVICE),

1431 1432
/* Reported by Jan Mate <mate@fiit.stuba.sk>
 * and by Soeren Sonnenburg <kernel@nn7.de> */
1433 1434 1435
UNUSUAL_DEV(  0x0fce, 0xe030, 0x0000, 0x0000,
		"Sony Ericsson",
		"P990i",
1436
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1437
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),
1438

1439 1440 1441 1442
/* Reported by Emmanuel Vasilakis <evas@forthnet.gr> */
UNUSUAL_DEV(  0x0fce, 0xe031, 0x0000, 0x0000,
		"Sony Ericsson",
		"M600i",
1443
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1444
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
1445

1446 1447 1448 1449
/* Reported by Ricardo Barberis <ricardo@dattatec.com> */
UNUSUAL_DEV(  0x0fce, 0xe092, 0x0000, 0x0000,
		"Sony Ericsson",
		"P1i",
1450
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1451 1452
		US_FL_IGNORE_RESIDUE ),

L
Linus Torvalds 已提交
1453 1454 1455
/* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu>
 * Tested on hardware version 1.10.
 * Entry is needed only for the initializer function override.
1456 1457
 * Devices with bcd > 110 seem to not need it while those
 * with bcd < 110 appear to need it.
L
Linus Torvalds 已提交
1458
 */
1459
UNUSUAL_DEV(  0x1019, 0x0c55, 0x0000, 0x0110,
L
Linus Torvalds 已提交
1460 1461
		"Desknote",
		"UCR-61S2B",
1462
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_ucr61s2b_init,
L
Linus Torvalds 已提交
1463 1464
		0 ),

1465 1466 1467
UNUSUAL_DEV(  0x1058, 0x0704, 0x0000, 0x9999,
		"Western Digital",
		"External HDD",
1468
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1469 1470
		US_FL_SANE_SENSE),

1471 1472 1473 1474 1475 1476
/* 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",
1477
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1478 1479
		0),

1480 1481 1482 1483 1484 1485
/* 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",
1486
           USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, US_FL_IGNORE_DEVICE),
1487

1488 1489 1490 1491 1492 1493 1494 1495
/* 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",
1496
		USB_SC_DEVICE, USB_PR_DEVICE, sierra_ms_init,
1497
		0),
1498

1499 1500 1501 1502 1503 1504 1505
/* 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",
1506
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1507 1508
		US_FL_IGNORE_RESIDUE ),

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

1843 1844 1845 1846
/* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */
UNUSUAL_DEV(  0x132b, 0x000b, 0x0001, 0x0001,
		"Minolta",
		"Dimage Z10",
1847
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1848 1849
		0 ),

L
Linus Torvalds 已提交
1850 1851 1852 1853
/* Reported by Kotrla Vitezslav <kotrla@ceb.cz> */
UNUSUAL_DEV(  0x1370, 0x6828, 0x0110, 0x0110,
		"SWISSBIT",
		"Black Silver",
1854
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1855 1856
		US_FL_IGNORE_RESIDUE ),

1857 1858 1859 1860 1861 1862 1863
/* Reported by Qinglin Ye <yestyle@gmail.com> */
UNUSUAL_DEV(  0x13fe, 0x3600, 0x0100, 0x0100,
		"Kingston",
		"DT 101 G2",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_BULK_IGNORE_TAG ),

1864 1865 1866 1867
/* Reported by Francesco Foresti <frafore@tiscali.it> */
UNUSUAL_DEV(  0x14cd, 0x6600, 0x0201, 0x0201,
		"Super Top",
		"IDE DEVICE",
1868
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1869 1870
		US_FL_IGNORE_RESIDUE ),

1871 1872 1873 1874
/* 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,
1875 1876
		"JMicron",
		"USB to ATA/ATAPI Bridge",
1877
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1878
		US_FL_IGNORE_RESIDUE | US_FL_SANE_SENSE ),
1879

1880 1881 1882 1883 1884
/* 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",
1885
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1886 1887
		US_FL_IGNORE_RESIDUE ),

1888 1889 1890 1891 1892 1893 1894
/* 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",
1895
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1896 1897 1898 1899
		US_FL_BAD_SENSE ),
UNUSUAL_DEV( 0x1908, 0x1320, 0x0000, 0x0000,
		"BUILDWIN",
		"Photo Frame",
1900
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1901
		US_FL_BAD_SENSE ),
1902 1903 1904 1905 1906
UNUSUAL_DEV( 0x1908, 0x3335, 0x0200, 0x0200,
		"BUILDWIN",
		"Photo Frame",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_NO_READ_DISC_INFO ),
1907

A
Alan Stern 已提交
1908 1909 1910 1911 1912 1913 1914 1915 1916
/* Reported by Sven Geggus <sven-usbst@geggus.net>
 * This encrypted pen drive returns bogus data for the initial READ(10).
 */
UNUSUAL_DEV(  0x1b1c, 0x1ab5, 0x0200, 0x0200,
		"Corsair",
		"Padlock v2",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_INITIAL_READ10 ),

A
Al Viro 已提交
1917
/* Patch by Richard Schütz <r.schtz@t-online.de>
1918 1919 1920 1921 1922 1923 1924 1925
 * This external hard drive enclosure uses a JMicron chip which
 * needs the US_FL_IGNORE_RESIDUE flag to work properly. */
UNUSUAL_DEV(  0x1e68, 0x001b, 0x0000, 0x0000,
		"TrekStor GmbH & Co. KG",
		"DataStation maxi g.u",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_IGNORE_RESIDUE | US_FL_SANE_SENSE ),

1926 1927 1928 1929 1930 1931 1932
/* Reported by Jasper Mackenzie <scarletpimpernal@hotmail.com> */
UNUSUAL_DEV( 0x1e74, 0x4621, 0x0000, 0x0000,
		"Coby Electronics",
		"MP3 Player",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_BULK_IGNORE_TAG | US_FL_MAX_SECTORS_64 ),

1933 1934 1935
UNUSUAL_DEV( 0x2116, 0x0320, 0x0001, 0x0001,
		"ST",
		"2A",
1936
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1937 1938
		US_FL_FIX_CAPACITY),

1939 1940 1941 1942 1943 1944
/* patch submitted by Davide Perini <perini.davide@dpsoftware.org>
 * and Renato Perini <rperini@email.it>
 */
UNUSUAL_DEV(  0x22b8, 0x3010, 0x0001, 0x0001,
		"Motorola",
		"RAZR V3x",
1945
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1946 1947
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),

1948 1949 1950 1951 1952 1953 1954 1955
/*
 * Patch by Constantin Baranov <const@tltsu.ru>
 * Report by Andreas Koenecke.
 * Motorola ROKR Z6.
 */
UNUSUAL_DEV(  0x22b8, 0x6426, 0x0101, 0x0101,
		"Motorola",
		"MSnc.",
1956
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1957 1958
		US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY | US_FL_BULK_IGNORE_TAG),

L
Linus Torvalds 已提交
1959 1960 1961 1962
/* Reported by Radovan Garabik <garabik@kassiopeia.juls.savba.sk> */
UNUSUAL_DEV(  0x2735, 0x100b, 0x0000, 0x9999,
		"MPIO",
		"HS200",
1963
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1964 1965
		US_FL_GO_SLOW ),

1966 1967 1968 1969 1970 1971
/* Reported by Frederic Marchal <frederic.marchal@wowcompany.com>
 * Mio Moov 330
 */
UNUSUAL_DEV(  0x3340, 0xffff, 0x0000, 0x0000,
		"Mitac",
		"Mio DigiWalker USB Sync",
1972
		USB_SC_DEVICE,USB_PR_DEVICE,NULL,
1973 1974
		US_FL_MAX_SECTORS_64 ),

1975 1976 1977 1978
/* Reported by Andrey Rahmatullin <wrar@altlinux.org> */
UNUSUAL_DEV(  0x4102, 0x1020, 0x0100,  0x0100,
		"iRiver",
		"MP3 T10",
1979
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1980 1981
		US_FL_IGNORE_RESIDUE ),

1982 1983 1984 1985
/* Reported by Sergey Pinaev <dfo@antex.ru> */
UNUSUAL_DEV(  0x4102, 0x1059, 0x0000,  0x0000,
               "iRiver",
               "P7K",
1986
               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1987 1988
               US_FL_MAX_SECTORS_64 ),

1989
/*
1990
 * David Härdeman <david@2gen.com>
1991 1992 1993 1994 1995
 * The key makes the SCSI stack print confusing (but harmless) messages
 */
UNUSUAL_DEV(  0x4146, 0xba01, 0x0100, 0x0100,
		"Iomega",
		"Micro Mini 1GB",
1996
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1997

1998 1999 2000 2001 2002 2003 2004 2005 2006 2007
/*
 * Nick Bowler <nbowler@elliptictech.com>
 * SCSI stack spams (otherwise harmless) error messages.
 */
UNUSUAL_DEV(  0xc251, 0x4003, 0x0100, 0x0100,
		"Keil Software, Inc.",
		"V2M MotherBoard",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_NOT_LOCKABLE),

2008 2009 2010 2011
/* Reported by Andrew Simmons <andrew.simmons@gmail.com> */
UNUSUAL_DEV(  0xed06, 0x4500, 0x0001, 0x0001,
		"DataStor",
		"USB4500 FW1.04",
2012
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
2013
		US_FL_CAPACITY_HEURISTICS),
2014

2015 2016 2017 2018
/* Reported by Alessio Treglia <quadrispro@ubuntu.com> */
UNUSUAL_DEV( 0xed10, 0x7636, 0x0001, 0x0001,
		"TGE",
		"Digital MP3 Audio Player",
2019
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
2020

2021
/* Control/Bulk transport for all SubClass values */
2022 2023 2024 2025 2026 2027
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),
2028 2029

/* Control/Bulk/Interrupt transport for all SubClass values */
2030 2031 2032 2033 2034 2035
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),
2036 2037

/* Bulk-only transport for all SubClass values */
2038 2039 2040 2041 2042 2043
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),