1 /* Driver for USB Mass Storage compliant devices 2 * Unusual Devices File 3 * 4 * Current development and maintenance by: 5 * (c) 2000-2002 Matthew Dharm (mdharm-usb@one-eyed-alien.net) 6 * 7 * Initial work by: 8 * (c) 2000 Adam J. Richter (adam@yggdrasil.com), Yggdrasil Computing, Inc. 9 * 10 * Please see http://www.one-eyed-alien.net/~mdharm/linux-usb for more 11 * information about this driver. 12 * 13 * This program is free software; you can redistribute it and/or modify it 14 * under the terms of the GNU General Public License as published by the 15 * Free Software Foundation; either version 2, or (at your option) any 16 * later version. 17 * 18 * This program is distributed in the hope that it will be useful, but 19 * WITHOUT ANY WARRANTY; without even the implied warranty of 20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 21 * General Public License for more details. 22 * 23 * You should have received a copy of the GNU General Public License along 24 * with this program; if not, write to the Free Software Foundation, Inc., 25 * 675 Mass Ave, Cambridge, MA 02139, USA. 26 */ 27 28 /* IMPORTANT NOTE: This file must be included in another file which does 29 * the following thing for it to work: 30 * The UNUSUAL_DEV, COMPLIANT_DEV, and USUAL_DEV macros must be defined 31 * before this file is included. 32 */ 33 34 /* If you edit this file, please try to keep it sorted first by VendorID, 35 * then by ProductID. 36 * 37 * If you want to add an entry for this file, be sure to include the 38 * following information: 39 * - a patch that adds the entry for your device, including your 40 * email address right above the entry (plus maybe a brief 41 * explanation of the reason for the entry), 42 * - a copy of /proc/bus/usb/devices with your device plugged in 43 * running with this patch. 44 * Send your submission to either Phil Dibowitz <phil@ipom.com> or 45 * Alan Stern <stern@rowland.harvard.edu>, and don't forget to CC: the 46 * USB development list <linux-usb@vger.kernel.org> and the USB storage list 47 * <usb-storage@lists.one-eyed-alien.net> 48 */ 49 50 /* Note: If you add an entry only in order to set the CAPACITY_OK flag, 51 * use the COMPLIANT_DEV macro instead of UNUSUAL_DEV. This is 52 * because such entries mark devices which actually work correctly, 53 * as opposed to devices that do something strangely or wrongly. 54 */ 55 56 #if !defined(CONFIG_USB_STORAGE_SDDR09) && \ 57 !defined(CONFIG_USB_STORAGE_SDDR09_MODULE) 58 #define NO_SDDR09 59 #endif 60 61 /* patch submitted by Vivian Bregier <Vivian.Bregier@imag.fr> 62 */ 63 UNUSUAL_DEV( 0x03eb, 0x2002, 0x0100, 0x0100, 64 "ATMEL", 65 "SND1 Storage", 66 US_SC_DEVICE, US_PR_DEVICE, NULL, 67 US_FL_IGNORE_RESIDUE), 68 69 /* modified by Tobias Lorenz <tobias.lorenz@gmx.net> */ 70 UNUSUAL_DEV( 0x03ee, 0x6901, 0x0000, 0x0200, 71 "Mitsumi", 72 "USB FDD", 73 US_SC_DEVICE, US_PR_DEVICE, NULL, 74 US_FL_SINGLE_LUN ), 75 76 /* Reported by Rodolfo Quesada <rquesada@roqz.net> */ 77 UNUSUAL_DEV( 0x03ee, 0x6906, 0x0003, 0x0003, 78 "VIA Technologies Inc.", 79 "Mitsumi multi cardreader", 80 US_SC_DEVICE, US_PR_DEVICE, NULL, 81 US_FL_IGNORE_RESIDUE ), 82 83 UNUSUAL_DEV( 0x03f0, 0x0107, 0x0200, 0x0200, 84 "HP", 85 "CD-Writer+", 86 US_SC_8070, US_PR_CB, NULL, 0), 87 88 /* Reported by Ben Efros <ben@pc-doctor.com> */ 89 UNUSUAL_DEV( 0x03f0, 0x070c, 0x0000, 0x0000, 90 "HP", 91 "Personal Media Drive", 92 US_SC_DEVICE, US_PR_DEVICE, NULL, 93 US_FL_SANE_SENSE ), 94 95 /* Reported by Grant Grundler <grundler@parisc-linux.org> 96 * HP r707 camera in "Disk" mode with 2.00.23 or 2.00.24 firmware. 97 */ 98 UNUSUAL_DEV( 0x03f0, 0x4002, 0x0001, 0x0001, 99 "HP", 100 "PhotoSmart R707", 101 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_CAPACITY), 102 103 /* Reported by Sebastian Kapfer <sebastian_kapfer@gmx.net> 104 * and Olaf Hering <olh@suse.de> (different bcd's, same vendor/product) 105 * for USB floppies that need the SINGLE_LUN enforcement. 106 */ 107 UNUSUAL_DEV( 0x0409, 0x0040, 0x0000, 0x9999, 108 "NEC", 109 "NEC USB UF000x", 110 US_SC_DEVICE, US_PR_DEVICE, NULL, 111 US_FL_SINGLE_LUN ), 112 113 /* Patch submitted by Mihnea-Costin Grigore <mihnea@zulu.ro> */ 114 UNUSUAL_DEV( 0x040d, 0x6205, 0x0003, 0x0003, 115 "VIA Technologies Inc.", 116 "USB 2.0 Card Reader", 117 US_SC_DEVICE, US_PR_DEVICE, NULL, 118 US_FL_IGNORE_RESIDUE ), 119 120 /* Deduced by Jonathan Woithe <jwoithe@physics.adelaide.edu.au> 121 * Entry needed for flags: US_FL_FIX_INQUIRY because initial inquiry message 122 * always fails and confuses drive. 123 */ 124 UNUSUAL_DEV( 0x0411, 0x001c, 0x0113, 0x0113, 125 "Buffalo", 126 "DUB-P40G HDD", 127 US_SC_DEVICE, US_PR_DEVICE, NULL, 128 US_FL_FIX_INQUIRY ), 129 130 /* Submitted by Ernestas Vaiciukevicius <ernisv@gmail.com> */ 131 UNUSUAL_DEV( 0x0419, 0x0100, 0x0100, 0x0100, 132 "Samsung Info. Systems America, Inc.", 133 "MP3 Player", 134 US_SC_DEVICE, US_PR_DEVICE, NULL, 135 US_FL_IGNORE_RESIDUE ), 136 137 /* Reported by Orgad Shaneh <orgads@gmail.com> */ 138 UNUSUAL_DEV( 0x0419, 0xaace, 0x0100, 0x0100, 139 "Samsung", "MP3 Player", 140 US_SC_DEVICE, US_PR_DEVICE, NULL, 141 US_FL_IGNORE_RESIDUE ), 142 143 /* Reported by Christian Leber <christian@leber.de> */ 144 UNUSUAL_DEV( 0x0419, 0xaaf5, 0x0100, 0x0100, 145 "TrekStor", 146 "i.Beat 115 2.0", 147 US_SC_DEVICE, US_PR_DEVICE, NULL, 148 US_FL_IGNORE_RESIDUE | US_FL_NOT_LOCKABLE ), 149 150 /* Reported by Stefan Werner <dustbln@gmx.de> */ 151 UNUSUAL_DEV( 0x0419, 0xaaf6, 0x0100, 0x0100, 152 "TrekStor", 153 "i.Beat Joy 2.0", 154 US_SC_DEVICE, US_PR_DEVICE, NULL, 155 US_FL_IGNORE_RESIDUE ), 156 157 /* Reported by Pete Zaitcev <zaitcev@redhat.com>, bz#176584 */ 158 UNUSUAL_DEV( 0x0420, 0x0001, 0x0100, 0x0100, 159 "GENERIC", "MP3 PLAYER", /* MyMusix PD-205 on the outside. */ 160 US_SC_DEVICE, US_PR_DEVICE, NULL, 161 US_FL_IGNORE_RESIDUE ), 162 163 /* Reported by Andrew Nayenko <relan@bk.ru> */ 164 UNUSUAL_DEV( 0x0421, 0x0019, 0x0592, 0x0592, 165 "Nokia", 166 "Nokia 6288", 167 US_SC_DEVICE, US_PR_DEVICE, NULL, 168 US_FL_MAX_SECTORS_64 ), 169 170 /* Reported by Mario Rettig <mariorettig@web.de> */ 171 UNUSUAL_DEV( 0x0421, 0x042e, 0x0100, 0x0100, 172 "Nokia", 173 "Nokia 3250", 174 US_SC_DEVICE, US_PR_DEVICE, NULL, 175 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ), 176 177 /* Reported by <honkkis@gmail.com> */ 178 UNUSUAL_DEV( 0x0421, 0x0433, 0x0100, 0x0100, 179 "Nokia", 180 "E70", 181 US_SC_DEVICE, US_PR_DEVICE, NULL, 182 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ), 183 184 /* Reported by Jon Hart <Jon.Hart@web.de> */ 185 UNUSUAL_DEV( 0x0421, 0x0434, 0x0100, 0x0100, 186 "Nokia", 187 "E60", 188 US_SC_DEVICE, US_PR_DEVICE, NULL, 189 US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ), 190 191 /* Reported by Sumedha Swamy <sumedhaswamy@gmail.com> and 192 * Einar Th. Einarsson <einarthered@gmail.com> */ 193 UNUSUAL_DEV( 0x0421, 0x0444, 0x0100, 0x0100, 194 "Nokia", 195 "N91", 196 US_SC_DEVICE, US_PR_DEVICE, NULL, 197 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ), 198 199 /* Reported by Jiri Slaby <jirislaby@gmail.com> and 200 * Rene C. Castberg <Rene@Castberg.org> */ 201 UNUSUAL_DEV( 0x0421, 0x0446, 0x0100, 0x0100, 202 "Nokia", 203 "N80", 204 US_SC_DEVICE, US_PR_DEVICE, NULL, 205 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ), 206 207 /* Reported by Matthew Bloch <matthew@bytemark.co.uk> */ 208 UNUSUAL_DEV( 0x0421, 0x044e, 0x0100, 0x0100, 209 "Nokia", 210 "E61", 211 US_SC_DEVICE, US_PR_DEVICE, NULL, 212 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ), 213 214 /* Reported by Bardur Arantsson <bardur@scientician.net> */ 215 UNUSUAL_DEV( 0x0421, 0x047c, 0x0370, 0x0610, 216 "Nokia", 217 "6131", 218 US_SC_DEVICE, US_PR_DEVICE, NULL, 219 US_FL_MAX_SECTORS_64 ), 220 221 /* Reported by Manuel Osdoba <manuel.osdoba@tu-ilmenau.de> */ 222 UNUSUAL_DEV( 0x0421, 0x0492, 0x0452, 0x9999, 223 "Nokia", 224 "Nokia 6233", 225 US_SC_DEVICE, US_PR_DEVICE, NULL, 226 US_FL_MAX_SECTORS_64 ), 227 228 /* Reported by Alex Corcoles <alex@corcoles.net> */ 229 UNUSUAL_DEV( 0x0421, 0x0495, 0x0370, 0x0370, 230 "Nokia", 231 "6234", 232 US_SC_DEVICE, US_PR_DEVICE, NULL, 233 US_FL_MAX_SECTORS_64 ), 234 235 /* Reported by Olaf Hering <olh@suse.de> from novell bug #105878 */ 236 UNUSUAL_DEV( 0x0424, 0x0fdc, 0x0210, 0x0210, 237 "SMSC", 238 "FDC GOLD-2.30", 239 US_SC_DEVICE, US_PR_DEVICE, NULL, 240 US_FL_SINGLE_LUN ), 241 242 #ifdef NO_SDDR09 243 UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100, 244 "Microtech", 245 "CameraMate", 246 US_SC_SCSI, US_PR_CB, NULL, 247 US_FL_SINGLE_LUN ), 248 #endif 249 250 /* Patch submitted by Daniel Drake <dsd@gentoo.org> 251 * Device reports nonsense bInterfaceProtocol 6 when connected over USB2 */ 252 UNUSUAL_DEV( 0x0451, 0x5416, 0x0100, 0x0100, 253 "Neuros Audio", 254 "USB 2.0 HD 2.5", 255 US_SC_DEVICE, US_PR_BULK, NULL, 256 US_FL_NEED_OVERRIDE ), 257 258 /* 259 * Pete Zaitcev <zaitcev@yahoo.com>, from Patrick C. F. Ernzer, bz#162559. 260 * The key does not actually break, but it returns zero sense which 261 * makes our SCSI stack to print confusing messages. 262 */ 263 UNUSUAL_DEV( 0x0457, 0x0150, 0x0100, 0x0100, 264 "USBest Technology", /* sold by Transcend */ 265 "USB Mass Storage Device", 266 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ), 267 268 /* 269 * Bohdan Linda <bohdan.linda@gmail.com> 270 * 1GB USB sticks MyFlash High Speed. I have restricted 271 * the revision to my model only 272 */ 273 UNUSUAL_DEV( 0x0457, 0x0151, 0x0100, 0x0100, 274 "USB 2.0", 275 "Flash Disk", 276 US_SC_DEVICE, US_PR_DEVICE, NULL, 277 US_FL_NOT_LOCKABLE ), 278 279 /* Reported by Tamas Kerecsen <kerecsen@bigfoot.com> 280 * Obviously the PROM has not been customized by the VAR; 281 * the Vendor and Product string descriptors are: 282 * Generic Mass Storage (PROTOTYPE--Remember to change idVendor) 283 * Generic Manufacturer (PROTOTYPE--Remember to change idVendor) 284 */ 285 UNUSUAL_DEV( 0x045e, 0xffff, 0x0000, 0x0000, 286 "Mitac", 287 "GPS", 288 US_SC_DEVICE, US_PR_DEVICE, NULL, 289 US_FL_MAX_SECTORS_64 ), 290 291 /* 292 * This virtual floppy is found in Sun equipment (x4600, x4200m2, etc.) 293 * Reported by Pete Zaitcev <zaitcev@redhat.com> 294 * This device chokes on both version of MODE SENSE which we have, so 295 * use_10_for_ms is not effective, and we use US_FL_NO_WP_DETECT. 296 */ 297 UNUSUAL_DEV( 0x046b, 0xff40, 0x0100, 0x0100, 298 "AMI", 299 "Virtual Floppy", 300 US_SC_DEVICE, US_PR_DEVICE, NULL, 301 US_FL_NO_WP_DETECT), 302 303 /* Patch submitted by Philipp Friedrich <philipp@void.at> */ 304 UNUSUAL_DEV( 0x0482, 0x0100, 0x0100, 0x0100, 305 "Kyocera", 306 "Finecam S3x", 307 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY), 308 309 /* Patch submitted by Philipp Friedrich <philipp@void.at> */ 310 UNUSUAL_DEV( 0x0482, 0x0101, 0x0100, 0x0100, 311 "Kyocera", 312 "Finecam S4", 313 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY), 314 315 /* Patch submitted by Stephane Galles <stephane.galles@free.fr> */ 316 UNUSUAL_DEV( 0x0482, 0x0103, 0x0100, 0x0100, 317 "Kyocera", 318 "Finecam S5", 319 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY), 320 321 /* Patch submitted by Jens Taprogge <jens.taprogge@taprogge.org> */ 322 UNUSUAL_DEV( 0x0482, 0x0107, 0x0100, 0x0100, 323 "Kyocera", 324 "CONTAX SL300R T*", 325 US_SC_DEVICE, US_PR_DEVICE, NULL, 326 US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE), 327 328 /* Reported by Paul Stewart <stewart@wetlogic.net> 329 * This entry is needed because the device reports Sub=ff */ 330 UNUSUAL_DEV( 0x04a4, 0x0004, 0x0001, 0x0001, 331 "Hitachi", 332 "DVD-CAM DZ-MV100A Camcorder", 333 US_SC_SCSI, US_PR_CB, NULL, US_FL_SINGLE_LUN), 334 335 /* BENQ DC5330 336 * Reported by Manuel Fombuena <mfombuena@ya.com> and 337 * Frank Copeland <fjc@thingy.apana.org.au> */ 338 UNUSUAL_DEV( 0x04a5, 0x3010, 0x0100, 0x0100, 339 "Tekom Technologies, Inc", 340 "300_CAMERA", 341 US_SC_DEVICE, US_PR_DEVICE, NULL, 342 US_FL_IGNORE_RESIDUE ), 343 344 /* Patch for Nikon coolpix 2000 345 * Submitted by Fabien Cosse <fabien.cosse@wanadoo.fr>*/ 346 UNUSUAL_DEV( 0x04b0, 0x0301, 0x0010, 0x0010, 347 "NIKON", 348 "NIKON DSC E2000", 349 US_SC_DEVICE, US_PR_DEVICE,NULL, 350 US_FL_NOT_LOCKABLE ), 351 352 /* Reported by Doug Maxey (dwm@austin.ibm.com) */ 353 UNUSUAL_DEV( 0x04b3, 0x4001, 0x0110, 0x0110, 354 "IBM", 355 "IBM RSA2", 356 US_SC_DEVICE, US_PR_CB, NULL, 357 US_FL_MAX_SECTORS_MIN), 358 359 /* Reported by Simon Levitt <simon@whattf.com> 360 * This entry needs Sub and Proto fields */ 361 UNUSUAL_DEV( 0x04b8, 0x0601, 0x0100, 0x0100, 362 "Epson", 363 "875DC Storage", 364 US_SC_SCSI, US_PR_CB, NULL, US_FL_FIX_INQUIRY), 365 366 /* Reported by Khalid Aziz <khalid@gonehiking.org> 367 * This entry is needed because the device reports Sub=ff */ 368 UNUSUAL_DEV( 0x04b8, 0x0602, 0x0110, 0x0110, 369 "Epson", 370 "785EPX Storage", 371 US_SC_SCSI, US_PR_BULK, NULL, US_FL_SINGLE_LUN), 372 373 /* Not sure who reported this originally but 374 * Pavel Machek <pavel@ucw.cz> reported that the extra US_FL_SINGLE_LUN 375 * flag be added */ 376 UNUSUAL_DEV( 0x04cb, 0x0100, 0x0000, 0x2210, 377 "Fujifilm", 378 "FinePix 1400Zoom", 379 US_SC_UFI, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY | US_FL_SINGLE_LUN), 380 381 /* Reported by Peter Wächtler <pwaechtler@loewe-komp.de> 382 * The device needs the flags only. 383 */ 384 UNUSUAL_DEV( 0x04ce, 0x0002, 0x0074, 0x0074, 385 "ScanLogic", 386 "SL11R-IDE", 387 US_SC_DEVICE, US_PR_DEVICE, NULL, 388 US_FL_FIX_INQUIRY), 389 390 /* Reported by Kriston Fincher <kriston@airmail.net> 391 * Patch submitted by Sean Millichamp <sean@bruenor.org> 392 * This is to support the Panasonic PalmCam PV-SD4090 393 * This entry is needed because the device reports Sub=ff 394 */ 395 UNUSUAL_DEV( 0x04da, 0x0901, 0x0100, 0x0200, 396 "Panasonic", 397 "LS-120 Camera", 398 US_SC_UFI, US_PR_DEVICE, NULL, 0), 399 400 /* From Yukihiro Nakai, via zaitcev@yahoo.com. 401 * This is needed for CB instead of CBI */ 402 UNUSUAL_DEV( 0x04da, 0x0d05, 0x0000, 0x0000, 403 "Sharp CE-CW05", 404 "CD-R/RW Drive", 405 US_SC_8070, US_PR_CB, NULL, 0), 406 407 /* Reported by Adriaan Penning <a.penning@luon.net> */ 408 UNUSUAL_DEV( 0x04da, 0x2372, 0x0000, 0x9999, 409 "Panasonic", 410 "DMC-LCx Camera", 411 US_SC_DEVICE, US_PR_DEVICE, NULL, 412 US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ), 413 414 /* Reported by Simeon Simeonov <simeonov_2000@yahoo.com> */ 415 UNUSUAL_DEV( 0x04da, 0x2373, 0x0000, 0x9999, 416 "LEICA", 417 "D-LUX Camera", 418 US_SC_DEVICE, US_PR_DEVICE, NULL, 419 US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ), 420 421 /* Most of the following entries were developed with the help of 422 * Shuttle/SCM directly. 423 */ 424 UNUSUAL_DEV( 0x04e6, 0x0001, 0x0200, 0x0200, 425 "Matshita", 426 "LS-120", 427 US_SC_8020, US_PR_CB, NULL, 0), 428 429 UNUSUAL_DEV( 0x04e6, 0x0002, 0x0100, 0x0100, 430 "Shuttle", 431 "eUSCSI Bridge", 432 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init, 433 US_FL_SCM_MULT_TARG ), 434 435 #ifdef NO_SDDR09 436 UNUSUAL_DEV( 0x04e6, 0x0005, 0x0100, 0x0208, 437 "SCM Microsystems", 438 "eUSB CompactFlash Adapter", 439 US_SC_SCSI, US_PR_CB, NULL, 440 US_FL_SINGLE_LUN), 441 #endif 442 443 /* Reported by Markus Demleitner <msdemlei@cl.uni-heidelberg.de> */ 444 UNUSUAL_DEV( 0x04e6, 0x0006, 0x0100, 0x0100, 445 "SCM Microsystems Inc.", 446 "eUSB MMC Adapter", 447 US_SC_SCSI, US_PR_CB, NULL, 448 US_FL_SINGLE_LUN), 449 450 /* Reported by Daniel Nouri <dpunktnpunkt@web.de> */ 451 UNUSUAL_DEV( 0x04e6, 0x0006, 0x0205, 0x0205, 452 "Shuttle", 453 "eUSB MMC Adapter", 454 US_SC_SCSI, US_PR_DEVICE, NULL, 455 US_FL_SINGLE_LUN), 456 457 UNUSUAL_DEV( 0x04e6, 0x0007, 0x0100, 0x0200, 458 "Sony", 459 "Hifd", 460 US_SC_SCSI, US_PR_CB, NULL, 461 US_FL_SINGLE_LUN), 462 463 UNUSUAL_DEV( 0x04e6, 0x0009, 0x0200, 0x0200, 464 "Shuttle", 465 "eUSB ATA/ATAPI Adapter", 466 US_SC_8020, US_PR_CB, NULL, 0), 467 468 UNUSUAL_DEV( 0x04e6, 0x000a, 0x0200, 0x0200, 469 "Shuttle", 470 "eUSB CompactFlash Adapter", 471 US_SC_8020, US_PR_CB, NULL, 0), 472 473 UNUSUAL_DEV( 0x04e6, 0x000B, 0x0100, 0x0100, 474 "Shuttle", 475 "eUSCSI Bridge", 476 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 477 US_FL_SCM_MULT_TARG ), 478 479 UNUSUAL_DEV( 0x04e6, 0x000C, 0x0100, 0x0100, 480 "Shuttle", 481 "eUSCSI Bridge", 482 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 483 US_FL_SCM_MULT_TARG ), 484 485 UNUSUAL_DEV( 0x04e6, 0x0101, 0x0200, 0x0200, 486 "Shuttle", 487 "CD-RW Device", 488 US_SC_8020, US_PR_CB, NULL, 0), 489 490 /* Reported by Dmitry Khlystov <adminimus@gmail.com> */ 491 UNUSUAL_DEV( 0x04e8, 0x507c, 0x0220, 0x0220, 492 "Samsung", 493 "YP-U3", 494 US_SC_DEVICE, US_PR_DEVICE, NULL, 495 US_FL_MAX_SECTORS_64), 496 497 /* Entry and supporting patch by Theodore Kilgore <kilgota@auburn.edu>. 498 * Device uses standards-violating 32-byte Bulk Command Block Wrappers and 499 * reports itself as "Proprietary SCSI Bulk." Cf. device entry 0x084d:0x0011. 500 */ 501 UNUSUAL_DEV( 0x04fc, 0x80c2, 0x0100, 0x0100, 502 "Kobian Mercury", 503 "Binocam DCB-132", 504 US_SC_DEVICE, US_PR_DEVICE, NULL, 505 US_FL_BULK32), 506 507 /* Reported by Bob Sass <rls@vectordb.com> -- only rev 1.33 tested */ 508 UNUSUAL_DEV( 0x050d, 0x0115, 0x0133, 0x0133, 509 "Belkin", 510 "USB SCSI Adaptor", 511 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 512 US_FL_SCM_MULT_TARG ), 513 514 /* Iomega Clik! Drive 515 * Reported by David Chatenay <dchatenay@hotmail.com> 516 * The reason this is needed is not fully known. 517 */ 518 UNUSUAL_DEV( 0x0525, 0xa140, 0x0100, 0x0100, 519 "Iomega", 520 "USB Clik! 40", 521 US_SC_8070, US_PR_DEVICE, NULL, 522 US_FL_FIX_INQUIRY ), 523 524 /* Added by Alan Stern <stern@rowland.harvard.edu> */ 525 COMPLIANT_DEV(0x0525, 0xa4a5, 0x0000, 0x9999, 526 "Linux", 527 "File-backed Storage Gadget", 528 US_SC_DEVICE, US_PR_DEVICE, NULL, 529 US_FL_CAPACITY_OK ), 530 531 /* Yakumo Mega Image 37 532 * Submitted by Stephan Fuhrmann <atomenergie@t-online.de> */ 533 UNUSUAL_DEV( 0x052b, 0x1801, 0x0100, 0x0100, 534 "Tekom Technologies, Inc", 535 "300_CAMERA", 536 US_SC_DEVICE, US_PR_DEVICE, NULL, 537 US_FL_IGNORE_RESIDUE ), 538 539 /* Another Yakumo camera. 540 * Reported by Michele Alzetta <michele.alzetta@aliceposta.it> */ 541 UNUSUAL_DEV( 0x052b, 0x1804, 0x0100, 0x0100, 542 "Tekom Technologies, Inc", 543 "300_CAMERA", 544 US_SC_DEVICE, US_PR_DEVICE, NULL, 545 US_FL_IGNORE_RESIDUE ), 546 547 /* Reported by Iacopo Spalletti <avvisi@spalletti.it> */ 548 UNUSUAL_DEV( 0x052b, 0x1807, 0x0100, 0x0100, 549 "Tekom Technologies, Inc", 550 "300_CAMERA", 551 US_SC_DEVICE, US_PR_DEVICE, NULL, 552 US_FL_IGNORE_RESIDUE ), 553 554 /* Yakumo Mega Image 47 555 * Reported by Bjoern Paetzel <kolrabi@kolrabi.de> */ 556 UNUSUAL_DEV( 0x052b, 0x1905, 0x0100, 0x0100, 557 "Tekom Technologies, Inc", 558 "400_CAMERA", 559 US_SC_DEVICE, US_PR_DEVICE, NULL, 560 US_FL_IGNORE_RESIDUE ), 561 562 /* Reported by Paul Ortyl <ortylp@3miasto.net> 563 * Note that it's similar to the device above, only different prodID */ 564 UNUSUAL_DEV( 0x052b, 0x1911, 0x0100, 0x0100, 565 "Tekom Technologies, Inc", 566 "400_CAMERA", 567 US_SC_DEVICE, US_PR_DEVICE, NULL, 568 US_FL_IGNORE_RESIDUE ), 569 570 UNUSUAL_DEV( 0x054c, 0x0010, 0x0106, 0x0450, 571 "Sony", 572 "DSC-S30/S70/S75/505V/F505/F707/F717/P8", 573 US_SC_SCSI, US_PR_DEVICE, NULL, 574 US_FL_SINGLE_LUN | US_FL_NOT_LOCKABLE | US_FL_NO_WP_DETECT ), 575 576 /* Submitted by Lars Jacob <jacob.lars@googlemail.com> 577 * This entry is needed because the device reports Sub=ff */ 578 UNUSUAL_DEV( 0x054c, 0x0010, 0x0500, 0x0610, 579 "Sony", 580 "DSC-T1/T5/H5", 581 US_SC_8070, US_PR_DEVICE, NULL, 582 US_FL_SINGLE_LUN ), 583 584 585 /* Reported by wim@geeks.nl */ 586 UNUSUAL_DEV( 0x054c, 0x0025, 0x0100, 0x0100, 587 "Sony", 588 "Memorystick NW-MS7", 589 US_SC_DEVICE, US_PR_DEVICE, NULL, 590 US_FL_SINGLE_LUN ), 591 592 /* Submitted by Olaf Hering, <olh@suse.de> SuSE Bugzilla #49049 */ 593 UNUSUAL_DEV( 0x054c, 0x002c, 0x0501, 0x2000, 594 "Sony", 595 "USB Floppy Drive", 596 US_SC_DEVICE, US_PR_DEVICE, NULL, 597 US_FL_SINGLE_LUN ), 598 599 UNUSUAL_DEV( 0x054c, 0x002d, 0x0100, 0x0100, 600 "Sony", 601 "Memorystick MSAC-US1", 602 US_SC_DEVICE, US_PR_DEVICE, NULL, 603 US_FL_SINGLE_LUN ), 604 605 /* Submitted by Klaus Mueller <k.mueller@intershop.de> */ 606 UNUSUAL_DEV( 0x054c, 0x002e, 0x0106, 0x0310, 607 "Sony", 608 "Handycam", 609 US_SC_SCSI, US_PR_DEVICE, NULL, 610 US_FL_SINGLE_LUN ), 611 612 /* Submitted by Rajesh Kumble Nayak <nayak@obs-nice.fr> */ 613 UNUSUAL_DEV( 0x054c, 0x002e, 0x0500, 0x0500, 614 "Sony", 615 "Handycam HC-85", 616 US_SC_UFI, US_PR_DEVICE, NULL, 617 US_FL_SINGLE_LUN ), 618 619 UNUSUAL_DEV( 0x054c, 0x0032, 0x0000, 0x9999, 620 "Sony", 621 "Memorystick MSC-U01N", 622 US_SC_DEVICE, US_PR_DEVICE, NULL, 623 US_FL_SINGLE_LUN ), 624 625 /* Submitted by Michal Mlotek <mlotek@foobar.pl> */ 626 UNUSUAL_DEV( 0x054c, 0x0058, 0x0000, 0x9999, 627 "Sony", 628 "PEG N760c Memorystick", 629 US_SC_DEVICE, US_PR_DEVICE, NULL, 630 US_FL_FIX_INQUIRY ), 631 632 UNUSUAL_DEV( 0x054c, 0x0069, 0x0000, 0x9999, 633 "Sony", 634 "Memorystick MSC-U03", 635 US_SC_UFI, US_PR_CB, NULL, 636 US_FL_SINGLE_LUN ), 637 638 /* Submitted by Nathan Babb <nathan@lexi.com> */ 639 UNUSUAL_DEV( 0x054c, 0x006d, 0x0000, 0x9999, 640 "Sony", 641 "PEG Mass Storage", 642 US_SC_DEVICE, US_PR_DEVICE, NULL, 643 US_FL_FIX_INQUIRY ), 644 645 /* Submitted by Frank Engel <frankie@cse.unsw.edu.au> */ 646 UNUSUAL_DEV( 0x054c, 0x0099, 0x0000, 0x9999, 647 "Sony", 648 "PEG Mass Storage", 649 US_SC_DEVICE, US_PR_DEVICE, NULL, 650 US_FL_FIX_INQUIRY ), 651 652 /* Submitted by Mike Alborn <malborn@deandra.homeip.net> */ 653 UNUSUAL_DEV( 0x054c, 0x016a, 0x0000, 0x9999, 654 "Sony", 655 "PEG Mass Storage", 656 US_SC_DEVICE, US_PR_DEVICE, NULL, 657 US_FL_FIX_INQUIRY ), 658 659 /* floppy reports multiple luns */ 660 UNUSUAL_DEV( 0x055d, 0x2020, 0x0000, 0x0210, 661 "SAMSUNG", 662 "SFD-321U [FW 0C]", 663 US_SC_DEVICE, US_PR_DEVICE, NULL, 664 US_FL_SINGLE_LUN ), 665 666 667 UNUSUAL_DEV( 0x057b, 0x0000, 0x0000, 0x0299, 668 "Y-E Data", 669 "Flashbuster-U", 670 US_SC_DEVICE, US_PR_CB, NULL, 671 US_FL_SINGLE_LUN), 672 673 UNUSUAL_DEV( 0x057b, 0x0000, 0x0300, 0x9999, 674 "Y-E Data", 675 "Flashbuster-U", 676 US_SC_DEVICE, US_PR_DEVICE, NULL, 677 US_FL_SINGLE_LUN), 678 679 /* Reported by Johann Cardon <johann.cardon@free.fr> 680 * This entry is needed only because the device reports 681 * bInterfaceClass = 0xff (vendor-specific) 682 */ 683 UNUSUAL_DEV( 0x057b, 0x0022, 0x0000, 0x9999, 684 "Y-E Data", 685 "Silicon Media R/W", 686 US_SC_DEVICE, US_PR_DEVICE, NULL, 0), 687 688 /* Reported by RTE <raszilki@yandex.ru> */ 689 UNUSUAL_DEV( 0x058f, 0x6387, 0x0141, 0x0141, 690 "JetFlash", 691 "TS1GJF2A/120", 692 US_SC_DEVICE, US_PR_DEVICE, NULL, 693 US_FL_MAX_SECTORS_64 ), 694 695 /* Fabrizio Fellini <fello@libero.it> */ 696 UNUSUAL_DEV( 0x0595, 0x4343, 0x0000, 0x2210, 697 "Fujifilm", 698 "Digital Camera EX-20 DSC", 699 US_SC_8070, US_PR_DEVICE, NULL, 0 ), 700 701 /* Reported by Andre Welter <a.r.welter@gmx.de> 702 * This antique device predates the release of the Bulk-only Transport 703 * spec, and if it gets a Get-Max-LUN then it requires the host to do a 704 * Clear-Halt on the bulk endpoints. The SINGLE_LUN flag will prevent 705 * us from sending the request. 706 */ 707 UNUSUAL_DEV( 0x059b, 0x0001, 0x0100, 0x0100, 708 "Iomega", 709 "ZIP 100", 710 US_SC_DEVICE, US_PR_DEVICE, NULL, 711 US_FL_SINGLE_LUN ), 712 713 /* Reported by <Hendryk.Pfeiffer@gmx.de> */ 714 UNUSUAL_DEV( 0x059f, 0x0643, 0x0000, 0x0000, 715 "LaCie", 716 "DVD+-RW", 717 US_SC_DEVICE, US_PR_DEVICE, NULL, 718 US_FL_GO_SLOW ), 719 720 /* Submitted by Joel Bourquard <numlock@freesurf.ch> 721 * Some versions of this device need the SubClass and Protocol overrides 722 * while others don't. 723 */ 724 UNUSUAL_DEV( 0x05ab, 0x0060, 0x1104, 0x1110, 725 "In-System", 726 "PyroGate External CD-ROM Enclosure (FCD-523)", 727 US_SC_SCSI, US_PR_BULK, NULL, 728 US_FL_NEED_OVERRIDE ), 729 730 /* Submitted by Sven Anderson <sven-linux@anderson.de> 731 * There are at least four ProductIDs used for iPods, so I added 0x1202 and 732 * 0x1204. They just need the US_FL_FIX_CAPACITY. As the bcdDevice appears 733 * to change with firmware updates, I changed the range to maximum for all 734 * iPod entries. 735 */ 736 UNUSUAL_DEV( 0x05ac, 0x1202, 0x0000, 0x9999, 737 "Apple", 738 "iPod", 739 US_SC_DEVICE, US_PR_DEVICE, NULL, 740 US_FL_FIX_CAPACITY ), 741 742 /* Reported by Avi Kivity <avi@argo.co.il> */ 743 UNUSUAL_DEV( 0x05ac, 0x1203, 0x0000, 0x9999, 744 "Apple", 745 "iPod", 746 US_SC_DEVICE, US_PR_DEVICE, NULL, 747 US_FL_FIX_CAPACITY ), 748 749 UNUSUAL_DEV( 0x05ac, 0x1204, 0x0000, 0x9999, 750 "Apple", 751 "iPod", 752 US_SC_DEVICE, US_PR_DEVICE, NULL, 753 US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ), 754 755 UNUSUAL_DEV( 0x05ac, 0x1205, 0x0000, 0x9999, 756 "Apple", 757 "iPod", 758 US_SC_DEVICE, US_PR_DEVICE, NULL, 759 US_FL_FIX_CAPACITY ), 760 761 /* 762 * Reported by Tyson Vinson <lornoss@gmail.com> 763 * This particular productId is the iPod Nano 764 */ 765 UNUSUAL_DEV( 0x05ac, 0x120a, 0x0000, 0x9999, 766 "Apple", 767 "iPod", 768 US_SC_DEVICE, US_PR_DEVICE, NULL, 769 US_FL_FIX_CAPACITY ), 770 771 /* Reported by Dan Williams <dcbw@redhat.com> 772 * Option N.V. mobile broadband modems 773 * Ignore driver CD mode and force into modem mode by default. 774 */ 775 776 /* Globetrotter HSDPA; mass storage shows up as Qualcomm for vendor */ 777 UNUSUAL_DEV( 0x05c6, 0x1000, 0x0000, 0x9999, 778 "Option N.V.", 779 "Mass Storage", 780 US_SC_DEVICE, US_PR_DEVICE, option_ms_init, 781 0), 782 783 /* Reported by Blake Matheny <bmatheny@purdue.edu> */ 784 UNUSUAL_DEV( 0x05dc, 0xb002, 0x0000, 0x0113, 785 "Lexar", 786 "USB CF Reader", 787 US_SC_DEVICE, US_PR_DEVICE, NULL, 788 US_FL_FIX_INQUIRY ), 789 790 /* The following two entries are for a Genesys USB to IDE 791 * converter chip, but it changes its ProductId depending 792 * on whether or not a disk or an optical device is enclosed 793 * They were originally reported by Alexander Oltu 794 * <alexander@all-2.com> and Peter Marks <peter.marks@turner.com> 795 * respectively. 796 * 797 * US_FL_GO_SLOW and US_FL_MAX_SECTORS_64 added by Phil Dibowitz 798 * <phil@ipom.com> as these flags were made and hard-coded 799 * special-cases were pulled from scsiglue.c. 800 */ 801 UNUSUAL_DEV( 0x05e3, 0x0701, 0x0000, 0xffff, 802 "Genesys Logic", 803 "USB to IDE Optical", 804 US_SC_DEVICE, US_PR_DEVICE, NULL, 805 US_FL_GO_SLOW | US_FL_MAX_SECTORS_64 | US_FL_IGNORE_RESIDUE ), 806 807 UNUSUAL_DEV( 0x05e3, 0x0702, 0x0000, 0xffff, 808 "Genesys Logic", 809 "USB to IDE Disk", 810 US_SC_DEVICE, US_PR_DEVICE, NULL, 811 US_FL_GO_SLOW | US_FL_MAX_SECTORS_64 | US_FL_IGNORE_RESIDUE ), 812 813 /* Reported by Ben Efros <ben@pc-doctor.com> */ 814 UNUSUAL_DEV( 0x05e3, 0x0723, 0x9451, 0x9451, 815 "Genesys Logic", 816 "USB to SATA", 817 US_SC_DEVICE, US_PR_DEVICE, NULL, 818 US_FL_SANE_SENSE ), 819 820 /* Reported by Hanno Boeck <hanno@gmx.de> 821 * Taken from the Lycoris Kernel */ 822 UNUSUAL_DEV( 0x0636, 0x0003, 0x0000, 0x9999, 823 "Vivitar", 824 "Vivicam 35Xx", 825 US_SC_SCSI, US_PR_BULK, NULL, 826 US_FL_FIX_INQUIRY ), 827 828 UNUSUAL_DEV( 0x0644, 0x0000, 0x0100, 0x0100, 829 "TEAC", 830 "Floppy Drive", 831 US_SC_UFI, US_PR_CB, NULL, 0 ), 832 833 /* Reported by Darsen Lu <darsen@micro.ee.nthu.edu.tw> */ 834 UNUSUAL_DEV( 0x066f, 0x8000, 0x0001, 0x0001, 835 "SigmaTel", 836 "USBMSC Audio Player", 837 US_SC_DEVICE, US_PR_DEVICE, NULL, 838 US_FL_FIX_CAPACITY ), 839 840 /* Reported by Richard -=[]=- <micro_flyer@hotmail.com> */ 841 /* Change to bcdDeviceMin (0x0100 to 0x0001) reported by 842 * Thomas Bartosik <tbartdev@gmx-topmail.de> */ 843 UNUSUAL_DEV( 0x067b, 0x2507, 0x0001, 0x0100, 844 "Prolific Technology Inc.", 845 "Mass Storage Device", 846 US_SC_DEVICE, US_PR_DEVICE, NULL, 847 US_FL_FIX_CAPACITY | US_FL_GO_SLOW ), 848 849 /* Reported by Alex Butcher <alex.butcher@assursys.co.uk> */ 850 UNUSUAL_DEV( 0x067b, 0x3507, 0x0001, 0x0101, 851 "Prolific Technology Inc.", 852 "ATAPI-6 Bridge Controller", 853 US_SC_DEVICE, US_PR_DEVICE, NULL, 854 US_FL_FIX_CAPACITY | US_FL_GO_SLOW ), 855 856 /* Submitted by Benny Sjostrand <benny@hostmobility.com> */ 857 UNUSUAL_DEV( 0x0686, 0x4011, 0x0001, 0x0001, 858 "Minolta", 859 "Dimage F300", 860 US_SC_SCSI, US_PR_BULK, NULL, 0 ), 861 862 /* Reported by Miguel A. Fosas <amn3s1a@ono.com> */ 863 UNUSUAL_DEV( 0x0686, 0x4017, 0x0001, 0x0001, 864 "Minolta", 865 "DIMAGE E223", 866 US_SC_SCSI, US_PR_DEVICE, NULL, 0 ), 867 868 UNUSUAL_DEV( 0x0693, 0x0005, 0x0100, 0x0100, 869 "Hagiwara", 870 "Flashgate", 871 US_SC_SCSI, US_PR_BULK, NULL, 0 ), 872 873 /* Reported by David Hamilton <niftimusmaximus@lycos.com> */ 874 UNUSUAL_DEV( 0x069b, 0x3004, 0x0001, 0x0001, 875 "Thomson Multimedia Inc.", 876 "RCA RD1080 MP3 Player", 877 US_SC_DEVICE, US_PR_DEVICE, NULL, 878 US_FL_FIX_CAPACITY ), 879 880 /* Reported by Adrian Pilchowiec <adi1981@epf.pl> */ 881 UNUSUAL_DEV( 0x071b, 0x3203, 0x0000, 0x0000, 882 "RockChip", 883 "MP3", 884 US_SC_DEVICE, US_PR_DEVICE, NULL, 885 US_FL_NO_WP_DETECT | US_FL_MAX_SECTORS_64), 886 887 /* Reported by Jean-Baptiste Onofre <jb@nanthrax.net> 888 * Support the following product : 889 * "Dane-Elec MediaTouch" 890 */ 891 UNUSUAL_DEV( 0x071b, 0x32bb, 0x0000, 0x0000, 892 "RockChip", 893 "MTP", 894 US_SC_DEVICE, US_PR_DEVICE, NULL, 895 US_FL_NO_WP_DETECT | US_FL_MAX_SECTORS_64), 896 897 /* Reported by Massimiliano Ghilardi <massimiliano.ghilardi@gmail.com> 898 * This USB MP3/AVI player device fails and disconnects if more than 128 899 * sectors (64kB) are read/written in a single command, and may be present 900 * at least in the following products: 901 * "Magnex Digital Video Panel DVP 1800" 902 * "MP4 AIGO 4GB SLOT SD" 903 * "Teclast TL-C260 MP3" 904 * "i.Meizu PMP MP3/MP4" 905 * "Speed MV8 MP4 Audio Player" 906 */ 907 UNUSUAL_DEV( 0x071b, 0x3203, 0x0100, 0x0100, 908 "RockChip", 909 "ROCK MP3", 910 US_SC_DEVICE, US_PR_DEVICE, NULL, 911 US_FL_MAX_SECTORS_64), 912 913 /* Reported by Olivier Blondeau <zeitoun@gmail.com> */ 914 UNUSUAL_DEV( 0x0727, 0x0306, 0x0100, 0x0100, 915 "ATMEL", 916 "SND1 Storage", 917 US_SC_DEVICE, US_PR_DEVICE, NULL, 918 US_FL_IGNORE_RESIDUE), 919 920 /* Submitted by Roman Hodek <roman@hodek.net> */ 921 UNUSUAL_DEV( 0x0781, 0x0001, 0x0200, 0x0200, 922 "Sandisk", 923 "ImageMate SDDR-05a", 924 US_SC_SCSI, US_PR_CB, NULL, 925 US_FL_SINGLE_LUN ), 926 927 UNUSUAL_DEV( 0x0781, 0x0002, 0x0009, 0x0009, 928 "SanDisk Corporation", 929 "ImageMate CompactFlash USB", 930 US_SC_DEVICE, US_PR_DEVICE, NULL, 931 US_FL_FIX_CAPACITY ), 932 933 UNUSUAL_DEV( 0x0781, 0x0100, 0x0100, 0x0100, 934 "Sandisk", 935 "ImageMate SDDR-12", 936 US_SC_SCSI, US_PR_CB, NULL, 937 US_FL_SINGLE_LUN ), 938 939 /* Reported by Eero Volotinen <eero@ping-viini.org> */ 940 UNUSUAL_DEV( 0x07ab, 0xfccd, 0x0000, 0x9999, 941 "Freecom Technologies", 942 "FHD-Classic", 943 US_SC_DEVICE, US_PR_DEVICE, NULL, 944 US_FL_FIX_CAPACITY), 945 946 UNUSUAL_DEV( 0x07af, 0x0004, 0x0100, 0x0133, 947 "Microtech", 948 "USB-SCSI-DB25", 949 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 950 US_FL_SCM_MULT_TARG ), 951 952 UNUSUAL_DEV( 0x07af, 0x0005, 0x0100, 0x0100, 953 "Microtech", 954 "USB-SCSI-HD50", 955 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init, 956 US_FL_SCM_MULT_TARG ), 957 958 #ifdef NO_SDDR09 959 UNUSUAL_DEV( 0x07af, 0x0006, 0x0100, 0x0100, 960 "Microtech", 961 "CameraMate", 962 US_SC_SCSI, US_PR_CB, NULL, 963 US_FL_SINGLE_LUN ), 964 #endif 965 966 /* Datafab KECF-USB / Sagatek DCS-CF / Simpletech Flashlink UCF-100 967 * Only revision 1.13 tested (same for all of the above devices, 968 * based on the Datafab DF-UG-07 chip). Needed for US_FL_FIX_INQUIRY. 969 * Submitted by Marek Michalkiewicz <marekm@amelek.gda.pl>. 970 * See also http://martin.wilck.bei.t-online.de/#kecf . 971 */ 972 UNUSUAL_DEV( 0x07c4, 0xa400, 0x0000, 0xffff, 973 "Datafab", 974 "KECF-USB", 975 US_SC_DEVICE, US_PR_DEVICE, NULL, 976 US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY ), 977 978 /* Reported by Rauch Wolke <rauchwolke@gmx.net> 979 * and augmented by binbin <binbinsh@gmail.com> (Bugzilla #12882) 980 */ 981 UNUSUAL_DEV( 0x07c4, 0xa4a5, 0x0000, 0xffff, 982 "Simple Tech/Datafab", 983 "CF+SM Reader", 984 US_SC_DEVICE, US_PR_DEVICE, NULL, 985 US_FL_IGNORE_RESIDUE | US_FL_MAX_SECTORS_64 ), 986 987 /* Casio QV 2x00/3x00/4000/8000 digital still cameras are not conformant 988 * to the USB storage specification in two ways: 989 * - They tell us they are using transport protocol CBI. In reality they 990 * are using transport protocol CB. 991 * - They don't like the INQUIRY command. So we must handle this command 992 * of the SCSI layer ourselves. 993 * - Some cameras with idProduct=0x1001 and bcdDevice=0x1000 have 994 * bInterfaceProtocol=0x00 (US_PR_CBI) while others have 0x01 (US_PR_CB). 995 * So don't remove the US_PR_CB override! 996 * - Cameras with bcdDevice=0x9009 require the US_SC_8070 override. 997 */ 998 UNUSUAL_DEV( 0x07cf, 0x1001, 0x1000, 0x9999, 999 "Casio", 1000 "QV DigitalCamera", 1001 US_SC_8070, US_PR_CB, NULL, 1002 US_FL_NEED_OVERRIDE | US_FL_FIX_INQUIRY ), 1003 1004 /* Submitted by Hartmut Wahl <hwahl@hwahl.de>*/ 1005 UNUSUAL_DEV( 0x0839, 0x000a, 0x0001, 0x0001, 1006 "Samsung", 1007 "Digimax 410", 1008 US_SC_DEVICE, US_PR_DEVICE, NULL, 1009 US_FL_FIX_INQUIRY), 1010 1011 /* Reported by Luciano Rocha <luciano@eurotux.com> */ 1012 UNUSUAL_DEV( 0x0840, 0x0082, 0x0001, 0x0001, 1013 "Argosy", 1014 "Storage", 1015 US_SC_DEVICE, US_PR_DEVICE, NULL, 1016 US_FL_FIX_CAPACITY), 1017 1018 /* Reported and patched by Nguyen Anh Quynh <aquynh@gmail.com> */ 1019 UNUSUAL_DEV( 0x0840, 0x0084, 0x0001, 0x0001, 1020 "Argosy", 1021 "Storage", 1022 US_SC_DEVICE, US_PR_DEVICE, NULL, 1023 US_FL_FIX_CAPACITY), 1024 1025 /* Reported by Martijn Hijdra <martijn.hijdra@gmail.com> */ 1026 UNUSUAL_DEV( 0x0840, 0x0085, 0x0001, 0x0001, 1027 "Argosy", 1028 "Storage", 1029 US_SC_DEVICE, US_PR_DEVICE, NULL, 1030 US_FL_FIX_CAPACITY), 1031 1032 /* Entry and supporting patch by Theodore Kilgore <kilgota@auburn.edu>. 1033 * Flag will support Bulk devices which use a standards-violating 32-byte 1034 * Command Block Wrapper. Here, the "DC2MEGA" cameras (several brands) with 1035 * Grandtech GT892x chip, which request "Proprietary SCSI Bulk" support. 1036 */ 1037 1038 UNUSUAL_DEV( 0x084d, 0x0011, 0x0110, 0x0110, 1039 "Grandtech", 1040 "DC2MEGA", 1041 US_SC_DEVICE, US_PR_DEVICE, NULL, 1042 US_FL_BULK32), 1043 1044 /* Andrew Lunn <andrew@lunn.ch> 1045 * PanDigital Digital Picture Frame. Does not like ALLOW_MEDIUM_REMOVAL 1046 * on LUN 4. 1047 * Note: Vend:Prod clash with "Ltd Maxell WS30 Slim Digital Camera" 1048 */ 1049 UNUSUAL_DEV( 0x0851, 0x1543, 0x0200, 0x0200, 1050 "PanDigital", 1051 "Photo Frame", 1052 US_SC_DEVICE, US_PR_DEVICE, NULL, 1053 US_FL_NOT_LOCKABLE), 1054 1055 /* Submitted by Jan De Luyck <lkml@kcore.org> */ 1056 UNUSUAL_DEV( 0x08bd, 0x1100, 0x0000, 0x0000, 1057 "CITIZEN", 1058 "X1DE-USB", 1059 US_SC_DEVICE, US_PR_DEVICE, NULL, 1060 US_FL_SINGLE_LUN), 1061 1062 /* Submitted by Dylan Taft <d13f00l@gmail.com> 1063 * US_FL_IGNORE_RESIDUE Needed 1064 */ 1065 UNUSUAL_DEV( 0x08ca, 0x3103, 0x0100, 0x0100, 1066 "AIPTEK", 1067 "Aiptek USB Keychain MP3 Player", 1068 US_SC_DEVICE, US_PR_DEVICE, NULL, 1069 US_FL_IGNORE_RESIDUE), 1070 1071 /* Entry needed for flags. Moreover, all devices with this ID use 1072 * bulk-only transport, but _some_ falsely report Control/Bulk instead. 1073 * One example is "Trumpion Digital Research MYMP3". 1074 * Submitted by Bjoern Brill <brill(at)fs.math.uni-frankfurt.de> 1075 */ 1076 UNUSUAL_DEV( 0x090a, 0x1001, 0x0100, 0x0100, 1077 "Trumpion", 1078 "t33520 USB Flash Card Controller", 1079 US_SC_DEVICE, US_PR_BULK, NULL, 1080 US_FL_NEED_OVERRIDE ), 1081 1082 /* Reported by Filippo Bardelli <filibard@libero.it> 1083 * The device reports a subclass of RBC, which is wrong. 1084 */ 1085 UNUSUAL_DEV( 0x090a, 0x1050, 0x0100, 0x0100, 1086 "Trumpion Microelectronics, Inc.", 1087 "33520 USB Digital Voice Recorder", 1088 US_SC_UFI, US_PR_DEVICE, NULL, 1089 0), 1090 1091 /* Trumpion Microelectronics MP3 player (felipe_alfaro@linuxmail.org) */ 1092 UNUSUAL_DEV( 0x090a, 0x1200, 0x0000, 0x9999, 1093 "Trumpion", 1094 "MP3 player", 1095 US_SC_RBC, US_PR_BULK, NULL, 1096 0 ), 1097 1098 /* aeb */ 1099 UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff, 1100 "Feiya", 1101 "5-in-1 Card Reader", 1102 US_SC_DEVICE, US_PR_DEVICE, NULL, 1103 US_FL_FIX_CAPACITY ), 1104 1105 /* This Pentax still camera is not conformant 1106 * to the USB storage specification: - 1107 * - It does not like the INQUIRY command. So we must handle this command 1108 * of the SCSI layer ourselves. 1109 * Tested on Rev. 10.00 (0x1000) 1110 * Submitted by James Courtier-Dutton <James@superbug.demon.co.uk> 1111 */ 1112 UNUSUAL_DEV( 0x0a17, 0x0004, 0x1000, 0x1000, 1113 "Pentax", 1114 "Optio 2/3/400", 1115 US_SC_DEVICE, US_PR_DEVICE, NULL, 1116 US_FL_FIX_INQUIRY ), 1117 1118 /* These are virtual windows driver CDs, which the zd1211rw driver 1119 * automatically converts into WLAN devices. */ 1120 UNUSUAL_DEV( 0x0ace, 0x2011, 0x0101, 0x0101, 1121 "ZyXEL", 1122 "G-220F USB-WLAN Install", 1123 US_SC_DEVICE, US_PR_DEVICE, NULL, 1124 US_FL_IGNORE_DEVICE ), 1125 1126 UNUSUAL_DEV( 0x0ace, 0x20ff, 0x0101, 0x0101, 1127 "SiteCom", 1128 "WL-117 USB-WLAN Install", 1129 US_SC_DEVICE, US_PR_DEVICE, NULL, 1130 US_FL_IGNORE_DEVICE ), 1131 1132 /* Reported by Dan Williams <dcbw@redhat.com> 1133 * Option N.V. mobile broadband modems 1134 * Ignore driver CD mode and force into modem mode by default. 1135 */ 1136 1137 /* iCON 225 */ 1138 UNUSUAL_DEV( 0x0af0, 0x6971, 0x0000, 0x9999, 1139 "Option N.V.", 1140 "Mass Storage", 1141 US_SC_DEVICE, US_PR_DEVICE, option_ms_init, 1142 0), 1143 1144 /* Reported by F. Aben <f.aben@option.com> 1145 * This device (wrongly) has a vendor-specific device descriptor. 1146 * The entry is needed so usb-storage can bind to it's mass-storage 1147 * interface as an interface driver */ 1148 UNUSUAL_DEV( 0x0af0, 0x7401, 0x0000, 0x0000, 1149 "Option", 1150 "GI 0401 SD-Card", 1151 US_SC_DEVICE, US_PR_DEVICE, NULL, 1152 0 ), 1153 1154 /* Reported by Jan Dumon <j.dumon@option.com> 1155 * This device (wrongly) has a vendor-specific device descriptor. 1156 * The entry is needed so usb-storage can bind to it's mass-storage 1157 * interface as an interface driver */ 1158 UNUSUAL_DEV( 0x0af0, 0x7501, 0x0000, 0x0000, 1159 "Option", 1160 "GI 0431 SD-Card", 1161 US_SC_DEVICE, US_PR_DEVICE, NULL, 1162 0 ), 1163 1164 /* Reported by Ben Efros <ben@pc-doctor.com> */ 1165 UNUSUAL_DEV( 0x0bc2, 0x3010, 0x0000, 0x0000, 1166 "Seagate", 1167 "FreeAgent Pro", 1168 US_SC_DEVICE, US_PR_DEVICE, NULL, 1169 US_FL_SANE_SENSE ), 1170 1171 UNUSUAL_DEV( 0x0d49, 0x7310, 0x0000, 0x9999, 1172 "Maxtor", 1173 "USB to SATA", 1174 US_SC_DEVICE, US_PR_DEVICE, NULL, 1175 US_FL_SANE_SENSE), 1176 1177 /* 1178 * Pete Zaitcev <zaitcev@yahoo.com>, bz#164688. 1179 * The device blatantly ignores LUN and returns 1 in GetMaxLUN. 1180 */ 1181 UNUSUAL_DEV( 0x0c45, 0x1060, 0x0100, 0x0100, 1182 "Unknown", 1183 "Unknown", 1184 US_SC_DEVICE, US_PR_DEVICE, NULL, 1185 US_FL_SINGLE_LUN ), 1186 1187 /* Submitted by Joris Struyve <joris@struyve.be> */ 1188 UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff, 1189 "Medion", 1190 "MD 7425", 1191 US_SC_DEVICE, US_PR_DEVICE, NULL, 1192 US_FL_FIX_INQUIRY), 1193 1194 /* 1195 * Entry for Jenoptik JD 5200z3 1196 * 1197 * email: car.busse@gmx.de 1198 */ 1199 UNUSUAL_DEV( 0x0d96, 0x5200, 0x0001, 0x0200, 1200 "Jenoptik", 1201 "JD 5200 z3", 1202 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY), 1203 1204 /* Reported by Jason Johnston <killean@shaw.ca> */ 1205 UNUSUAL_DEV( 0x0dc4, 0x0073, 0x0000, 0x0000, 1206 "Macpower Technology Co.LTD.", 1207 "USB 2.0 3.5\" DEVICE", 1208 US_SC_DEVICE, US_PR_DEVICE, NULL, 1209 US_FL_FIX_CAPACITY), 1210 1211 /* Reported by Lubomir Blaha <tritol@trilogic.cz> 1212 * I _REALLY_ don't know what 3rd, 4th number and all defines mean, but this 1213 * works for me. Can anybody correct these values? (I able to test corrected 1214 * version.) 1215 */ 1216 UNUSUAL_DEV( 0x0dd8, 0x1060, 0x0000, 0xffff, 1217 "Netac", 1218 "USB-CF-Card", 1219 US_SC_DEVICE, US_PR_DEVICE, NULL, 1220 US_FL_FIX_INQUIRY ), 1221 1222 /* Reported by Edward Chapman (taken from linux-usb mailing list) 1223 Netac OnlyDisk Mini U2CV2 512MB USB 2.0 Flash Drive */ 1224 UNUSUAL_DEV( 0x0dd8, 0xd202, 0x0000, 0x9999, 1225 "Netac", 1226 "USB Flash Disk", 1227 US_SC_DEVICE, US_PR_DEVICE, NULL, 1228 US_FL_IGNORE_RESIDUE ), 1229 1230 1231 /* Patch by Stephan Walter <stephan.walter@epfl.ch> 1232 * I don't know why, but it works... */ 1233 UNUSUAL_DEV( 0x0dda, 0x0001, 0x0012, 0x0012, 1234 "WINWARD", 1235 "Music Disk", 1236 US_SC_DEVICE, US_PR_DEVICE, NULL, 1237 US_FL_IGNORE_RESIDUE ), 1238 1239 /* Reported by Ian McConnell <ian at emit.demon.co.uk> */ 1240 UNUSUAL_DEV( 0x0dda, 0x0301, 0x0012, 0x0012, 1241 "PNP_MP3", 1242 "PNP_MP3 PLAYER", 1243 US_SC_DEVICE, US_PR_DEVICE, NULL, 1244 US_FL_IGNORE_RESIDUE ), 1245 1246 /* Reported by Jim McCloskey <mcclosk@ucsc.edu> */ 1247 UNUSUAL_DEV( 0x0e21, 0x0520, 0x0100, 0x0100, 1248 "Cowon Systems", 1249 "iAUDIO M5", 1250 US_SC_DEVICE, US_PR_BULK, NULL, 1251 US_FL_NEED_OVERRIDE ), 1252 1253 /* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */ 1254 UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300, 1255 "USB", 1256 "Solid state disk", 1257 US_SC_DEVICE, US_PR_DEVICE, NULL, 1258 US_FL_FIX_INQUIRY ), 1259 1260 /* Submitted by Daniel Drake <dsd@gentoo.org> 1261 * Reported by dayul on the Gentoo Forums */ 1262 UNUSUAL_DEV( 0x0ea0, 0x2168, 0x0110, 0x0110, 1263 "Ours Technology", 1264 "Flash Disk", 1265 US_SC_DEVICE, US_PR_DEVICE, NULL, 1266 US_FL_IGNORE_RESIDUE ), 1267 1268 /* Reported by Rastislav Stanik <rs_kernel@yahoo.com> */ 1269 UNUSUAL_DEV( 0x0ea0, 0x6828, 0x0110, 0x0110, 1270 "USB", 1271 "Flash Disk", 1272 US_SC_DEVICE, US_PR_DEVICE, NULL, 1273 US_FL_IGNORE_RESIDUE ), 1274 1275 /* Reported by Benjamin Schiller <sbenni@gmx.de> 1276 * It is also sold by Easylite as DJ 20 */ 1277 UNUSUAL_DEV( 0x0ed1, 0x7636, 0x0103, 0x0103, 1278 "Typhoon", 1279 "My DJ 1820", 1280 US_SC_DEVICE, US_PR_DEVICE, NULL, 1281 US_FL_IGNORE_RESIDUE | US_FL_GO_SLOW | US_FL_MAX_SECTORS_64), 1282 1283 /* Patch by Leonid Petrov mail at lpetrov.net 1284 * Reported by Robert Spitzenpfeil <robert@spitzenpfeil.org> 1285 * http://www.qbik.ch/usb/devices/showdev.php?id=1705 1286 * Updated to 103 device by MJ Ray mjr at phonecoop.coop 1287 */ 1288 UNUSUAL_DEV( 0x0f19, 0x0103, 0x0100, 0x0100, 1289 "Oracom Co., Ltd", 1290 "ORC-200M", 1291 US_SC_DEVICE, US_PR_DEVICE, NULL, 1292 US_FL_IGNORE_RESIDUE ), 1293 1294 /* David Kuehling <dvdkhlng@gmx.de>: 1295 * for MP3-Player AVOX WSX-300ER (bought in Japan). Reports lots of SCSI 1296 * errors when trying to write. 1297 */ 1298 UNUSUAL_DEV( 0x0f19, 0x0105, 0x0100, 0x0100, 1299 "C-MEX", 1300 "A-VOX", 1301 US_SC_DEVICE, US_PR_DEVICE, NULL, 1302 US_FL_IGNORE_RESIDUE ), 1303 1304 /* Jeremy Katz <katzj@redhat.com>: 1305 * The Blackberry Pearl can run in two modes; a usb-storage only mode 1306 * and a mode that allows access via mass storage and to its database. 1307 * The berry_charge module will set the device to dual mode and thus we 1308 * should ignore its native mode if that module is built 1309 */ 1310 #ifdef CONFIG_USB_BERRY_CHARGE 1311 UNUSUAL_DEV( 0x0fca, 0x0006, 0x0001, 0x0001, 1312 "RIM", 1313 "Blackberry Pearl", 1314 US_SC_DEVICE, US_PR_DEVICE, NULL, 1315 US_FL_IGNORE_DEVICE ), 1316 #endif 1317 1318 /* Reported by Michael Stattmann <michael@stattmann.com> */ 1319 UNUSUAL_DEV( 0x0fce, 0xd008, 0x0000, 0x0000, 1320 "Sony Ericsson", 1321 "V800-Vodafone 802", 1322 US_SC_DEVICE, US_PR_DEVICE, NULL, 1323 US_FL_NO_WP_DETECT ), 1324 1325 /* Reported by The Solutor <thesolutor@gmail.com> */ 1326 UNUSUAL_DEV( 0x0fce, 0xd0e1, 0x0000, 0x0000, 1327 "Sony Ericsson", 1328 "MD400", 1329 US_SC_DEVICE, US_PR_DEVICE, NULL, 1330 US_FL_IGNORE_DEVICE), 1331 1332 /* Reported by Jan Mate <mate@fiit.stuba.sk> 1333 * and by Soeren Sonnenburg <kernel@nn7.de> */ 1334 UNUSUAL_DEV( 0x0fce, 0xe030, 0x0000, 0x0000, 1335 "Sony Ericsson", 1336 "P990i", 1337 US_SC_DEVICE, US_PR_DEVICE, NULL, 1338 US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ), 1339 1340 /* Reported by Emmanuel Vasilakis <evas@forthnet.gr> */ 1341 UNUSUAL_DEV( 0x0fce, 0xe031, 0x0000, 0x0000, 1342 "Sony Ericsson", 1343 "M600i", 1344 US_SC_DEVICE, US_PR_DEVICE, NULL, 1345 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ), 1346 1347 /* Reported by Ricardo Barberis <ricardo@dattatec.com> */ 1348 UNUSUAL_DEV( 0x0fce, 0xe092, 0x0000, 0x0000, 1349 "Sony Ericsson", 1350 "P1i", 1351 US_SC_DEVICE, US_PR_DEVICE, NULL, 1352 US_FL_IGNORE_RESIDUE ), 1353 1354 /* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu> 1355 * Tested on hardware version 1.10. 1356 * Entry is needed only for the initializer function override. 1357 * Devices with bcd > 110 seem to not need it while those 1358 * with bcd < 110 appear to need it. 1359 */ 1360 UNUSUAL_DEV( 0x1019, 0x0c55, 0x0000, 0x0110, 1361 "Desknote", 1362 "UCR-61S2B", 1363 US_SC_DEVICE, US_PR_DEVICE, usb_stor_ucr61s2b_init, 1364 0 ), 1365 1366 UNUSUAL_DEV( 0x1058, 0x0704, 0x0000, 0x9999, 1367 "Western Digital", 1368 "External HDD", 1369 US_SC_DEVICE, US_PR_DEVICE, NULL, 1370 US_FL_SANE_SENSE), 1371 1372 /* Reported by Fabio Venturi <f.venturi@tdnet.it> 1373 * The device reports a vendor-specific bDeviceClass. 1374 */ 1375 UNUSUAL_DEV( 0x10d6, 0x2200, 0x0100, 0x0100, 1376 "Actions Semiconductor", 1377 "Mtp device", 1378 US_SC_DEVICE, US_PR_DEVICE, NULL, 1379 0), 1380 1381 /* Reported by Pascal Terjan <pterjan@mandriva.com> 1382 * Ignore driver CD mode and force into modem mode by default. 1383 */ 1384 UNUSUAL_DEV( 0x1186, 0x3e04, 0x0000, 0x0000, 1385 "D-Link", 1386 "USB Mass Storage", 1387 US_SC_DEVICE, US_PR_DEVICE, option_ms_init, 0), 1388 1389 /* Reported by Kevin Lloyd <linux@sierrawireless.com> 1390 * Entry is needed for the initializer function override, 1391 * which instructs the device to load as a modem 1392 * device. 1393 */ 1394 UNUSUAL_DEV( 0x1199, 0x0fff, 0x0000, 0x9999, 1395 "Sierra Wireless", 1396 "USB MMC Storage", 1397 US_SC_DEVICE, US_PR_DEVICE, sierra_ms_init, 1398 0), 1399 1400 /* Reported by Jaco Kroon <jaco@kroon.co.za> 1401 * The usb-storage module found on the Digitech GNX4 (and supposedly other 1402 * devices) misbehaves and causes a bunch of invalid I/O errors. 1403 */ 1404 UNUSUAL_DEV( 0x1210, 0x0003, 0x0100, 0x0100, 1405 "Digitech HMG", 1406 "DigiTech Mass Storage", 1407 US_SC_DEVICE, US_PR_DEVICE, NULL, 1408 US_FL_IGNORE_RESIDUE ), 1409 1410 /* Reported by fangxiaozhi <huananhu@huawei.com> 1411 * This brings the HUAWEI data card devices into multi-port mode 1412 */ 1413 UNUSUAL_DEV( 0x12d1, 0x1001, 0x0000, 0x0000, 1414 "HUAWEI MOBILE", 1415 "Mass Storage", 1416 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1417 0), 1418 UNUSUAL_DEV( 0x12d1, 0x1003, 0x0000, 0x0000, 1419 "HUAWEI MOBILE", 1420 "Mass Storage", 1421 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1422 0), 1423 UNUSUAL_DEV( 0x12d1, 0x1004, 0x0000, 0x0000, 1424 "HUAWEI MOBILE", 1425 "Mass Storage", 1426 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1427 0), 1428 UNUSUAL_DEV( 0x12d1, 0x1401, 0x0000, 0x0000, 1429 "HUAWEI MOBILE", 1430 "Mass Storage", 1431 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1432 0), 1433 UNUSUAL_DEV( 0x12d1, 0x1402, 0x0000, 0x0000, 1434 "HUAWEI MOBILE", 1435 "Mass Storage", 1436 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1437 0), 1438 UNUSUAL_DEV( 0x12d1, 0x1403, 0x0000, 0x0000, 1439 "HUAWEI MOBILE", 1440 "Mass Storage", 1441 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1442 0), 1443 UNUSUAL_DEV( 0x12d1, 0x1404, 0x0000, 0x0000, 1444 "HUAWEI MOBILE", 1445 "Mass Storage", 1446 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1447 0), 1448 UNUSUAL_DEV( 0x12d1, 0x1405, 0x0000, 0x0000, 1449 "HUAWEI MOBILE", 1450 "Mass Storage", 1451 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1452 0), 1453 UNUSUAL_DEV( 0x12d1, 0x1406, 0x0000, 0x0000, 1454 "HUAWEI MOBILE", 1455 "Mass Storage", 1456 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1457 0), 1458 UNUSUAL_DEV( 0x12d1, 0x1407, 0x0000, 0x0000, 1459 "HUAWEI MOBILE", 1460 "Mass Storage", 1461 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1462 0), 1463 UNUSUAL_DEV( 0x12d1, 0x1408, 0x0000, 0x0000, 1464 "HUAWEI MOBILE", 1465 "Mass Storage", 1466 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1467 0), 1468 UNUSUAL_DEV( 0x12d1, 0x1409, 0x0000, 0x0000, 1469 "HUAWEI MOBILE", 1470 "Mass Storage", 1471 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1472 0), 1473 UNUSUAL_DEV( 0x12d1, 0x140A, 0x0000, 0x0000, 1474 "HUAWEI MOBILE", 1475 "Mass Storage", 1476 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1477 0), 1478 UNUSUAL_DEV( 0x12d1, 0x140B, 0x0000, 0x0000, 1479 "HUAWEI MOBILE", 1480 "Mass Storage", 1481 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1482 0), 1483 UNUSUAL_DEV( 0x12d1, 0x140C, 0x0000, 0x0000, 1484 "HUAWEI MOBILE", 1485 "Mass Storage", 1486 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1487 0), 1488 UNUSUAL_DEV( 0x12d1, 0x140D, 0x0000, 0x0000, 1489 "HUAWEI MOBILE", 1490 "Mass Storage", 1491 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1492 0), 1493 UNUSUAL_DEV( 0x12d1, 0x140E, 0x0000, 0x0000, 1494 "HUAWEI MOBILE", 1495 "Mass Storage", 1496 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1497 0), 1498 UNUSUAL_DEV( 0x12d1, 0x140F, 0x0000, 0x0000, 1499 "HUAWEI MOBILE", 1500 "Mass Storage", 1501 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1502 0), 1503 UNUSUAL_DEV( 0x12d1, 0x1410, 0x0000, 0x0000, 1504 "HUAWEI MOBILE", 1505 "Mass Storage", 1506 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1507 0), 1508 UNUSUAL_DEV( 0x12d1, 0x1411, 0x0000, 0x0000, 1509 "HUAWEI MOBILE", 1510 "Mass Storage", 1511 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1512 0), 1513 UNUSUAL_DEV( 0x12d1, 0x1412, 0x0000, 0x0000, 1514 "HUAWEI MOBILE", 1515 "Mass Storage", 1516 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1517 0), 1518 UNUSUAL_DEV( 0x12d1, 0x1413, 0x0000, 0x0000, 1519 "HUAWEI MOBILE", 1520 "Mass Storage", 1521 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1522 0), 1523 UNUSUAL_DEV( 0x12d1, 0x1414, 0x0000, 0x0000, 1524 "HUAWEI MOBILE", 1525 "Mass Storage", 1526 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1527 0), 1528 UNUSUAL_DEV( 0x12d1, 0x1415, 0x0000, 0x0000, 1529 "HUAWEI MOBILE", 1530 "Mass Storage", 1531 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1532 0), 1533 UNUSUAL_DEV( 0x12d1, 0x1416, 0x0000, 0x0000, 1534 "HUAWEI MOBILE", 1535 "Mass Storage", 1536 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1537 0), 1538 UNUSUAL_DEV( 0x12d1, 0x1417, 0x0000, 0x0000, 1539 "HUAWEI MOBILE", 1540 "Mass Storage", 1541 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1542 0), 1543 UNUSUAL_DEV( 0x12d1, 0x1418, 0x0000, 0x0000, 1544 "HUAWEI MOBILE", 1545 "Mass Storage", 1546 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1547 0), 1548 UNUSUAL_DEV( 0x12d1, 0x1419, 0x0000, 0x0000, 1549 "HUAWEI MOBILE", 1550 "Mass Storage", 1551 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1552 0), 1553 UNUSUAL_DEV( 0x12d1, 0x141A, 0x0000, 0x0000, 1554 "HUAWEI MOBILE", 1555 "Mass Storage", 1556 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1557 0), 1558 UNUSUAL_DEV( 0x12d1, 0x141B, 0x0000, 0x0000, 1559 "HUAWEI MOBILE", 1560 "Mass Storage", 1561 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1562 0), 1563 UNUSUAL_DEV( 0x12d1, 0x141C, 0x0000, 0x0000, 1564 "HUAWEI MOBILE", 1565 "Mass Storage", 1566 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1567 0), 1568 UNUSUAL_DEV( 0x12d1, 0x141D, 0x0000, 0x0000, 1569 "HUAWEI MOBILE", 1570 "Mass Storage", 1571 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1572 0), 1573 UNUSUAL_DEV( 0x12d1, 0x141E, 0x0000, 0x0000, 1574 "HUAWEI MOBILE", 1575 "Mass Storage", 1576 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1577 0), 1578 UNUSUAL_DEV( 0x12d1, 0x141F, 0x0000, 0x0000, 1579 "HUAWEI MOBILE", 1580 "Mass Storage", 1581 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1582 0), 1583 UNUSUAL_DEV( 0x12d1, 0x1420, 0x0000, 0x0000, 1584 "HUAWEI MOBILE", 1585 "Mass Storage", 1586 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1587 0), 1588 UNUSUAL_DEV( 0x12d1, 0x1421, 0x0000, 0x0000, 1589 "HUAWEI MOBILE", 1590 "Mass Storage", 1591 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1592 0), 1593 UNUSUAL_DEV( 0x12d1, 0x1422, 0x0000, 0x0000, 1594 "HUAWEI MOBILE", 1595 "Mass Storage", 1596 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1597 0), 1598 UNUSUAL_DEV( 0x12d1, 0x1423, 0x0000, 0x0000, 1599 "HUAWEI MOBILE", 1600 "Mass Storage", 1601 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1602 0), 1603 UNUSUAL_DEV( 0x12d1, 0x1424, 0x0000, 0x0000, 1604 "HUAWEI MOBILE", 1605 "Mass Storage", 1606 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1607 0), 1608 UNUSUAL_DEV( 0x12d1, 0x1425, 0x0000, 0x0000, 1609 "HUAWEI MOBILE", 1610 "Mass Storage", 1611 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1612 0), 1613 UNUSUAL_DEV( 0x12d1, 0x1426, 0x0000, 0x0000, 1614 "HUAWEI MOBILE", 1615 "Mass Storage", 1616 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1617 0), 1618 UNUSUAL_DEV( 0x12d1, 0x1427, 0x0000, 0x0000, 1619 "HUAWEI MOBILE", 1620 "Mass Storage", 1621 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1622 0), 1623 UNUSUAL_DEV( 0x12d1, 0x1428, 0x0000, 0x0000, 1624 "HUAWEI MOBILE", 1625 "Mass Storage", 1626 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1627 0), 1628 UNUSUAL_DEV( 0x12d1, 0x1429, 0x0000, 0x0000, 1629 "HUAWEI MOBILE", 1630 "Mass Storage", 1631 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1632 0), 1633 UNUSUAL_DEV( 0x12d1, 0x142A, 0x0000, 0x0000, 1634 "HUAWEI MOBILE", 1635 "Mass Storage", 1636 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1637 0), 1638 UNUSUAL_DEV( 0x12d1, 0x142B, 0x0000, 0x0000, 1639 "HUAWEI MOBILE", 1640 "Mass Storage", 1641 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1642 0), 1643 UNUSUAL_DEV( 0x12d1, 0x142C, 0x0000, 0x0000, 1644 "HUAWEI MOBILE", 1645 "Mass Storage", 1646 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1647 0), 1648 UNUSUAL_DEV( 0x12d1, 0x142D, 0x0000, 0x0000, 1649 "HUAWEI MOBILE", 1650 "Mass Storage", 1651 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1652 0), 1653 UNUSUAL_DEV( 0x12d1, 0x142E, 0x0000, 0x0000, 1654 "HUAWEI MOBILE", 1655 "Mass Storage", 1656 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1657 0), 1658 UNUSUAL_DEV( 0x12d1, 0x142F, 0x0000, 0x0000, 1659 "HUAWEI MOBILE", 1660 "Mass Storage", 1661 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1662 0), 1663 UNUSUAL_DEV( 0x12d1, 0x1430, 0x0000, 0x0000, 1664 "HUAWEI MOBILE", 1665 "Mass Storage", 1666 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1667 0), 1668 UNUSUAL_DEV( 0x12d1, 0x1431, 0x0000, 0x0000, 1669 "HUAWEI MOBILE", 1670 "Mass Storage", 1671 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1672 0), 1673 UNUSUAL_DEV( 0x12d1, 0x1432, 0x0000, 0x0000, 1674 "HUAWEI MOBILE", 1675 "Mass Storage", 1676 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1677 0), 1678 UNUSUAL_DEV( 0x12d1, 0x1433, 0x0000, 0x0000, 1679 "HUAWEI MOBILE", 1680 "Mass Storage", 1681 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1682 0), 1683 UNUSUAL_DEV( 0x12d1, 0x1434, 0x0000, 0x0000, 1684 "HUAWEI MOBILE", 1685 "Mass Storage", 1686 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1687 0), 1688 UNUSUAL_DEV( 0x12d1, 0x1435, 0x0000, 0x0000, 1689 "HUAWEI MOBILE", 1690 "Mass Storage", 1691 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1692 0), 1693 UNUSUAL_DEV( 0x12d1, 0x1436, 0x0000, 0x0000, 1694 "HUAWEI MOBILE", 1695 "Mass Storage", 1696 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1697 0), 1698 UNUSUAL_DEV( 0x12d1, 0x1437, 0x0000, 0x0000, 1699 "HUAWEI MOBILE", 1700 "Mass Storage", 1701 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1702 0), 1703 UNUSUAL_DEV( 0x12d1, 0x1438, 0x0000, 0x0000, 1704 "HUAWEI MOBILE", 1705 "Mass Storage", 1706 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1707 0), 1708 UNUSUAL_DEV( 0x12d1, 0x1439, 0x0000, 0x0000, 1709 "HUAWEI MOBILE", 1710 "Mass Storage", 1711 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1712 0), 1713 UNUSUAL_DEV( 0x12d1, 0x143A, 0x0000, 0x0000, 1714 "HUAWEI MOBILE", 1715 "Mass Storage", 1716 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1717 0), 1718 UNUSUAL_DEV( 0x12d1, 0x143B, 0x0000, 0x0000, 1719 "HUAWEI MOBILE", 1720 "Mass Storage", 1721 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1722 0), 1723 UNUSUAL_DEV( 0x12d1, 0x143C, 0x0000, 0x0000, 1724 "HUAWEI MOBILE", 1725 "Mass Storage", 1726 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1727 0), 1728 UNUSUAL_DEV( 0x12d1, 0x143D, 0x0000, 0x0000, 1729 "HUAWEI MOBILE", 1730 "Mass Storage", 1731 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1732 0), 1733 UNUSUAL_DEV( 0x12d1, 0x143E, 0x0000, 0x0000, 1734 "HUAWEI MOBILE", 1735 "Mass Storage", 1736 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1737 0), 1738 UNUSUAL_DEV( 0x12d1, 0x143F, 0x0000, 0x0000, 1739 "HUAWEI MOBILE", 1740 "Mass Storage", 1741 US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, 1742 0), 1743 1744 /* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */ 1745 UNUSUAL_DEV( 0x132b, 0x000b, 0x0001, 0x0001, 1746 "Minolta", 1747 "Dimage Z10", 1748 US_SC_DEVICE, US_PR_DEVICE, NULL, 1749 0 ), 1750 1751 /* Reported by Kotrla Vitezslav <kotrla@ceb.cz> */ 1752 UNUSUAL_DEV( 0x1370, 0x6828, 0x0110, 0x0110, 1753 "SWISSBIT", 1754 "Black Silver", 1755 US_SC_DEVICE, US_PR_DEVICE, NULL, 1756 US_FL_IGNORE_RESIDUE ), 1757 1758 /* Reported by Francesco Foresti <frafore@tiscali.it> */ 1759 UNUSUAL_DEV( 0x14cd, 0x6600, 0x0201, 0x0201, 1760 "Super Top", 1761 "IDE DEVICE", 1762 US_SC_DEVICE, US_PR_DEVICE, NULL, 1763 US_FL_IGNORE_RESIDUE ), 1764 1765 /* Reported by Alexandre Oliva <oliva@lsd.ic.unicamp.br> 1766 * JMicron responds to USN and several other SCSI ioctls with a 1767 * residue that causes subsequent I/O requests to fail. */ 1768 UNUSUAL_DEV( 0x152d, 0x2329, 0x0100, 0x0100, 1769 "JMicron", 1770 "USB to ATA/ATAPI Bridge", 1771 US_SC_DEVICE, US_PR_DEVICE, NULL, 1772 US_FL_IGNORE_RESIDUE | US_FL_SANE_SENSE ), 1773 1774 /* Reported by Robert Schedel <r.schedel@yahoo.de> 1775 * Note: this is a 'super top' device like the above 14cd/6600 device */ 1776 UNUSUAL_DEV( 0x1652, 0x6600, 0x0201, 0x0201, 1777 "Teac", 1778 "HD-35PUK-B", 1779 US_SC_DEVICE, US_PR_DEVICE, NULL, 1780 US_FL_IGNORE_RESIDUE ), 1781 1782 UNUSUAL_DEV( 0x2116, 0x0320, 0x0001, 0x0001, 1783 "ST", 1784 "2A", 1785 US_SC_DEVICE, US_PR_DEVICE, NULL, 1786 US_FL_FIX_CAPACITY), 1787 1788 /* patch submitted by Davide Perini <perini.davide@dpsoftware.org> 1789 * and Renato Perini <rperini@email.it> 1790 */ 1791 UNUSUAL_DEV( 0x22b8, 0x3010, 0x0001, 0x0001, 1792 "Motorola", 1793 "RAZR V3x", 1794 US_SC_DEVICE, US_PR_DEVICE, NULL, 1795 US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ), 1796 1797 /* 1798 * Patch by Constantin Baranov <const@tltsu.ru> 1799 * Report by Andreas Koenecke. 1800 * Motorola ROKR Z6. 1801 */ 1802 UNUSUAL_DEV( 0x22b8, 0x6426, 0x0101, 0x0101, 1803 "Motorola", 1804 "MSnc.", 1805 US_SC_DEVICE, US_PR_DEVICE, NULL, 1806 US_FL_FIX_INQUIRY | US_FL_FIX_CAPACITY | US_FL_BULK_IGNORE_TAG), 1807 1808 /* Reported by Radovan Garabik <garabik@kassiopeia.juls.savba.sk> */ 1809 UNUSUAL_DEV( 0x2735, 0x100b, 0x0000, 0x9999, 1810 "MPIO", 1811 "HS200", 1812 US_SC_DEVICE, US_PR_DEVICE, NULL, 1813 US_FL_GO_SLOW ), 1814 1815 /* Reported by Rohan Hart <rohan.hart17@gmail.com> */ 1816 UNUSUAL_DEV( 0x2770, 0x915d, 0x0010, 0x0010, 1817 "INTOVA", 1818 "Pixtreme", 1819 US_SC_DEVICE, US_PR_DEVICE, NULL, 1820 US_FL_FIX_CAPACITY ), 1821 1822 /* Reported by Frederic Marchal <frederic.marchal@wowcompany.com> 1823 * Mio Moov 330 1824 */ 1825 UNUSUAL_DEV( 0x3340, 0xffff, 0x0000, 0x0000, 1826 "Mitac", 1827 "Mio DigiWalker USB Sync", 1828 US_SC_DEVICE,US_PR_DEVICE,NULL, 1829 US_FL_MAX_SECTORS_64 ), 1830 1831 /* Reported by Andrey Rahmatullin <wrar@altlinux.org> */ 1832 UNUSUAL_DEV( 0x4102, 0x1020, 0x0100, 0x0100, 1833 "iRiver", 1834 "MP3 T10", 1835 US_SC_DEVICE, US_PR_DEVICE, NULL, 1836 US_FL_IGNORE_RESIDUE ), 1837 1838 /* 1839 * David Härdeman <david@2gen.com> 1840 * The key makes the SCSI stack print confusing (but harmless) messages 1841 */ 1842 UNUSUAL_DEV( 0x4146, 0xba01, 0x0100, 0x0100, 1843 "Iomega", 1844 "Micro Mini 1GB", 1845 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ), 1846 1847 /* Reported by Andrew Simmons <andrew.simmons@gmail.com> */ 1848 UNUSUAL_DEV( 0xed06, 0x4500, 0x0001, 0x0001, 1849 "DataStor", 1850 "USB4500 FW1.04", 1851 US_SC_DEVICE, US_PR_DEVICE, NULL, 1852 US_FL_CAPACITY_HEURISTICS), 1853 1854 /* Reported by Alessio Treglia <quadrispro@ubuntu.com> */ 1855 UNUSUAL_DEV( 0xed10, 0x7636, 0x0001, 0x0001, 1856 "TGE", 1857 "Digital MP3 Audio Player", 1858 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ), 1859 1860 /* Control/Bulk transport for all SubClass values */ 1861 USUAL_DEV(US_SC_RBC, US_PR_CB, USB_US_TYPE_STOR), 1862 USUAL_DEV(US_SC_8020, US_PR_CB, USB_US_TYPE_STOR), 1863 USUAL_DEV(US_SC_QIC, US_PR_CB, USB_US_TYPE_STOR), 1864 USUAL_DEV(US_SC_UFI, US_PR_CB, USB_US_TYPE_STOR), 1865 USUAL_DEV(US_SC_8070, US_PR_CB, USB_US_TYPE_STOR), 1866 USUAL_DEV(US_SC_SCSI, US_PR_CB, USB_US_TYPE_STOR), 1867 1868 /* Control/Bulk/Interrupt transport for all SubClass values */ 1869 USUAL_DEV(US_SC_RBC, US_PR_CBI, USB_US_TYPE_STOR), 1870 USUAL_DEV(US_SC_8020, US_PR_CBI, USB_US_TYPE_STOR), 1871 USUAL_DEV(US_SC_QIC, US_PR_CBI, USB_US_TYPE_STOR), 1872 USUAL_DEV(US_SC_UFI, US_PR_CBI, USB_US_TYPE_STOR), 1873 USUAL_DEV(US_SC_8070, US_PR_CBI, USB_US_TYPE_STOR), 1874 USUAL_DEV(US_SC_SCSI, US_PR_CBI, USB_US_TYPE_STOR), 1875 1876 /* Bulk-only transport for all SubClass values */ 1877 USUAL_DEV(US_SC_RBC, US_PR_BULK, USB_US_TYPE_STOR), 1878 USUAL_DEV(US_SC_8020, US_PR_BULK, USB_US_TYPE_STOR), 1879 USUAL_DEV(US_SC_QIC, US_PR_BULK, USB_US_TYPE_STOR), 1880 USUAL_DEV(US_SC_UFI, US_PR_BULK, USB_US_TYPE_STOR), 1881 USUAL_DEV(US_SC_8070, US_PR_BULK, USB_US_TYPE_STOR), 1882 USUAL_DEV(US_SC_SCSI, US_PR_BULK, 0), 1883