1 /* Driver for USB Mass Storage compliant devices 2 * Ununsual Devices File 3 * 4 * $Id: unusual_devs.h,v 1.32 2002/02/25 02:41:24 mdharm Exp $ 5 * 6 * Current development and maintenance by: 7 * (c) 2000-2002 Matthew Dharm (mdharm-usb@one-eyed-alien.net) 8 * 9 * Initial work by: 10 * (c) 2000 Adam J. Richter (adam@yggdrasil.com), Yggdrasil Computing, Inc. 11 * 12 * Please see http://www.one-eyed-alien.net/~mdharm/linux-usb for more 13 * information about this driver. 14 * 15 * This program is free software; you can redistribute it and/or modify it 16 * under the terms of the GNU General Public License as published by the 17 * Free Software Foundation; either version 2, or (at your option) any 18 * later version. 19 * 20 * This program is distributed in the hope that it will be useful, but 21 * WITHOUT ANY WARRANTY; without even the implied warranty of 22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 23 * General Public License for more details. 24 * 25 * You should have received a copy of the GNU General Public License along 26 * with this program; if not, write to the Free Software Foundation, Inc., 27 * 675 Mass Ave, Cambridge, MA 02139, USA. 28 */ 29 30 /* IMPORTANT NOTE: This file must be included in another file which does 31 * the following thing for it to work: 32 * The macro UNUSUAL_DEV() must be defined before this file is included 33 */ 34 #include <linux/config.h> 35 36 /* If you edit this file, please try to keep it sorted first by VendorID, 37 * then by ProductID. 38 * 39 * If you want to add an entry for this file, be sure to include the 40 * following information: 41 * - a patch that adds the entry for your device, including your 42 * email address right above the entry (plus maybe a brief 43 * explanation of the reason for the entry), 44 * - a copy of /proc/bus/usb/devices with your device plugged in 45 * running with this patch. 46 * Send your submission to either Phil Dibowitz <phil@ipom.com> or 47 * Alan Stern <stern@rowland.harvard.edu>, and don't forget to CC: the 48 * USB development list <linux-usb-devel@lists.sourceforge.net>. 49 */ 50 51 UNUSUAL_DEV( 0x03ee, 0x6901, 0x0000, 0x0100, 52 "Mitsumi", 53 "USB FDD", 54 US_SC_DEVICE, US_PR_DEVICE, NULL, 55 US_FL_SINGLE_LUN ), 56 57 UNUSUAL_DEV( 0x03f0, 0x0107, 0x0200, 0x0200, 58 "HP", 59 "CD-Writer+", 60 US_SC_8070, US_PR_CB, NULL, 0), 61 62 #ifdef CONFIG_USB_STORAGE_USBAT 63 UNUSUAL_DEV( 0x03f0, 0x0207, 0x0001, 0x0001, 64 "HP", 65 "CD-Writer+ 8200e", 66 US_SC_8070, US_PR_SCM_ATAPI, init_usbat, 0), 67 68 UNUSUAL_DEV( 0x03f0, 0x0307, 0x0001, 0x0001, 69 "HP", 70 "CD-Writer+ CD-4e", 71 US_SC_8070, US_PR_SCM_ATAPI, init_usbat, 0), 72 #endif 73 74 /* Deduced by Jonathan Woithe <jwoithe@physics.adelaide.edu.au> 75 * Entry needed for flags: US_FL_FIX_INQUIRY because initial inquiry message 76 * always fails and confuses drive. 77 */ 78 UNUSUAL_DEV( 0x0411, 0x001c, 0x0113, 0x0113, 79 "Buffalo", 80 "DUB-P40G HDD", 81 US_SC_DEVICE, US_PR_DEVICE, NULL, 82 US_FL_FIX_INQUIRY ), 83 84 #ifdef CONFIG_USB_STORAGE_DPCM 85 UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100, 86 "Microtech", 87 "CameraMate (DPCM_USB)", 88 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ), 89 #endif 90 91 /* Patch submitted by Philipp Friedrich <philipp@void.at> */ 92 UNUSUAL_DEV( 0x0482, 0x0100, 0x0100, 0x0100, 93 "Kyocera", 94 "Finecam S3x", 95 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY), 96 97 /* Patch submitted by Philipp Friedrich <philipp@void.at> */ 98 UNUSUAL_DEV( 0x0482, 0x0101, 0x0100, 0x0100, 99 "Kyocera", 100 "Finecam S4", 101 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY), 102 103 /* Patch submitted by Stephane Galles <stephane.galles@free.fr> */ 104 UNUSUAL_DEV( 0x0482, 0x0103, 0x0100, 0x0100, 105 "Kyocera", 106 "Finecam S5", 107 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY), 108 109 /* Patch for Kyocera Finecam L3 110 * Submitted by Michael Krauth <michael.krauth@web.de> 111 * and Alessandro Fracchetti <al.fracchetti@tin.it> 112 */ 113 UNUSUAL_DEV( 0x0482, 0x0105, 0x0100, 0x0100, 114 "Kyocera", 115 "Finecam L3", 116 US_SC_SCSI, US_PR_BULK, NULL, 117 US_FL_FIX_INQUIRY), 118 119 /* Reported by Paul Stewart <stewart@wetlogic.net> 120 * This entry is needed because the device reports Sub=ff */ 121 UNUSUAL_DEV( 0x04a4, 0x0004, 0x0001, 0x0001, 122 "Hitachi", 123 "DVD-CAM DZ-MV100A Camcorder", 124 US_SC_SCSI, US_PR_CB, NULL, US_FL_SINGLE_LUN), 125 126 /* Reported by Andreas Bockhold <andreas@bockionline.de> */ 127 UNUSUAL_DEV( 0x04b0, 0x0405, 0x0100, 0x0100, 128 "NIKON", 129 "NIKON DSC D70", 130 US_SC_DEVICE, US_PR_DEVICE, NULL, 131 US_FL_FIX_CAPACITY), 132 133 /* BENQ DC5330 134 * Reported by Manuel Fombuena <mfombuena@ya.com> and 135 * Frank Copeland <fjc@thingy.apana.org.au> */ 136 UNUSUAL_DEV( 0x04a5, 0x3010, 0x0100, 0x0100, 137 "Tekom Technologies, Inc", 138 "300_CAMERA", 139 US_SC_DEVICE, US_PR_DEVICE, NULL, 140 US_FL_IGNORE_RESIDUE ), 141 142 /* Reported by Simon Levitt <simon@whattf.com> 143 * This entry needs Sub and Proto fields */ 144 UNUSUAL_DEV( 0x04b8, 0x0601, 0x0100, 0x0100, 145 "Epson", 146 "875DC Storage", 147 US_SC_SCSI, US_PR_CB, NULL, US_FL_FIX_INQUIRY), 148 149 /* Reported by Khalid Aziz <khalid@gonehiking.org> 150 * This entry is needed because the device reports Sub=ff */ 151 UNUSUAL_DEV( 0x04b8, 0x0602, 0x0110, 0x0110, 152 "Epson", 153 "785EPX Storage", 154 US_SC_SCSI, US_PR_BULK, NULL, US_FL_SINGLE_LUN), 155 156 /* Not sure who reported this originally but 157 * Pavel Machek <pavel@ucw.cz> reported that the extra US_FL_SINGLE_LUN 158 * flag be added */ 159 UNUSUAL_DEV( 0x04cb, 0x0100, 0x0000, 0x2210, 160 "Fujifilm", 161 "FinePix 1400Zoom", 162 US_SC_UFI, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY | US_FL_SINGLE_LUN), 163 164 /* Reported by Peter W�chtler <pwaechtler@loewe-komp.de> 165 * The device needs the flags only. 166 */ 167 UNUSUAL_DEV( 0x04ce, 0x0002, 0x0074, 0x0074, 168 "ScanLogic", 169 "SL11R-IDE", 170 US_SC_DEVICE, US_PR_DEVICE, NULL, 171 US_FL_FIX_INQUIRY), 172 173 /* Reported by Kriston Fincher <kriston@airmail.net> 174 * Patch submitted by Sean Millichamp <sean@bruenor.org> 175 * This is to support the Panasonic PalmCam PV-SD4090 176 * This entry is needed because the device reports Sub=ff 177 */ 178 UNUSUAL_DEV( 0x04da, 0x0901, 0x0100, 0x0200, 179 "Panasonic", 180 "LS-120 Camera", 181 US_SC_UFI, US_PR_DEVICE, NULL, 0), 182 183 /* From Yukihiro Nakai, via zaitcev@yahoo.com. 184 * This is needed for CB instead of CBI */ 185 UNUSUAL_DEV( 0x04da, 0x0d05, 0x0000, 0x0000, 186 "Sharp CE-CW05", 187 "CD-R/RW Drive", 188 US_SC_8070, US_PR_CB, NULL, 0), 189 190 /* Reported by Adriaan Penning <a.penning@luon.net> */ 191 UNUSUAL_DEV( 0x04da, 0x2372, 0x0000, 0x9999, 192 "Panasonic", 193 "DMC-LCx Camera", 194 US_SC_DEVICE, US_PR_DEVICE, NULL, 195 US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ), 196 197 /* Most of the following entries were developed with the help of 198 * Shuttle/SCM directly. 199 */ 200 UNUSUAL_DEV( 0x04e6, 0x0001, 0x0200, 0x0200, 201 "Matshita", 202 "LS-120", 203 US_SC_8020, US_PR_CB, NULL, 0), 204 205 UNUSUAL_DEV( 0x04e6, 0x0002, 0x0100, 0x0100, 206 "Shuttle", 207 "eUSCSI Bridge", 208 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init, 209 US_FL_SCM_MULT_TARG ), 210 211 #ifdef CONFIG_USB_STORAGE_SDDR09 212 UNUSUAL_DEV( 0x04e6, 0x0003, 0x0000, 0x9999, 213 "Sandisk", 214 "ImageMate SDDR09", 215 US_SC_SCSI, US_PR_EUSB_SDDR09, NULL, 216 US_FL_SINGLE_LUN ), 217 218 /* This entry is from Andries.Brouwer@cwi.nl */ 219 UNUSUAL_DEV( 0x04e6, 0x0005, 0x0100, 0x0208, 220 "SCM Microsystems", 221 "eUSB SmartMedia / CompactFlash Adapter", 222 US_SC_SCSI, US_PR_DPCM_USB, sddr09_init, 223 0), 224 #endif 225 226 /* Reported by Markus Demleitner <msdemlei@cl.uni-heidelberg.de> */ 227 UNUSUAL_DEV( 0x04e6, 0x0006, 0x0100, 0x0100, 228 "SCM Microsystems Inc.", 229 "eUSB MMC Adapter", 230 US_SC_SCSI, US_PR_CB, NULL, 231 US_FL_SINGLE_LUN), 232 233 /* Reported by Daniel Nouri <dpunktnpunkt@web.de> */ 234 UNUSUAL_DEV( 0x04e6, 0x0006, 0x0205, 0x0205, 235 "Shuttle", 236 "eUSB MMC Adapter", 237 US_SC_SCSI, US_PR_DEVICE, NULL, 238 US_FL_SINGLE_LUN), 239 240 UNUSUAL_DEV( 0x04e6, 0x0007, 0x0100, 0x0200, 241 "Sony", 242 "Hifd", 243 US_SC_SCSI, US_PR_CB, NULL, 244 US_FL_SINGLE_LUN), 245 246 UNUSUAL_DEV( 0x04e6, 0x0009, 0x0200, 0x0200, 247 "Shuttle", 248 "eUSB ATA/ATAPI Adapter", 249 US_SC_8020, US_PR_CB, NULL, 0), 250 251 UNUSUAL_DEV( 0x04e6, 0x000a, 0x0200, 0x0200, 252 "Shuttle", 253 "eUSB CompactFlash Adapter", 254 US_SC_8020, US_PR_CB, NULL, 0), 255 256 UNUSUAL_DEV( 0x04e6, 0x000B, 0x0100, 0x0100, 257 "Shuttle", 258 "eUSCSI Bridge", 259 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 260 US_FL_SCM_MULT_TARG ), 261 262 UNUSUAL_DEV( 0x04e6, 0x000C, 0x0100, 0x0100, 263 "Shuttle", 264 "eUSCSI Bridge", 265 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 266 US_FL_SCM_MULT_TARG ), 267 268 UNUSUAL_DEV( 0x04e6, 0x0101, 0x0200, 0x0200, 269 "Shuttle", 270 "CD-RW Device", 271 US_SC_8020, US_PR_CB, NULL, 0), 272 273 /* Entry and supporting patch by Theodore Kilgore <kilgota@auburn.edu>. 274 * Device uses standards-violating 32-byte Bulk Command Block Wrappers and 275 * reports itself as "Proprietary SCSI Bulk." Cf. device entry 0x084d:0x0011. 276 */ 277 278 UNUSUAL_DEV( 0x04fc, 0x80c2, 0x0100, 0x0100, 279 "Kobian Mercury", 280 "Binocam DCB-132", 281 US_SC_DEVICE, US_PR_DEVICE, NULL, 282 US_FL_BULK32), 283 284 #ifdef CONFIG_USB_STORAGE_USBAT 285 UNUSUAL_DEV( 0x04e6, 0x1010, 0x0000, 0x9999, 286 "SCM", 287 "SCM USBAT-02", 288 US_SC_SCSI, US_PR_SCM_ATAPI, init_usbat, 289 US_FL_SINGLE_LUN), 290 #endif 291 292 /* Reported by Bob Sass <rls@vectordb.com> -- only rev 1.33 tested */ 293 UNUSUAL_DEV( 0x050d, 0x0115, 0x0133, 0x0133, 294 "Belkin", 295 "USB SCSI Adaptor", 296 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 297 US_FL_SCM_MULT_TARG ), 298 299 /* Iomega Clik! Drive 300 * Reported by David Chatenay <dchatenay@hotmail.com> 301 * The reason this is needed is not fully known. 302 */ 303 UNUSUAL_DEV( 0x0525, 0xa140, 0x0100, 0x0100, 304 "Iomega", 305 "USB Clik! 40", 306 US_SC_8070, US_PR_BULK, NULL, 307 US_FL_FIX_INQUIRY ), 308 309 /* Yakumo Mega Image 37 310 * Submitted by Stephan Fuhrmann <atomenergie@t-online.de> */ 311 UNUSUAL_DEV( 0x052b, 0x1801, 0x0100, 0x0100, 312 "Tekom Technologies, Inc", 313 "300_CAMERA", 314 US_SC_DEVICE, US_PR_DEVICE, NULL, 315 US_FL_IGNORE_RESIDUE ), 316 317 /* Another Yakumo camera. 318 * Reported by Michele Alzetta <michele.alzetta@aliceposta.it> */ 319 UNUSUAL_DEV( 0x052b, 0x1804, 0x0100, 0x0100, 320 "Tekom Technologies, Inc", 321 "300_CAMERA", 322 US_SC_DEVICE, US_PR_DEVICE, NULL, 323 US_FL_IGNORE_RESIDUE ), 324 325 /* Reported by Iacopo Spalletti <avvisi@spalletti.it> */ 326 UNUSUAL_DEV( 0x052b, 0x1807, 0x0100, 0x0100, 327 "Tekom Technologies, Inc", 328 "300_CAMERA", 329 US_SC_DEVICE, US_PR_DEVICE, NULL, 330 US_FL_IGNORE_RESIDUE ), 331 332 /* Yakumo Mega Image 47 333 * Reported by Bjoern Paetzel <kolrabi@kolrabi.de> */ 334 UNUSUAL_DEV( 0x052b, 0x1905, 0x0100, 0x0100, 335 "Tekom Technologies, Inc", 336 "400_CAMERA", 337 US_SC_DEVICE, US_PR_DEVICE, NULL, 338 US_FL_IGNORE_RESIDUE ), 339 340 /* Reported by Paul Ortyl <ortylp@3miasto.net> 341 * Note that it's similar to the device above, only different prodID */ 342 UNUSUAL_DEV( 0x052b, 0x1911, 0x0100, 0x0100, 343 "Tekom Technologies, Inc", 344 "400_CAMERA", 345 US_SC_DEVICE, US_PR_DEVICE, NULL, 346 US_FL_IGNORE_RESIDUE ), 347 348 UNUSUAL_DEV( 0x054c, 0x0010, 0x0106, 0x0450, 349 "Sony", 350 "DSC-S30/S70/S75/505V/F505/F707/F717/P8", 351 US_SC_SCSI, US_PR_DEVICE, NULL, 352 US_FL_SINGLE_LUN | US_FL_NOT_LOCKABLE | US_FL_NO_WP_DETECT ), 353 354 /* This entry is needed because the device reports Sub=ff */ 355 UNUSUAL_DEV( 0x054c, 0x0010, 0x0500, 0x0500, 356 "Sony", 357 "DSC-T1", 358 US_SC_8070, US_PR_DEVICE, NULL, 359 US_FL_SINGLE_LUN ), 360 361 362 /* Reported by wim@geeks.nl */ 363 UNUSUAL_DEV( 0x054c, 0x0025, 0x0100, 0x0100, 364 "Sony", 365 "Memorystick NW-MS7", 366 US_SC_DEVICE, US_PR_DEVICE, NULL, 367 US_FL_SINGLE_LUN ), 368 369 #ifdef CONFIG_USB_STORAGE_ISD200 370 UNUSUAL_DEV( 0x054c, 0x002b, 0x0100, 0x0110, 371 "Sony", 372 "Portable USB Harddrive V2", 373 US_SC_ISD200, US_PR_BULK, isd200_Initialization, 374 0 ), 375 #endif 376 377 /* Submitted by Olaf Hering, <olh@suse.de> SuSE Bugzilla #49049 */ 378 UNUSUAL_DEV( 0x054c, 0x002c, 0x0501, 0x0501, 379 "Sony", 380 "USB Floppy Drive", 381 US_SC_DEVICE, US_PR_DEVICE, NULL, 382 US_FL_SINGLE_LUN ), 383 384 UNUSUAL_DEV( 0x054c, 0x002d, 0x0100, 0x0100, 385 "Sony", 386 "Memorystick MSAC-US1", 387 US_SC_DEVICE, US_PR_DEVICE, NULL, 388 US_FL_SINGLE_LUN ), 389 390 /* Submitted by Klaus Mueller <k.mueller@intershop.de> */ 391 UNUSUAL_DEV( 0x054c, 0x002e, 0x0106, 0x0310, 392 "Sony", 393 "Handycam", 394 US_SC_SCSI, US_PR_DEVICE, NULL, 395 US_FL_SINGLE_LUN ), 396 397 /* Submitted by Rajesh Kumble Nayak <nayak@obs-nice.fr> */ 398 UNUSUAL_DEV( 0x054c, 0x002e, 0x0500, 0x0500, 399 "Sony", 400 "Handycam HC-85", 401 US_SC_UFI, US_PR_DEVICE, NULL, 402 US_FL_SINGLE_LUN ), 403 404 UNUSUAL_DEV( 0x054c, 0x0032, 0x0000, 0x9999, 405 "Sony", 406 "Memorystick MSC-U01N", 407 US_SC_DEVICE, US_PR_DEVICE, NULL, 408 US_FL_SINGLE_LUN ), 409 410 /* Submitted by Michal Mlotek <mlotek@foobar.pl> */ 411 UNUSUAL_DEV( 0x054c, 0x0058, 0x0000, 0x9999, 412 "Sony", 413 "PEG N760c Memorystick", 414 US_SC_DEVICE, US_PR_DEVICE, NULL, 415 US_FL_FIX_INQUIRY ), 416 417 UNUSUAL_DEV( 0x054c, 0x0069, 0x0000, 0x9999, 418 "Sony", 419 "Memorystick MSC-U03", 420 US_SC_UFI, US_PR_CB, NULL, 421 US_FL_SINGLE_LUN ), 422 423 /* Submitted by Nathan Babb <nathan@lexi.com> */ 424 UNUSUAL_DEV( 0x054c, 0x006d, 0x0000, 0x9999, 425 "Sony", 426 "PEG Mass Storage", 427 US_SC_DEVICE, US_PR_DEVICE, NULL, 428 US_FL_FIX_INQUIRY ), 429 430 /* Submitted by Mike Alborn <malborn@deandra.homeip.net> */ 431 UNUSUAL_DEV( 0x054c, 0x016a, 0x0000, 0x9999, 432 "Sony", 433 "PEG Mass Storage", 434 US_SC_DEVICE, US_PR_DEVICE, NULL, 435 US_FL_FIX_INQUIRY ), 436 437 /* Submitted by Frank Engel <frankie@cse.unsw.edu.au> */ 438 UNUSUAL_DEV( 0x054c, 0x0099, 0x0000, 0x9999, 439 "Sony", 440 "PEG Mass Storage", 441 US_SC_DEVICE, US_PR_DEVICE, NULL, 442 US_FL_FIX_INQUIRY ), 443 444 445 UNUSUAL_DEV( 0x057b, 0x0000, 0x0000, 0x0299, 446 "Y-E Data", 447 "Flashbuster-U", 448 US_SC_DEVICE, US_PR_CB, NULL, 449 US_FL_SINGLE_LUN), 450 451 UNUSUAL_DEV( 0x057b, 0x0000, 0x0300, 0x9999, 452 "Y-E Data", 453 "Flashbuster-U", 454 US_SC_DEVICE, US_PR_DEVICE, NULL, 455 US_FL_SINGLE_LUN), 456 457 /* Reported by Johann Cardon <johann.cardon@free.fr> 458 * This entry is needed only because the device reports 459 * bInterfaceClass = 0xff (vendor-specific) 460 */ 461 UNUSUAL_DEV( 0x057b, 0x0022, 0x0000, 0x9999, 462 "Y-E Data", 463 "Silicon Media R/W", 464 US_SC_DEVICE, US_PR_DEVICE, NULL, 0), 465 466 /* Fabrizio Fellini <fello@libero.it> */ 467 UNUSUAL_DEV( 0x0595, 0x4343, 0x0000, 0x2210, 468 "Fujifilm", 469 "Digital Camera EX-20 DSC", 470 US_SC_8070, US_PR_DEVICE, NULL, 0 ), 471 472 /* The entry was here before I took over, and had US_SC_RBC. It turns 473 * out that isn't needed. Additionally, Torsten Eriksson 474 * <Torsten.Eriksson@bergianska.se> is able to use his device fine 475 * without this entry at all - but I don't suspect that will be true 476 * for all users (the protocol is likely needed), so is staying at 477 * this time. - Phil Dibowitz <phil@ipom.com> 478 */ 479 UNUSUAL_DEV( 0x059f, 0xa601, 0x0200, 0x0200, 480 "LaCie", 481 "USB Hard Disk", 482 US_SC_DEVICE, US_PR_CB, NULL, 0 ), 483 484 /* Submitted by Joel Bourquard <numlock@freesurf.ch> 485 * Some versions of this device need the SubClass and Protocol overrides 486 * while others don't. 487 */ 488 UNUSUAL_DEV( 0x05ab, 0x0060, 0x1104, 0x1110, 489 "In-System", 490 "PyroGate External CD-ROM Enclosure (FCD-523)", 491 US_SC_SCSI, US_PR_BULK, NULL, 492 US_FL_NEED_OVERRIDE ), 493 494 #ifdef CONFIG_USB_STORAGE_ISD200 495 UNUSUAL_DEV( 0x05ab, 0x0031, 0x0100, 0x0110, 496 "In-System", 497 "USB/IDE Bridge (ATA/ATAPI)", 498 US_SC_ISD200, US_PR_BULK, isd200_Initialization, 499 0 ), 500 501 UNUSUAL_DEV( 0x05ab, 0x0301, 0x0100, 0x0110, 502 "In-System", 503 "Portable USB Harddrive V2", 504 US_SC_ISD200, US_PR_BULK, isd200_Initialization, 505 0 ), 506 507 UNUSUAL_DEV( 0x05ab, 0x0351, 0x0100, 0x0110, 508 "In-System", 509 "Portable USB Harddrive V2", 510 US_SC_ISD200, US_PR_BULK, isd200_Initialization, 511 0 ), 512 513 UNUSUAL_DEV( 0x05ab, 0x5701, 0x0100, 0x0110, 514 "In-System", 515 "USB Storage Adapter V2", 516 US_SC_ISD200, US_PR_BULK, isd200_Initialization, 517 0 ), 518 #endif 519 520 /* Reported by Avi Kivity <avi@argo.co.il> */ 521 UNUSUAL_DEV( 0x05ac, 0x1203, 0x0001, 0x0001, 522 "Apple", 523 "iPod", 524 US_SC_DEVICE, US_PR_DEVICE, NULL, 525 US_FL_FIX_CAPACITY ), 526 527 UNUSUAL_DEV( 0x05ac, 0x1205, 0x0001, 0x0001, 528 "Apple", 529 "iPod", 530 US_SC_DEVICE, US_PR_DEVICE, NULL, 531 US_FL_FIX_CAPACITY ), 532 533 #ifdef CONFIG_USB_STORAGE_JUMPSHOT 534 UNUSUAL_DEV( 0x05dc, 0x0001, 0x0000, 0x0001, 535 "Lexar", 536 "Jumpshot USB CF Reader", 537 US_SC_SCSI, US_PR_JUMPSHOT, NULL, 538 US_FL_NEED_OVERRIDE ), 539 #endif 540 541 /* Reported by Blake Matheny <bmatheny@purdue.edu> */ 542 UNUSUAL_DEV( 0x05dc, 0xb002, 0x0000, 0x0113, 543 "Lexar", 544 "USB CF Reader", 545 US_SC_DEVICE, US_PR_DEVICE, NULL, 546 US_FL_FIX_INQUIRY ), 547 548 /* The following two entries are for a Genesys USB to IDE 549 * converter chip, but it changes its ProductId depending 550 * on whether or not a disk or an optical device is enclosed 551 * They were originally reported by Alexander Oltu 552 * <alexander@all-2.com> and Peter Marks <peter.marks@turner.com> 553 * respectively. 554 */ 555 UNUSUAL_DEV( 0x05e3, 0x0701, 0x0000, 0xffff, 556 "Genesys Logic", 557 "USB to IDE Optical", 558 US_SC_DEVICE, US_PR_DEVICE, NULL, 559 US_FL_GO_SLOW ), 560 561 UNUSUAL_DEV( 0x05e3, 0x0702, 0x0000, 0xffff, 562 "Genesys Logic", 563 "USB to IDE Disk", 564 US_SC_DEVICE, US_PR_DEVICE, NULL, 565 US_FL_GO_SLOW ), 566 567 /* Reported by Hanno Boeck <hanno@gmx.de> 568 * Taken from the Lycoris Kernel */ 569 UNUSUAL_DEV( 0x0636, 0x0003, 0x0000, 0x9999, 570 "Vivitar", 571 "Vivicam 35Xx", 572 US_SC_SCSI, US_PR_BULK, NULL, 573 US_FL_FIX_INQUIRY ), 574 575 UNUSUAL_DEV( 0x0644, 0x0000, 0x0100, 0x0100, 576 "TEAC", 577 "Floppy Drive", 578 US_SC_UFI, US_PR_CB, NULL, 0 ), 579 580 #ifdef CONFIG_USB_STORAGE_SDDR09 581 UNUSUAL_DEV( 0x066b, 0x0105, 0x0100, 0x0100, 582 "Olympus", 583 "Camedia MAUSB-2", 584 US_SC_SCSI, US_PR_EUSB_SDDR09, NULL, 585 US_FL_SINGLE_LUN ), 586 #endif 587 588 /* Reported by Darsen Lu <darsen@micro.ee.nthu.edu.tw> */ 589 UNUSUAL_DEV( 0x066f, 0x8000, 0x0001, 0x0001, 590 "SigmaTel", 591 "USBMSC Audio Player", 592 US_SC_DEVICE, US_PR_DEVICE, NULL, 593 US_FL_FIX_CAPACITY ), 594 595 /* Reported by Richard -=[]=- <micro_flyer@hotmail.com> */ 596 UNUSUAL_DEV( 0x067b, 0x2507, 0x0100, 0x0100, 597 "Prolific Technology Inc.", 598 "Mass Storage Device", 599 US_SC_DEVICE, US_PR_DEVICE, NULL, 600 US_FL_FIX_CAPACITY | US_FL_GO_SLOW ), 601 602 /* Reported by Alex Butcher <alex.butcher@assursys.co.uk> */ 603 UNUSUAL_DEV( 0x067b, 0x3507, 0x0001, 0x0001, 604 "Prolific Technology Inc.", 605 "ATAPI-6 Bridge Controller", 606 US_SC_DEVICE, US_PR_DEVICE, NULL, 607 US_FL_FIX_CAPACITY | US_FL_GO_SLOW ), 608 609 /* Submitted by Benny Sjostrand <benny@hostmobility.com> */ 610 UNUSUAL_DEV( 0x0686, 0x4011, 0x0001, 0x0001, 611 "Minolta", 612 "Dimage F300", 613 US_SC_SCSI, US_PR_BULK, NULL, 0 ), 614 615 /* Reported by Miguel A. Fosas <amn3s1a@ono.com> */ 616 UNUSUAL_DEV( 0x0686, 0x4017, 0x0001, 0x0001, 617 "Minolta", 618 "DIMAGE E223", 619 US_SC_SCSI, US_PR_DEVICE, NULL, 0 ), 620 621 UNUSUAL_DEV( 0x0693, 0x0002, 0x0100, 0x0100, 622 "Hagiwara", 623 "FlashGate SmartMedia", 624 US_SC_SCSI, US_PR_BULK, NULL, 0 ), 625 626 UNUSUAL_DEV( 0x0693, 0x0005, 0x0100, 0x0100, 627 "Hagiwara", 628 "Flashgate", 629 US_SC_SCSI, US_PR_BULK, NULL, 0 ), 630 631 UNUSUAL_DEV( 0x0781, 0x0001, 0x0200, 0x0200, 632 "Sandisk", 633 "ImageMate SDDR-05a", 634 US_SC_SCSI, US_PR_CB, NULL, 635 US_FL_SINGLE_LUN ), 636 637 UNUSUAL_DEV( 0x0781, 0x0100, 0x0100, 0x0100, 638 "Sandisk", 639 "ImageMate SDDR-12", 640 US_SC_SCSI, US_PR_CB, NULL, 641 US_FL_SINGLE_LUN ), 642 643 #ifdef CONFIG_USB_STORAGE_SDDR09 644 UNUSUAL_DEV( 0x0781, 0x0200, 0x0000, 0x9999, 645 "Sandisk", 646 "ImageMate SDDR-09", 647 US_SC_SCSI, US_PR_EUSB_SDDR09, NULL, 648 US_FL_SINGLE_LUN ), 649 #endif 650 651 #ifdef CONFIG_USB_STORAGE_FREECOM 652 UNUSUAL_DEV( 0x07ab, 0xfc01, 0x0000, 0x9999, 653 "Freecom", 654 "USB-IDE", 655 US_SC_QIC, US_PR_FREECOM, freecom_init, 0), 656 #endif 657 658 /* Reported by Eero Volotinen <eero@ping-viini.org> */ 659 UNUSUAL_DEV( 0x07ab, 0xfccd, 0x0406, 0x0406, 660 "Freecom Technologies", 661 "FHD-Classic", 662 US_SC_DEVICE, US_PR_DEVICE, NULL, 663 US_FL_FIX_CAPACITY), 664 665 UNUSUAL_DEV( 0x07af, 0x0004, 0x0100, 0x0133, 666 "Microtech", 667 "USB-SCSI-DB25", 668 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 669 US_FL_SCM_MULT_TARG ), 670 671 UNUSUAL_DEV( 0x07af, 0x0005, 0x0100, 0x0100, 672 "Microtech", 673 "USB-SCSI-HD50", 674 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 675 US_FL_SCM_MULT_TARG ), 676 677 #ifdef CONFIG_USB_STORAGE_DPCM 678 UNUSUAL_DEV( 0x07af, 0x0006, 0x0100, 0x0100, 679 "Microtech", 680 "CameraMate (DPCM_USB)", 681 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ), 682 #endif 683 684 #ifdef CONFIG_USB_STORAGE_DATAFAB 685 UNUSUAL_DEV( 0x07c4, 0xa000, 0x0000, 0x0015, 686 "Datafab", 687 "MDCFE-B USB CF Reader", 688 US_SC_SCSI, US_PR_DATAFAB, NULL, 689 0 ), 690 691 /* 692 * The following Datafab-based devices may or may not work 693 * using the current driver...the 0xffff is arbitrary since I 694 * don't know what device versions exist for these guys. 695 * 696 * The 0xa003 and 0xa004 devices in particular I'm curious about. 697 * I'm told they exist but so far nobody has come forward to say that 698 * they work with this driver. Given the success we've had getting 699 * other Datafab-based cards operational with this driver, I've decided 700 * to leave these two devices in the list. 701 */ 702 UNUSUAL_DEV( 0x07c4, 0xa001, 0x0000, 0xffff, 703 "SIIG/Datafab", 704 "SIIG/Datafab Memory Stick+CF Reader/Writer", 705 US_SC_SCSI, US_PR_DATAFAB, NULL, 706 0 ), 707 708 /* Reported by Josef Reisinger <josef.reisinger@netcologne.de> */ 709 UNUSUAL_DEV( 0x07c4, 0xa002, 0x0000, 0xffff, 710 "Datafab/Unknown", 711 "MD2/MD3 Disk enclosure", 712 US_SC_SCSI, US_PR_DATAFAB, NULL, 713 US_FL_SINGLE_LUN ), 714 715 UNUSUAL_DEV( 0x07c4, 0xa003, 0x0000, 0xffff, 716 "Datafab/Unknown", 717 "Datafab-based Reader", 718 US_SC_SCSI, US_PR_DATAFAB, NULL, 719 0 ), 720 721 UNUSUAL_DEV( 0x07c4, 0xa004, 0x0000, 0xffff, 722 "Datafab/Unknown", 723 "Datafab-based Reader", 724 US_SC_SCSI, US_PR_DATAFAB, NULL, 725 0 ), 726 727 UNUSUAL_DEV( 0x07c4, 0xa005, 0x0000, 0xffff, 728 "PNY/Datafab", 729 "PNY/Datafab CF+SM Reader", 730 US_SC_SCSI, US_PR_DATAFAB, NULL, 731 0 ), 732 733 UNUSUAL_DEV( 0x07c4, 0xa006, 0x0000, 0xffff, 734 "Simple Tech/Datafab", 735 "Simple Tech/Datafab CF+SM Reader", 736 US_SC_SCSI, US_PR_DATAFAB, NULL, 737 0 ), 738 #endif 739 740 #ifdef CONFIG_USB_STORAGE_SDDR55 741 /* Contributed by Peter Waechtler */ 742 UNUSUAL_DEV( 0x07c4, 0xa103, 0x0000, 0x9999, 743 "Datafab", 744 "MDSM-B reader", 745 US_SC_SCSI, US_PR_SDDR55, NULL, 746 US_FL_FIX_INQUIRY ), 747 #endif 748 749 #ifdef CONFIG_USB_STORAGE_DATAFAB 750 /* Submitted by Olaf Hering <olh@suse.de> */ 751 UNUSUAL_DEV( 0x07c4, 0xa109, 0x0000, 0xffff, 752 "Datafab Systems, Inc.", 753 "USB to CF + SM Combo (LC1)", 754 US_SC_SCSI, US_PR_DATAFAB, NULL, 755 0 ), 756 #endif 757 #ifdef CONFIG_USB_STORAGE_SDDR55 758 /* SM part - aeb <Andries.Brouwer@cwi.nl> */ 759 UNUSUAL_DEV( 0x07c4, 0xa109, 0x0000, 0xffff, 760 "Datafab Systems, Inc.", 761 "USB to CF + SM Combo (LC1)", 762 US_SC_SCSI, US_PR_SDDR55, NULL, 763 US_FL_SINGLE_LUN ), 764 #endif 765 766 /* Datafab KECF-USB / Sagatek DCS-CF / Simpletech Flashlink UCF-100 767 * Only revision 1.13 tested (same for all of the above devices, 768 * based on the Datafab DF-UG-07 chip). Needed for US_FL_FIX_INQUIRY. 769 * Submitted by Marek Michalkiewicz <marekm@amelek.gda.pl>. 770 * See also http://martin.wilck.bei.t-online.de/#kecf . 771 */ 772 UNUSUAL_DEV( 0x07c4, 0xa400, 0x0000, 0xffff, 773 "Datafab", 774 "KECF-USB", 775 US_SC_DEVICE, US_PR_DEVICE, NULL, 776 US_FL_FIX_INQUIRY ), 777 778 /* Casio QV 2x00/3x00/4000/8000 digital still cameras are not conformant 779 * to the USB storage specification in two ways: 780 * - They tell us they are using transport protocol CBI. In reality they 781 * are using transport protocol CB. 782 * - They don't like the INQUIRY command. So we must handle this command 783 * of the SCSI layer ourselves. 784 * - Some cameras with idProduct=0x1001 and bcdDevice=0x1000 have 785 * bInterfaceProtocol=0x00 (US_PR_CBI) while others have 0x01 (US_PR_CB). 786 * So don't remove the US_PR_CB override! 787 * - Cameras with bcdDevice=0x9009 require the US_SC_8070 override. 788 */ 789 UNUSUAL_DEV( 0x07cf, 0x1001, 0x1000, 0x9999, 790 "Casio", 791 "QV DigitalCamera", 792 US_SC_8070, US_PR_CB, NULL, 793 US_FL_NEED_OVERRIDE | US_FL_FIX_INQUIRY ), 794 795 /* Submitted by Hartmut Wahl <hwahl@hwahl.de>*/ 796 UNUSUAL_DEV( 0x0839, 0x000a, 0x0001, 0x0001, 797 "Samsung", 798 "Digimax 410", 799 US_SC_DEVICE, US_PR_DEVICE, NULL, 800 US_FL_FIX_INQUIRY), 801 802 /* Entry and supporting patch by Theodore Kilgore <kilgota@auburn.edu>. 803 * Flag will support Bulk devices which use a standards-violating 32-byte 804 * Command Block Wrapper. Here, the "DC2MEGA" cameras (several brands) with 805 * Grandtech GT892x chip, which request "Proprietary SCSI Bulk" support. 806 */ 807 808 UNUSUAL_DEV( 0x084d, 0x0011, 0x0110, 0x0110, 809 "Grandtech", 810 "DC2MEGA", 811 US_SC_DEVICE, US_PR_DEVICE, NULL, 812 US_FL_BULK32), 813 814 815 /* Entry needed for flags. Moreover, all devices with this ID use 816 * bulk-only transport, but _some_ falsely report Control/Bulk instead. 817 * One example is "Trumpion Digital Research MYMP3". 818 * Submitted by Bjoern Brill <brill(at)fs.math.uni-frankfurt.de> 819 */ 820 UNUSUAL_DEV( 0x090a, 0x1001, 0x0100, 0x0100, 821 "Trumpion", 822 "t33520 USB Flash Card Controller", 823 US_SC_DEVICE, US_PR_BULK, NULL, 824 US_FL_NEED_OVERRIDE ), 825 826 /* Trumpion Microelectronics MP3 player (felipe_alfaro@linuxmail.org) */ 827 UNUSUAL_DEV( 0x090a, 0x1200, 0x0000, 0x9999, 828 "Trumpion", 829 "MP3 player", 830 US_SC_RBC, US_PR_BULK, NULL, 831 0 ), 832 833 /* aeb */ 834 UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff, 835 "Feiya", 836 "5-in-1 Card Reader", 837 US_SC_DEVICE, US_PR_DEVICE, NULL, 838 US_FL_FIX_CAPACITY ), 839 840 /* This Pentax still camera is not conformant 841 * to the USB storage specification: - 842 * - It does not like the INQUIRY command. So we must handle this command 843 * of the SCSI layer ourselves. 844 * Tested on Rev. 10.00 (0x1000) 845 * Submitted by James Courtier-Dutton <James@superbug.demon.co.uk> 846 */ 847 UNUSUAL_DEV( 0x0a17, 0x0004, 0x1000, 0x1000, 848 "Pentax", 849 "Optio 2/3/400", 850 US_SC_DEVICE, US_PR_DEVICE, NULL, 851 US_FL_FIX_INQUIRY ), 852 853 854 /* Submitted by Per Winkvist <per.winkvist@uk.com> */ 855 UNUSUAL_DEV( 0x0a17, 0x006, 0x0000, 0xffff, 856 "Pentax", 857 "Optio S/S4", 858 US_SC_DEVICE, US_PR_DEVICE, NULL, 859 US_FL_FIX_INQUIRY ), 860 861 #ifdef CONFIG_USB_STORAGE_ISD200 862 UNUSUAL_DEV( 0x0bf6, 0xa001, 0x0100, 0x0110, 863 "ATI", 864 "USB Cable 205", 865 US_SC_ISD200, US_PR_BULK, isd200_Initialization, 866 0 ), 867 #endif 868 869 #ifdef CONFIG_USB_STORAGE_DATAFAB 870 UNUSUAL_DEV( 0x0c0b, 0xa109, 0x0000, 0xffff, 871 "Acomdata", 872 "CF", 873 US_SC_SCSI, US_PR_DATAFAB, NULL, 874 US_FL_SINGLE_LUN ), 875 #endif 876 #ifdef CONFIG_USB_STORAGE_SDDR55 877 UNUSUAL_DEV( 0x0c0b, 0xa109, 0x0000, 0xffff, 878 "Acomdata", 879 "SM", 880 US_SC_SCSI, US_PR_SDDR55, NULL, 881 US_FL_SINGLE_LUN ), 882 #endif 883 884 /* Submitted by Joris Struyve <joris@struyve.be> */ 885 UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff, 886 "Medion", 887 "MD 7425", 888 US_SC_DEVICE, US_PR_DEVICE, NULL, 889 US_FL_FIX_INQUIRY), 890 891 /* 892 * Entry for Jenoptik JD 5200z3 893 * 894 * email: car.busse@gmx.de 895 */ 896 UNUSUAL_DEV( 0x0d96, 0x5200, 0x0001, 0x0200, 897 "Jenoptik", 898 "JD 5200 z3", 899 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY), 900 901 /* Reported by Lubomir Blaha <tritol@trilogic.cz> 902 * I _REALLY_ don't know what 3rd, 4th number and all defines mean, but this 903 * works for me. Can anybody correct these values? (I able to test corrected 904 * version.) 905 */ 906 UNUSUAL_DEV( 0x0dd8, 0x1060, 0x0000, 0xffff, 907 "Netac", 908 "USB-CF-Card", 909 US_SC_DEVICE, US_PR_DEVICE, NULL, 910 US_FL_FIX_INQUIRY ), 911 912 /* Patch by Stephan Walter <stephan.walter@epfl.ch> 913 * I don't know why, but it works... */ 914 UNUSUAL_DEV( 0x0dda, 0x0001, 0x0012, 0x0012, 915 "WINWARD", 916 "Music Disk", 917 US_SC_DEVICE, US_PR_DEVICE, NULL, 918 US_FL_IGNORE_RESIDUE ), 919 920 /* Reported by Ian McConnell <ian at emit.demon.co.uk> */ 921 UNUSUAL_DEV( 0x0dda, 0x0301, 0x0012, 0x0012, 922 "PNP_MP3", 923 "PNP_MP3 PLAYER", 924 US_SC_DEVICE, US_PR_DEVICE, NULL, 925 US_FL_IGNORE_RESIDUE ), 926 927 /* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */ 928 UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300, 929 "USB", 930 "Solid state disk", 931 US_SC_DEVICE, US_PR_DEVICE, NULL, 932 US_FL_FIX_INQUIRY ), 933 934 /* Submitted by Daniel Drake <dsd@gentoo.org> 935 * Reported by dayul on the Gentoo Forums */ 936 UNUSUAL_DEV( 0x0ea0, 0x2168, 0x0110, 0x0110, 937 "Ours Technology", 938 "Flash Disk", 939 US_SC_DEVICE, US_PR_DEVICE, NULL, 940 US_FL_IGNORE_RESIDUE ), 941 942 /* Reported by Rastislav Stanik <rs_kernel@yahoo.com> */ 943 UNUSUAL_DEV( 0x0ea0, 0x6828, 0x0110, 0x0110, 944 "USB", 945 "Flash Disk", 946 US_SC_DEVICE, US_PR_DEVICE, NULL, 947 US_FL_IGNORE_RESIDUE ), 948 949 /* Reported by Michael Stattmann <michael@stattmann.com> */ 950 UNUSUAL_DEV( 0x0fce, 0xd008, 0x0000, 0x0000, 951 "Sony Ericsson", 952 "V800-Vodafone 802", 953 US_SC_DEVICE, US_PR_DEVICE, NULL, 954 US_FL_NO_WP_DETECT ), 955 956 /* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu> 957 * Tested on hardware version 1.10. 958 * Entry is needed only for the initializer function override. 959 */ 960 UNUSUAL_DEV( 0x1019, 0x0c55, 0x0000, 0x9999, 961 "Desknote", 962 "UCR-61S2B", 963 US_SC_DEVICE, US_PR_DEVICE, usb_stor_ucr61s2b_init, 964 0 ), 965 966 /* Reported by Kotrla Vitezslav <kotrla@ceb.cz> */ 967 UNUSUAL_DEV( 0x1370, 0x6828, 0x0110, 0x0110, 968 "SWISSBIT", 969 "Black Silver", 970 US_SC_DEVICE, US_PR_DEVICE, NULL, 971 US_FL_IGNORE_RESIDUE ), 972 973 /* Reported by Radovan Garabik <garabik@kassiopeia.juls.savba.sk> */ 974 UNUSUAL_DEV( 0x2735, 0x100b, 0x0000, 0x9999, 975 "MPIO", 976 "HS200", 977 US_SC_DEVICE, US_PR_DEVICE, NULL, 978 US_FL_GO_SLOW ), 979 980 #ifdef CONFIG_USB_STORAGE_SDDR55 981 UNUSUAL_DEV( 0x55aa, 0xa103, 0x0000, 0x9999, 982 "Sandisk", 983 "ImageMate SDDR55", 984 US_SC_SCSI, US_PR_SDDR55, NULL, 985 US_FL_SINGLE_LUN), 986 #endif 987