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

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 1117 1118 1119 1120 1121 1122 1123 1124
		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,
1125 1126
		"Pentax",
		"Optio 2/3/400",
1127
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1128
		US_FL_FIX_INQUIRY ),
L
Linus Torvalds 已提交
1129

1130 1131
/* These are virtual windows driver CDs, which the zd1211rw driver
 * automatically converts into WLAN devices. */
1132
UNUSUAL_DEV( 0x0ace, 0x2011, 0x0101, 0x0101,
1133 1134
		"ZyXEL",
		"G-220F USB-WLAN Install",
1135
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1136
		US_FL_IGNORE_DEVICE ),
1137

1138 1139 1140
UNUSUAL_DEV( 0x0ace, 0x20ff, 0x0101, 0x0101,
		"SiteCom",
		"WL-117 USB-WLAN Install",
1141
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1142 1143
		US_FL_IGNORE_DEVICE ),

1144 1145 1146 1147 1148 1149 1150 1151 1152
/* 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",
1153
		USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init,
1154 1155
		0),

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

1166
/* Reported by Jan Dumon <j.dumon@option.com>
1167 1168
 * These devices (wrongly) have a vendor-specific device descriptor.
 * These entries are needed so usb-storage can bind to their mass-storage
1169 1170 1171 1172
 * interface as an interface driver */
UNUSUAL_DEV( 0x0af0, 0x7501, 0x0000, 0x0000,
		"Option",
		"GI 0431 SD-Card",
1173
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1174 1175
		0 ),

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

UNUSUAL_DEV( 0x0af0, 0x7706, 0x0000, 0x0000,
		"Option",
		"GI 0451 SD-Card",
1185
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1186 1187 1188 1189 1190
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7901, 0x0000, 0x0000,
		"Option",
		"GI 0452 SD-Card",
1191
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1192 1193 1194 1195 1196
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7A01, 0x0000, 0x0000,
		"Option",
		"GI 0461 SD-Card",
1197
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1198 1199 1200 1201 1202
		0 ),

UNUSUAL_DEV( 0x0af0, 0x7A05, 0x0000, 0x0000,
		"Option",
		"GI 0461 SD-Card",
1203
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1204 1205 1206 1207 1208
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8300, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1209
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1210 1211 1212 1213 1214
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8302, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1215
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1216 1217 1218 1219 1220
		0 ),

UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0000,
		"Option",
		"GI 033x SD-Card",
1221
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1222 1223 1224 1225 1226
		0 ),

UNUSUAL_DEV( 0x0af0, 0xc100, 0x0000, 0x0000,
		"Option",
		"GI 070x SD-Card",
1227
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1228 1229 1230 1231 1232
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd057, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1233
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1234 1235 1236 1237 1238
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd058, 0x0000, 0x0000,
		"Option",
		"GI 1509 SD-Card",
1239
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1240 1241 1242 1243 1244
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd157, 0x0000, 0x0000,
		"Option",
		"GI 1515 SD-Card",
1245
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1246 1247 1248 1249 1250
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd257, 0x0000, 0x0000,
		"Option",
		"GI 1215 SD-Card",
1251
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1252 1253 1254 1255 1256
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd357, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1257
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1258 1259
		0 ),

1260 1261 1262 1263
/* Reported by Ben Efros <ben@pc-doctor.com> */
UNUSUAL_DEV( 0x0bc2, 0x3010, 0x0000, 0x0000,
		"Seagate",
		"FreeAgent Pro",
1264
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1265 1266 1267 1268 1269
		US_FL_SANE_SENSE ),

UNUSUAL_DEV(  0x0d49, 0x7310, 0x0000, 0x9999,
		"Maxtor",
		"USB to SATA",
1270
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1271 1272
		US_FL_SANE_SENSE),

1273 1274 1275 1276 1277 1278 1279
/*
 * 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",
1280
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1281 1282
		US_FL_SINGLE_LUN ),

L
Linus Torvalds 已提交
1283 1284 1285 1286
/* Submitted by Joris Struyve <joris@struyve.be> */
UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff,
		"Medion",
		"MD 7425",
1287
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1288 1289 1290 1291 1292 1293 1294 1295 1296 1297
		US_FL_FIX_INQUIRY),

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

1300 1301 1302 1303
/* Reported by  Jason Johnston <killean@shaw.ca> */
UNUSUAL_DEV(  0x0dc4, 0x0073, 0x0000, 0x0000,
		"Macpower Technology Co.LTD.",
		"USB 2.0 3.5\" DEVICE",
1304
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1305 1306
		US_FL_FIX_CAPACITY),

L
Linus Torvalds 已提交
1307 1308 1309 1310 1311 1312 1313 1314
/* 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",
1315
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1316 1317
		US_FL_FIX_INQUIRY ),

1318 1319 1320 1321 1322
/* 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",
1323
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1324 1325 1326
		US_FL_IGNORE_RESIDUE ),


L
Linus Torvalds 已提交
1327 1328 1329 1330 1331
/* 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",
1332
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1333 1334 1335 1336 1337 1338
		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",
1339
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1340 1341
		US_FL_IGNORE_RESIDUE ),

1342 1343 1344 1345
/* Reported by Jim McCloskey <mcclosk@ucsc.edu> */
UNUSUAL_DEV( 0x0e21, 0x0520, 0x0100, 0x0100,
		"Cowon Systems",
		"iAUDIO M5",
1346
		USB_SC_DEVICE, USB_PR_BULK, NULL,
1347
		US_FL_NEED_OVERRIDE ),
1348

L
Linus Torvalds 已提交
1349 1350 1351 1352
/* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */
UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300,
		"USB",
		"Solid state disk",
1353
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1354 1355 1356 1357 1358 1359 1360
		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",
1361
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1362 1363 1364 1365 1366 1367
		US_FL_IGNORE_RESIDUE ),

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

1371 1372 1373 1374 1375
/* 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",
1376
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1377 1378
		US_FL_IGNORE_RESIDUE | US_FL_GO_SLOW | US_FL_MAX_SECTORS_64),

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

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

L
Linus Torvalds 已提交
1400 1401 1402 1403
/* Reported by Michael Stattmann <michael@stattmann.com> */
UNUSUAL_DEV(  0x0fce, 0xd008, 0x0000, 0x0000,
		"Sony Ericsson",
		"V800-Vodafone 802",
1404
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1405 1406
		US_FL_NO_WP_DETECT ),

1407 1408 1409 1410
/* Reported by The Solutor <thesolutor@gmail.com> */
UNUSUAL_DEV(  0x0fce, 0xd0e1, 0x0000, 0x0000,
		"Sony Ericsson",
		"MD400",
1411
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1412 1413
		US_FL_IGNORE_DEVICE),

1414 1415
/* Reported by Jan Mate <mate@fiit.stuba.sk>
 * and by Soeren Sonnenburg <kernel@nn7.de> */
1416 1417 1418
UNUSUAL_DEV(  0x0fce, 0xe030, 0x0000, 0x0000,
		"Sony Ericsson",
		"P990i",
1419
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1420
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),
1421

1422 1423 1424 1425
/* Reported by Emmanuel Vasilakis <evas@forthnet.gr> */
UNUSUAL_DEV(  0x0fce, 0xe031, 0x0000, 0x0000,
		"Sony Ericsson",
		"M600i",
1426
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1427
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
1428

1429 1430 1431 1432
/* Reported by Ricardo Barberis <ricardo@dattatec.com> */
UNUSUAL_DEV(  0x0fce, 0xe092, 0x0000, 0x0000,
		"Sony Ericsson",
		"P1i",
1433
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1434 1435
		US_FL_IGNORE_RESIDUE ),

L
Linus Torvalds 已提交
1436 1437 1438
/* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu>
 * Tested on hardware version 1.10.
 * Entry is needed only for the initializer function override.
1439 1440
 * Devices with bcd > 110 seem to not need it while those
 * with bcd < 110 appear to need it.
L
Linus Torvalds 已提交
1441
 */
1442
UNUSUAL_DEV(  0x1019, 0x0c55, 0x0000, 0x0110,
L
Linus Torvalds 已提交
1443 1444
		"Desknote",
		"UCR-61S2B",
1445
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_ucr61s2b_init,
L
Linus Torvalds 已提交
1446 1447
		0 ),

1448 1449 1450
UNUSUAL_DEV(  0x1058, 0x0704, 0x0000, 0x9999,
		"Western Digital",
		"External HDD",
1451
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1452 1453
		US_FL_SANE_SENSE),

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

1463 1464 1465 1466 1467 1468
/* 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",
1469
           USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, US_FL_IGNORE_DEVICE),
1470

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

1482 1483 1484 1485 1486 1487 1488
/* 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",
1489
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1490 1491
		US_FL_IGNORE_RESIDUE ),

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

1826 1827 1828 1829
/* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */
UNUSUAL_DEV(  0x132b, 0x000b, 0x0001, 0x0001,
		"Minolta",
		"Dimage Z10",
1830
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1831 1832
		0 ),

L
Linus Torvalds 已提交
1833 1834 1835 1836
/* Reported by Kotrla Vitezslav <kotrla@ceb.cz> */
UNUSUAL_DEV(  0x1370, 0x6828, 0x0110, 0x0110,
		"SWISSBIT",
		"Black Silver",
1837
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1838 1839
		US_FL_IGNORE_RESIDUE ),

1840 1841 1842 1843
/* Reported by Francesco Foresti <frafore@tiscali.it> */
UNUSUAL_DEV(  0x14cd, 0x6600, 0x0201, 0x0201,
		"Super Top",
		"IDE DEVICE",
1844
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1845 1846
		US_FL_IGNORE_RESIDUE ),

1847 1848 1849 1850
/* 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,
1851 1852
		"JMicron",
		"USB to ATA/ATAPI Bridge",
1853
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1854
		US_FL_IGNORE_RESIDUE | US_FL_SANE_SENSE ),
1855

1856 1857 1858 1859 1860
/* 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",
1861
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1862 1863
		US_FL_IGNORE_RESIDUE ),

1864 1865 1866 1867 1868 1869 1870
/* 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",
1871
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1872 1873 1874 1875
		US_FL_BAD_SENSE ),
UNUSUAL_DEV( 0x1908, 0x1320, 0x0000, 0x0000,
		"BUILDWIN",
		"Photo Frame",
1876
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1877
		US_FL_BAD_SENSE ),
1878 1879 1880 1881 1882
UNUSUAL_DEV( 0x1908, 0x3335, 0x0200, 0x0200,
		"BUILDWIN",
		"Photo Frame",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_NO_READ_DISC_INFO ),
1883

1884 1885 1886 1887 1888 1889 1890 1891 1892
/* Patch by Richard Schtz <r.schtz@t-online.de>
 * 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 ),

1893 1894 1895
UNUSUAL_DEV( 0x2116, 0x0320, 0x0001, 0x0001,
		"ST",
		"2A",
1896
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1897 1898
		US_FL_FIX_CAPACITY),

1899 1900 1901 1902 1903 1904
/* patch submitted by Davide Perini <perini.davide@dpsoftware.org>
 * and Renato Perini <rperini@email.it>
 */
UNUSUAL_DEV(  0x22b8, 0x3010, 0x0001, 0x0001,
		"Motorola",
		"RAZR V3x",
1905
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1906 1907
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),

1908 1909 1910 1911 1912 1913 1914 1915
/*
 * Patch by Constantin Baranov <const@tltsu.ru>
 * Report by Andreas Koenecke.
 * Motorola ROKR Z6.
 */
UNUSUAL_DEV(  0x22b8, 0x6426, 0x0101, 0x0101,
		"Motorola",
		"MSnc.",
1916
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1917 1918
		US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY | US_FL_BULK_IGNORE_TAG),

L
Linus Torvalds 已提交
1919 1920 1921 1922
/* Reported by Radovan Garabik <garabik@kassiopeia.juls.savba.sk> */
UNUSUAL_DEV(  0x2735, 0x100b, 0x0000, 0x9999,
		"MPIO",
		"HS200",
1923
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1924 1925
		US_FL_GO_SLOW ),

1926 1927 1928 1929 1930 1931
/* Reported by Frederic Marchal <frederic.marchal@wowcompany.com>
 * Mio Moov 330
 */
UNUSUAL_DEV(  0x3340, 0xffff, 0x0000, 0x0000,
		"Mitac",
		"Mio DigiWalker USB Sync",
1932
		USB_SC_DEVICE,USB_PR_DEVICE,NULL,
1933 1934
		US_FL_MAX_SECTORS_64 ),

1935 1936 1937 1938
/* Reported by Andrey Rahmatullin <wrar@altlinux.org> */
UNUSUAL_DEV(  0x4102, 0x1020, 0x0100,  0x0100,
		"iRiver",
		"MP3 T10",
1939
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1940 1941
		US_FL_IGNORE_RESIDUE ),

1942 1943 1944 1945
/* Reported by Sergey Pinaev <dfo@antex.ru> */
UNUSUAL_DEV(  0x4102, 0x1059, 0x0000,  0x0000,
               "iRiver",
               "P7K",
1946
               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1947 1948
               US_FL_MAX_SECTORS_64 ),

1949
/*
1950
 * David Härdeman <david@2gen.com>
1951 1952 1953 1954 1955
 * The key makes the SCSI stack print confusing (but harmless) messages
 */
UNUSUAL_DEV(  0x4146, 0xba01, 0x0100, 0x0100,
		"Iomega",
		"Micro Mini 1GB",
1956
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1957

1958 1959 1960 1961
/* Reported by Andrew Simmons <andrew.simmons@gmail.com> */
UNUSUAL_DEV(  0xed06, 0x4500, 0x0001, 0x0001,
		"DataStor",
		"USB4500 FW1.04",
1962
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1963
		US_FL_CAPACITY_HEURISTICS),
1964

1965 1966 1967 1968
/* Reported by Alessio Treglia <quadrispro@ubuntu.com> */
UNUSUAL_DEV( 0xed10, 0x7636, 0x0001, 0x0001,
		"TGE",
		"Digital MP3 Audio Player",
1969
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1970

1971
/* Control/Bulk transport for all SubClass values */
1972 1973 1974 1975 1976 1977
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),
1978 1979

/* Control/Bulk/Interrupt transport for all SubClass values */
1980 1981 1982 1983 1984 1985
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),
1986 1987

/* Bulk-only transport for all SubClass values */
1988 1989 1990 1991 1992 1993
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),