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

J
Jonathan Woithe 已提交
113
/* Deduced by Jonathan Woithe <jwoithe@just42.net>
L
Linus Torvalds 已提交
114 115 116 117 118 119
 * 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
		US_FL_NEED_OVERRIDE | US_FL_FIX_INQUIRY ),

1007 1008 1009 1010 1011 1012
/* Submitted by Oleksandr Chumachenko <ledest@gmail.com> */
UNUSUAL_DEV( 0x07cf, 0x1167, 0x0100, 0x0100,
		"Casio",
		"EX-N1 DigitalCamera",
		USB_SC_8070, USB_PR_DEVICE, NULL, 0),

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

1020 1021 1022 1023
/* Reported by Luciano Rocha <luciano@eurotux.com> */
UNUSUAL_DEV( 0x0840, 0x0082, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1024
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1025 1026
		US_FL_FIX_CAPACITY),

1027 1028 1029 1030
/* Reported and patched by Nguyen Anh Quynh <aquynh@gmail.com> */
UNUSUAL_DEV( 0x0840, 0x0084, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1031
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1032 1033
		US_FL_FIX_CAPACITY),

1034 1035 1036 1037
/* Reported by Martijn Hijdra <martijn.hijdra@gmail.com> */
UNUSUAL_DEV( 0x0840, 0x0085, 0x0001, 0x0001,
		"Argosy",
		"Storage",
1038
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1039 1040
		US_FL_FIX_CAPACITY),

L
Linus Torvalds 已提交
1041 1042 1043 1044 1045 1046 1047 1048 1049
/* 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",
1050
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1051 1052
		US_FL_BULK32),

1053 1054 1055 1056 1057 1058 1059 1060 1061
/* 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),

1062 1063 1064 1065 1066 1067 1068 1069
/* 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",
1070
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1071 1072
		US_FL_NOT_LOCKABLE),

1073 1074 1075 1076
/* Submitted by Jan De Luyck <lkml@kcore.org> */
UNUSUAL_DEV(  0x08bd, 0x1100, 0x0000, 0x0000,
		"CITIZEN",
		"X1DE-USB",
1077
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1078
		US_FL_SINGLE_LUN),
L
Linus Torvalds 已提交
1079

1080 1081 1082 1083
/* Submitted by Dylan Taft <d13f00l@gmail.com>
 * US_FL_IGNORE_RESIDUE Needed
 */
UNUSUAL_DEV(  0x08ca, 0x3103, 0x0100, 0x0100,
1084 1085
		"AIPTEK",
		"Aiptek USB Keychain MP3 Player",
1086
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1087
		US_FL_IGNORE_RESIDUE),
1088

L
Linus Torvalds 已提交
1089 1090 1091 1092 1093 1094 1095 1096
/* 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",
1097
		USB_SC_DEVICE, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
1098 1099
		US_FL_NEED_OVERRIDE ),

1100 1101 1102 1103 1104 1105
/* 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",
1106
		USB_SC_UFI, USB_PR_DEVICE, NULL,
1107 1108
		0),

L
Linus Torvalds 已提交
1109 1110 1111 1112
/* Trumpion Microelectronics MP3 player (felipe_alfaro@linuxmail.org) */
UNUSUAL_DEV( 0x090a, 0x1200, 0x0000, 0x9999,
		"Trumpion",
		"MP3 player",
1113
		USB_SC_RBC, USB_PR_BULK, NULL,
L
Linus Torvalds 已提交
1114 1115 1116 1117 1118 1119
		0 ),

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

A
Alan Stern 已提交
1123 1124 1125 1126 1127 1128 1129 1130 1131 1132
/* 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 已提交
1133 1134 1135 1136 1137 1138 1139 1140
/* 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,
1141 1142
		"Pentax",
		"Optio 2/3/400",
1143
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1144
		US_FL_FIX_INQUIRY ),
L
Linus Torvalds 已提交
1145

1146 1147
/* These are virtual windows driver CDs, which the zd1211rw driver
 * automatically converts into WLAN devices. */
1148
UNUSUAL_DEV( 0x0ace, 0x2011, 0x0101, 0x0101,
1149 1150
		"ZyXEL",
		"G-220F USB-WLAN Install",
1151
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1152
		US_FL_IGNORE_DEVICE ),
1153

1154 1155 1156
UNUSUAL_DEV( 0x0ace, 0x20ff, 0x0101, 0x0101,
		"SiteCom",
		"WL-117 USB-WLAN Install",
1157
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1158 1159
		US_FL_IGNORE_DEVICE ),

1160 1161 1162 1163 1164 1165 1166 1167 1168
/* 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",
1169
		USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init,
1170 1171
		0),

1172 1173 1174 1175 1176 1177 1178
/* 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",
1179
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1180 1181
		0 ),

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

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

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

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

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

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

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

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

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

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

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

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

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

UNUSUAL_DEV( 0x0af0, 0xd257, 0x0000, 0x0000,
		"Option",
		"GI 1215 SD-Card",
1267
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1268 1269 1270 1271 1272
		0 ),

UNUSUAL_DEV( 0x0af0, 0xd357, 0x0000, 0x0000,
		"Option",
		"GI 1505 SD-Card",
1273
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1274 1275
		0 ),

1276 1277 1278 1279 1280 1281
/* Reported by Namjae Jeon <namjae.jeon@samsung.com> */
UNUSUAL_DEV(0x0bc2, 0x2300, 0x0000, 0x9999,
		"Seagate",
		"Portable HDD",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_WRITE_CACHE),

1282 1283 1284 1285
/* Reported by Ben Efros <ben@pc-doctor.com> */
UNUSUAL_DEV( 0x0bc2, 0x3010, 0x0000, 0x0000,
		"Seagate",
		"FreeAgent Pro",
1286
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1287 1288 1289 1290 1291
		US_FL_SANE_SENSE ),

UNUSUAL_DEV(  0x0d49, 0x7310, 0x0000, 0x9999,
		"Maxtor",
		"USB to SATA",
1292
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1293 1294
		US_FL_SANE_SENSE),

1295 1296 1297 1298 1299 1300 1301
/*
 * 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",
1302
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1303 1304
		US_FL_SINGLE_LUN ),

L
Linus Torvalds 已提交
1305 1306 1307 1308
/* Submitted by Joris Struyve <joris@struyve.be> */
UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff,
		"Medion",
		"MD 7425",
1309
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1310 1311 1312 1313 1314 1315 1316 1317 1318 1319
		US_FL_FIX_INQUIRY),

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

1322 1323 1324 1325
/* Reported by  Jason Johnston <killean@shaw.ca> */
UNUSUAL_DEV(  0x0dc4, 0x0073, 0x0000, 0x0000,
		"Macpower Technology Co.LTD.",
		"USB 2.0 3.5\" DEVICE",
1326
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1327 1328
		US_FL_FIX_CAPACITY),

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

1340 1341 1342 1343 1344
/* 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",
1345
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1346 1347 1348
		US_FL_IGNORE_RESIDUE ),


L
Linus Torvalds 已提交
1349 1350 1351 1352 1353
/* 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",
1354
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1355 1356 1357 1358 1359 1360
		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",
1361
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1362 1363
		US_FL_IGNORE_RESIDUE ),

1364 1365 1366 1367
/* Reported by Jim McCloskey <mcclosk@ucsc.edu> */
UNUSUAL_DEV( 0x0e21, 0x0520, 0x0100, 0x0100,
		"Cowon Systems",
		"iAUDIO M5",
1368
		USB_SC_DEVICE, USB_PR_BULK, NULL,
1369
		US_FL_NEED_OVERRIDE ),
1370

L
Linus Torvalds 已提交
1371 1372 1373 1374
/* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */
UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300,
		"USB",
		"Solid state disk",
1375
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1376 1377 1378 1379 1380 1381 1382
		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",
1383
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1384 1385 1386 1387 1388 1389
		US_FL_IGNORE_RESIDUE ),

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

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

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

1412 1413 1414 1415 1416 1417 1418
/* 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",
1419
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1420 1421
		US_FL_IGNORE_RESIDUE ),

1422 1423 1424 1425 1426 1427 1428
/* 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 已提交
1429 1430 1431 1432
/* Reported by Michael Stattmann <michael@stattmann.com> */
UNUSUAL_DEV(  0x0fce, 0xd008, 0x0000, 0x0000,
		"Sony Ericsson",
		"V800-Vodafone 802",
1433
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1434 1435
		US_FL_NO_WP_DETECT ),

1436 1437 1438 1439
/* Reported by The Solutor <thesolutor@gmail.com> */
UNUSUAL_DEV(  0x0fce, 0xd0e1, 0x0000, 0x0000,
		"Sony Ericsson",
		"MD400",
1440
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1441 1442
		US_FL_IGNORE_DEVICE),

1443 1444
/* Reported by Jan Mate <mate@fiit.stuba.sk>
 * and by Soeren Sonnenburg <kernel@nn7.de> */
1445 1446 1447
UNUSUAL_DEV(  0x0fce, 0xe030, 0x0000, 0x0000,
		"Sony Ericsson",
		"P990i",
1448
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1449
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),
1450

1451 1452 1453 1454
/* Reported by Emmanuel Vasilakis <evas@forthnet.gr> */
UNUSUAL_DEV(  0x0fce, 0xe031, 0x0000, 0x0000,
		"Sony Ericsson",
		"M600i",
1455
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1456
		US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
1457

1458 1459 1460 1461
/* Reported by Ricardo Barberis <ricardo@dattatec.com> */
UNUSUAL_DEV(  0x0fce, 0xe092, 0x0000, 0x0000,
		"Sony Ericsson",
		"P1i",
1462
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1463 1464
		US_FL_IGNORE_RESIDUE ),

L
Linus Torvalds 已提交
1465 1466 1467
/* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu>
 * Tested on hardware version 1.10.
 * Entry is needed only for the initializer function override.
1468 1469
 * Devices with bcd > 110 seem to not need it while those
 * with bcd < 110 appear to need it.
L
Linus Torvalds 已提交
1470
 */
1471
UNUSUAL_DEV(  0x1019, 0x0c55, 0x0000, 0x0110,
L
Linus Torvalds 已提交
1472 1473
		"Desknote",
		"UCR-61S2B",
1474
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_ucr61s2b_init,
L
Linus Torvalds 已提交
1475 1476
		0 ),

1477 1478 1479
UNUSUAL_DEV(  0x1058, 0x0704, 0x0000, 0x9999,
		"Western Digital",
		"External HDD",
1480
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1481 1482
		US_FL_SANE_SENSE),

1483 1484 1485 1486 1487 1488
/* Reported by Namjae Jeon <namjae.jeon@samsung.com> */
UNUSUAL_DEV(0x1058, 0x070a, 0x0000, 0x9999,
		"Western Digital",
		"My Passport HDD",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_WRITE_CACHE),

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

1498 1499 1500 1501 1502 1503
/* 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",
1504
           USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, US_FL_IGNORE_DEVICE),
1505

1506 1507 1508 1509 1510 1511 1512 1513
/* 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",
1514
		USB_SC_DEVICE, USB_PR_DEVICE, sierra_ms_init,
1515
		0),
1516

1517 1518 1519 1520 1521 1522 1523
/* 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",
1524
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1525 1526
		US_FL_IGNORE_RESIDUE ),

1527 1528
/* Reported by fangxiaozhi <huananhu@huawei.com>
 * This brings the HUAWEI data card devices into multi-port mode
1529
 */
1530
UNUSUAL_VENDOR_INTF(0x12d1, 0x08, 0x06, 0x50,
1531 1532
		"HUAWEI MOBILE",
		"Mass Storage",
1533
		USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_init,
1534
		0),
1535

1536 1537 1538 1539
/* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */
UNUSUAL_DEV(  0x132b, 0x000b, 0x0001, 0x0001,
		"Minolta",
		"Dimage Z10",
1540
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1541 1542
		0 ),

L
Linus Torvalds 已提交
1543 1544 1545 1546
/* Reported by Kotrla Vitezslav <kotrla@ceb.cz> */
UNUSUAL_DEV(  0x1370, 0x6828, 0x0110, 0x0110,
		"SWISSBIT",
		"Black Silver",
1547
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1548 1549
		US_FL_IGNORE_RESIDUE ),

1550 1551 1552 1553 1554 1555 1556
/* 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 ),

1557 1558 1559 1560
/* Reported by Francesco Foresti <frafore@tiscali.it> */
UNUSUAL_DEV(  0x14cd, 0x6600, 0x0201, 0x0201,
		"Super Top",
		"IDE DEVICE",
1561
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1562 1563
		US_FL_IGNORE_RESIDUE ),

1564 1565 1566 1567
/* 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,
1568 1569
		"JMicron",
		"USB to ATA/ATAPI Bridge",
1570
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1571
		US_FL_IGNORE_RESIDUE | US_FL_SANE_SENSE ),
1572

1573 1574 1575 1576 1577
/* 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",
1578
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1579 1580
		US_FL_IGNORE_RESIDUE ),

1581 1582 1583 1584 1585 1586 1587
/* Reported by Jesse Feddema <jdfeddema@gmail.com> */
UNUSUAL_DEV(  0x177f, 0x0400, 0x0000, 0x0000,
		"Yarvik",
		"PMP400",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_BULK_IGNORE_TAG | US_FL_MAX_SECTORS_64 ),

1588 1589 1590 1591 1592 1593 1594
/* 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",
1595
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1596 1597 1598 1599
		US_FL_BAD_SENSE ),
UNUSUAL_DEV( 0x1908, 0x1320, 0x0000, 0x0000,
		"BUILDWIN",
		"Photo Frame",
1600
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1601
		US_FL_BAD_SENSE ),
1602 1603 1604 1605 1606
UNUSUAL_DEV( 0x1908, 0x3335, 0x0200, 0x0200,
		"BUILDWIN",
		"Photo Frame",
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
		US_FL_NO_READ_DISC_INFO ),
1607

A
Alan Stern 已提交
1608 1609 1610 1611 1612 1613 1614 1615 1616
/* 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 已提交
1617
/* Patch by Richard Schütz <r.schtz@t-online.de>
1618 1619 1620 1621 1622 1623 1624 1625
 * 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 ),

1626 1627 1628 1629 1630 1631 1632
/* 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 ),

1633 1634 1635
UNUSUAL_DEV( 0x2116, 0x0320, 0x0001, 0x0001,
		"ST",
		"2A",
1636
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1637 1638
		US_FL_FIX_CAPACITY),

1639 1640 1641 1642 1643 1644
/* patch submitted by Davide Perini <perini.davide@dpsoftware.org>
 * and Renato Perini <rperini@email.it>
 */
UNUSUAL_DEV(  0x22b8, 0x3010, 0x0001, 0x0001,
		"Motorola",
		"RAZR V3x",
1645
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1646 1647
		US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),

1648 1649 1650 1651 1652 1653 1654 1655
/*
 * Patch by Constantin Baranov <const@tltsu.ru>
 * Report by Andreas Koenecke.
 * Motorola ROKR Z6.
 */
UNUSUAL_DEV(  0x22b8, 0x6426, 0x0101, 0x0101,
		"Motorola",
		"MSnc.",
1656
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1657 1658
		US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY | US_FL_BULK_IGNORE_TAG),

L
Linus Torvalds 已提交
1659 1660 1661 1662
/* Reported by Radovan Garabik <garabik@kassiopeia.juls.savba.sk> */
UNUSUAL_DEV(  0x2735, 0x100b, 0x0000, 0x9999,
		"MPIO",
		"HS200",
1663
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
L
Linus Torvalds 已提交
1664 1665
		US_FL_GO_SLOW ),

1666 1667 1668 1669 1670 1671
/* Reported by Frederic Marchal <frederic.marchal@wowcompany.com>
 * Mio Moov 330
 */
UNUSUAL_DEV(  0x3340, 0xffff, 0x0000, 0x0000,
		"Mitac",
		"Mio DigiWalker USB Sync",
1672
		USB_SC_DEVICE,USB_PR_DEVICE,NULL,
1673 1674
		US_FL_MAX_SECTORS_64 ),

1675 1676 1677 1678
/* Reported by Andrey Rahmatullin <wrar@altlinux.org> */
UNUSUAL_DEV(  0x4102, 0x1020, 0x0100,  0x0100,
		"iRiver",
		"MP3 T10",
1679
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1680 1681
		US_FL_IGNORE_RESIDUE ),

1682 1683 1684 1685
/* Reported by Sergey Pinaev <dfo@antex.ru> */
UNUSUAL_DEV(  0x4102, 0x1059, 0x0000,  0x0000,
               "iRiver",
               "P7K",
1686
               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1687 1688
               US_FL_MAX_SECTORS_64 ),

1689
/*
1690
 * David Härdeman <david@2gen.com>
1691 1692 1693 1694 1695
 * The key makes the SCSI stack print confusing (but harmless) messages
 */
UNUSUAL_DEV(  0x4146, 0xba01, 0x0100, 0x0100,
		"Iomega",
		"Micro Mini 1GB",
1696
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1697

1698 1699 1700 1701 1702 1703 1704 1705 1706 1707
/*
 * 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),

1708 1709 1710 1711
/* Reported by Andrew Simmons <andrew.simmons@gmail.com> */
UNUSUAL_DEV(  0xed06, 0x4500, 0x0001, 0x0001,
		"DataStor",
		"USB4500 FW1.04",
1712
		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
1713
		US_FL_CAPACITY_HEURISTICS),
1714

1715 1716 1717 1718
/* Reported by Alessio Treglia <quadrispro@ubuntu.com> */
UNUSUAL_DEV( 0xed10, 0x7636, 0x0001, 0x0001,
		"TGE",
		"Digital MP3 Audio Player",
1719
		USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1720

1721
/* Control/Bulk transport for all SubClass values */
S
Sebastian Andrzej Siewior 已提交
1722 1723 1724 1725 1726 1727
USUAL_DEV(USB_SC_RBC, USB_PR_CB),
USUAL_DEV(USB_SC_8020, USB_PR_CB),
USUAL_DEV(USB_SC_QIC, USB_PR_CB),
USUAL_DEV(USB_SC_UFI, USB_PR_CB),
USUAL_DEV(USB_SC_8070, USB_PR_CB),
USUAL_DEV(USB_SC_SCSI, USB_PR_CB),
1728 1729

/* Control/Bulk/Interrupt transport for all SubClass values */
S
Sebastian Andrzej Siewior 已提交
1730 1731 1732 1733 1734 1735
USUAL_DEV(USB_SC_RBC, USB_PR_CBI),
USUAL_DEV(USB_SC_8020, USB_PR_CBI),
USUAL_DEV(USB_SC_QIC, USB_PR_CBI),
USUAL_DEV(USB_SC_UFI, USB_PR_CBI),
USUAL_DEV(USB_SC_8070, USB_PR_CBI),
USUAL_DEV(USB_SC_SCSI, USB_PR_CBI),
1736 1737

/* Bulk-only transport for all SubClass values */
S
Sebastian Andrzej Siewior 已提交
1738 1739 1740 1741 1742 1743
USUAL_DEV(USB_SC_RBC, USB_PR_BULK),
USUAL_DEV(USB_SC_8020, USB_PR_BULK),
USUAL_DEV(USB_SC_QIC, USB_PR_BULK),
USUAL_DEV(USB_SC_UFI, USB_PR_BULK),
USUAL_DEV(USB_SC_8070, USB_PR_BULK),
USUAL_DEV(USB_SC_SCSI, USB_PR_BULK),