VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / drivers / usb / storage / unusual_devs.h
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, please send the following
40  * to greg@kroah.com:
41  *      - patch that adds the entry for your device which includes your
42  *        email address right above the entry.
43  *      - a copy of /proc/bus/usb/devices with your device plugged in
44  *        running with this patch.
45  *
46  */
47
48 UNUSUAL_DEV(  0x03ee, 0x0000, 0x0000, 0x0245, 
49                 "Mitsumi",
50                 "CD-R/RW Drive",
51                 US_SC_8020, US_PR_CBI, NULL, 0), 
52
53 UNUSUAL_DEV(  0x03ee, 0x6901, 0x0000, 0x0100,
54                 "Mitsumi",
55                 "USB FDD",
56                 US_SC_DEVICE, US_PR_DEVICE, NULL,
57                 US_FL_SINGLE_LUN ),
58
59 UNUSUAL_DEV(  0x03f0, 0x0107, 0x0200, 0x0200, 
60                 "HP",
61                 "CD-Writer+",
62                 US_SC_8070, US_PR_CB, NULL, 0), 
63
64 #ifdef CONFIG_USB_STORAGE_HP8200e
65 UNUSUAL_DEV(  0x03f0, 0x0207, 0x0001, 0x0001, 
66                 "HP",
67                 "CD-Writer+ 8200e",
68                 US_SC_8070, US_PR_SCM_ATAPI, init_8200e, 0), 
69
70 UNUSUAL_DEV(  0x03f0, 0x0307, 0x0001, 0x0001, 
71                 "HP",
72                 "CD-Writer+ CD-4e",
73                 US_SC_8070, US_PR_SCM_ATAPI, init_8200e, 0), 
74 #endif
75
76 /* <torsten.scherer@uni-bielefeld.de>: I don't know the name of the bridge
77  * manufacturer, but I've got an external USB drive by the Revoltec company
78  * that needs this. otherwise the drive is recognized as /dev/sda, but any
79  * access to it blocks indefinitely.
80  */
81 UNUSUAL_DEV(  0x0402, 0x5621, 0x0103, 0x0103,
82                 "Revoltec",
83                 "USB/IDE Bridge (ATA/ATAPI)",
84                 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
85
86 /* Deduced by Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
87  * Entry needed for flags: US_FL_FIX_INQUIRY because initial inquiry message
88  * always fails and confuses drive.
89  */
90 UNUSUAL_DEV(  0x0411, 0x001c, 0x0113, 0x0113,
91                 "Buffalo",
92                 "DUB-P40G HDD",
93                 US_SC_DEVICE, US_PR_DEVICE, NULL,
94                 US_FL_FIX_INQUIRY ),
95
96 #ifdef CONFIG_USB_STORAGE_DPCM
97 UNUSUAL_DEV(  0x0436, 0x0005, 0x0100, 0x0100,
98                 "Microtech",
99                 "CameraMate (DPCM_USB)",
100                 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ),
101 #endif
102
103 /* Patch submitted by Alessandro Fracchetti <al.fracchetti@tin.it> */
104 UNUSUAL_DEV(  0x0482, 0x0105, 0x0100, 0x0100,
105                 "Kyocera",
106                 "Finecam L3",
107                 US_SC_SCSI, US_PR_BULK, NULL, US_FL_FIX_INQUIRY),
108
109 /* Patch submitted by Philipp Friedrich <philipp@void.at> */
110 UNUSUAL_DEV(  0x0482, 0x0100, 0x0100, 0x0100,
111                 "Kyocera",
112                 "Finecam S3x",
113                 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
114
115 /* Patch submitted by Philipp Friedrich <philipp@void.at> */
116 UNUSUAL_DEV(  0x0482, 0x0101, 0x0100, 0x0100,
117                 "Kyocera",
118                 "Finecam S4",
119                 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
120
121 /* Patch submitted by Stephane Galles <stephane.galles@free.fr> */
122 UNUSUAL_DEV(  0x0482, 0x0103, 0x0100, 0x0100,
123                 "Kyocera",
124                 "Finecam S5",
125                 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
126
127 /* Patch for Kyocera Finecam L3
128  * Submitted by Michael Krauth <michael.krauth@web.de>
129  */
130 UNUSUAL_DEV(  0x0482, 0x0105, 0x0100, 0x0100,
131                 "Kyocera",
132                 "Finecam L3",
133                 US_SC_SCSI, US_PR_BULK, NULL,
134                 US_FL_FIX_INQUIRY),
135
136 /* Reported by Paul Stewart <stewart@wetlogic.net>
137  * This entry is needed because the device reports Sub=ff */
138 UNUSUAL_DEV(  0x04a4, 0x0004, 0x0001, 0x0001,
139                 "Hitachi",
140                 "DVD-CAM DZ-MV100A Camcorder",
141                 US_SC_SCSI, US_PR_CB, NULL, US_FL_SINGLE_LUN),
142
143 /* Reported by Simon Levitt <simon@whattf.com>
144  * This entry needs Sub and Proto fields */
145 UNUSUAL_DEV(  0x04b8, 0x0601, 0x0100, 0x0100,
146                 "Epson",
147                 "875DC Storage",
148                 US_SC_SCSI, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
149
150 /* Reported by Khalid Aziz <khalid@gonehiking.org>
151  * This entry is needed because the device reports Sub=ff */
152 UNUSUAL_DEV(  0x04b8, 0x0602, 0x0110, 0x0110,
153                 "Epson",
154                 "785EPX Storage",
155                 US_SC_SCSI, US_PR_BULK, NULL, US_FL_SINGLE_LUN),
156
157 UNUSUAL_DEV(  0x04cb, 0x0100, 0x0000, 0x2210,
158                 "Fujifilm",
159                 "FinePix 1400Zoom",
160                 US_SC_UFI, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
161
162 /* Reported by Peter Wächtler <pwaechtler@loewe-komp.de>
163  * The device needs the flags only.
164  */
165 UNUSUAL_DEV(  0x04ce, 0x0002, 0x0074, 0x0074,
166                 "ScanLogic",
167                 "SL11R-IDE",
168                 US_SC_DEVICE, US_PR_DEVICE, NULL,
169                 US_FL_FIX_INQUIRY),
170
171 /* Reported by Kriston Fincher <kriston@airmail.net>
172  * Patch submitted by Sean Millichamp <sean@bruenor.org>
173  * This is to support the Panasonic PalmCam PV-SD4090
174  * This entry is needed because the device reports Sub=ff 
175  */
176 UNUSUAL_DEV(  0x04da, 0x0901, 0x0100, 0x0200,
177                 "Panasonic",
178                 "LS-120 Camera",
179                 US_SC_UFI, US_PR_DEVICE, NULL, 0),
180
181 /* From Yukihiro Nakai, via zaitcev@yahoo.com.
182  * This is needed for CB instead of CBI */
183 UNUSUAL_DEV(  0x04da, 0x0d05, 0x0000, 0x0000,
184                 "Sharp CE-CW05",
185                 "CD-R/RW Drive",
186                 US_SC_8070, US_PR_CB, NULL, 0),
187
188 /* Most of the following entries were developed with the help of
189  * Shuttle/SCM directly.
190  */
191 UNUSUAL_DEV(  0x04e6, 0x0001, 0x0200, 0x0200, 
192                 "Matshita",
193                 "LS-120",
194                 US_SC_8020, US_PR_CB, NULL, 0),
195
196 UNUSUAL_DEV(  0x04e6, 0x0002, 0x0100, 0x0100, 
197                 "Shuttle",
198                 "eUSCSI Bridge",
199                 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init, 
200                 US_FL_SCM_MULT_TARG ), 
201
202 #ifdef CONFIG_USB_STORAGE_SDDR09
203 UNUSUAL_DEV(  0x04e6, 0x0003, 0x0000, 0x9999, 
204                 "Sandisk",
205                 "ImageMate SDDR09",
206                 US_SC_SCSI, US_PR_EUSB_SDDR09, NULL,
207                 US_FL_SINGLE_LUN ),
208
209 /* This entry is from Andries.Brouwer@cwi.nl */
210 UNUSUAL_DEV(  0x04e6, 0x0005, 0x0100, 0x0208,
211                 "SCM Microsystems",
212                 "eUSB SmartMedia / CompactFlash Adapter",
213                 US_SC_SCSI, US_PR_DPCM_USB, sddr09_init, 
214                 0), 
215 #endif
216
217 UNUSUAL_DEV(  0x04e6, 0x0006, 0x0100, 0x0205, 
218                 "Shuttle",
219                 "eUSB MMC Adapter",
220                 US_SC_SCSI, US_PR_DEVICE, NULL, 
221                 US_FL_SINGLE_LUN), 
222
223 UNUSUAL_DEV(  0x04e6, 0x0007, 0x0100, 0x0200, 
224                 "Sony",
225                 "Hifd",
226                 US_SC_SCSI, US_PR_CB, NULL, 
227                 US_FL_SINGLE_LUN), 
228
229 UNUSUAL_DEV(  0x04e6, 0x0009, 0x0200, 0x0200, 
230                 "Shuttle",
231                 "eUSB ATA/ATAPI Adapter",
232                 US_SC_8020, US_PR_CB, NULL, 0),
233
234 UNUSUAL_DEV(  0x04e6, 0x000a, 0x0200, 0x0200, 
235                 "Shuttle",
236                 "eUSB CompactFlash Adapter",
237                 US_SC_8020, US_PR_CB, NULL, 0),
238
239 UNUSUAL_DEV(  0x04e6, 0x000B, 0x0100, 0x0100, 
240                 "Shuttle",
241                 "eUSCSI Bridge",
242                 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 
243                 US_FL_SCM_MULT_TARG ), 
244
245 UNUSUAL_DEV(  0x04e6, 0x000C, 0x0100, 0x0100, 
246                 "Shuttle",
247                 "eUSCSI Bridge",
248                 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init, 
249                 US_FL_SCM_MULT_TARG ), 
250
251 UNUSUAL_DEV(  0x04e6, 0x0101, 0x0200, 0x0200, 
252                 "Shuttle",
253                 "CD-RW Device",
254                 US_SC_8020, US_PR_CB, NULL, 0),
255
256 /* Reported by Bob Sass <rls@vectordb.com> -- only rev 1.33 tested */
257 UNUSUAL_DEV(  0x050d, 0x0115, 0x0133, 0x0133,
258                 "Belkin",
259                 "USB SCSI Adaptor",
260                 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init,
261                 US_FL_SCM_MULT_TARG ),
262
263 /* Iomega Clik! Drive 
264  * Reported by David Chatenay <dchatenay@hotmail.com>
265  * The reason this is needed is not fully known.
266  */
267 UNUSUAL_DEV(  0x0525, 0xa140, 0x0100, 0x0100,
268                 "Iomega",
269                 "USB Clik! 40",
270                 US_SC_8070, US_PR_BULK, NULL,
271                 US_FL_FIX_INQUIRY ),
272
273 /* This entry is needed because the device reports Sub=ff */
274 UNUSUAL_DEV(  0x054c, 0x0010, 0x0106, 0x0450, 
275                 "Sony",
276                 "DSC-S30/S70/S75/505V/F505/F707/F717/P8", 
277                 US_SC_SCSI, US_PR_DEVICE, NULL,
278                 US_FL_SINGLE_LUN | US_FL_MODE_XLATE ),
279
280 /* This entry is needed because the device reports Sub=ff */
281 UNUSUAL_DEV(  0x054c, 0x0010, 0x0500, 0x0500, 
282                "Sony",
283                "DSC-T1", 
284                US_SC_8070, US_PR_DEVICE, NULL,
285                US_FL_SINGLE_LUN | US_FL_MODE_XLATE ),
286
287
288 /* Reported by wim@geeks.nl */
289 UNUSUAL_DEV(  0x054c, 0x0025, 0x0100, 0x0100, 
290                 "Sony",
291                 "Memorystick NW-MS7",
292                 US_SC_DEVICE, US_PR_DEVICE, NULL,
293                 US_FL_SINGLE_LUN ),
294
295 #ifdef CONFIG_USB_STORAGE_ISD200
296 UNUSUAL_DEV(  0x054c, 0x002b, 0x0100, 0x0110,
297                 "Sony",
298                 "Portable USB Harddrive V2",
299                 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
300                 0 ),
301 #endif
302
303 UNUSUAL_DEV(  0x054c, 0x002d, 0x0100, 0x0100, 
304                 "Sony",
305                 "Memorystick MSAC-US1",
306                 US_SC_DEVICE, US_PR_DEVICE, NULL,
307                 US_FL_SINGLE_LUN ),
308
309 /* Submitted by Klaus Mueller <k.mueller@intershop.de> */
310 UNUSUAL_DEV(  0x054c, 0x002e, 0x0106, 0x0310, 
311                 "Sony",
312                 "Handycam",
313                 US_SC_SCSI, US_PR_DEVICE, NULL,
314                 US_FL_SINGLE_LUN | US_FL_MODE_XLATE),
315
316 /* Submitted by Rajesh Kumble Nayak <nayak@obs-nice.fr> */
317 UNUSUAL_DEV(  0x054c, 0x002e, 0x0500, 0x0500, 
318                 "Sony",
319                 "Handycam HC-85",
320                 US_SC_UFI, US_PR_DEVICE, NULL,
321                 US_FL_SINGLE_LUN | US_FL_MODE_XLATE),
322
323 UNUSUAL_DEV(  0x054c, 0x0032, 0x0000, 0x9999,
324                 "Sony",
325                 "Memorystick MSC-U01N",
326                 US_SC_DEVICE, US_PR_DEVICE, NULL,
327                 US_FL_SINGLE_LUN ),
328
329 /* Submitted by Michal Mlotek <mlotek@foobar.pl> */
330 UNUSUAL_DEV(  0x054c, 0x0058, 0x0000, 0x9999,
331                 "Sony",
332                 "PEG N760c Memorystick",
333                 US_SC_DEVICE, US_PR_DEVICE, NULL,
334                 US_FL_FIX_INQUIRY ),
335                 
336 UNUSUAL_DEV(  0x054c, 0x0069, 0x0000, 0x9999,
337                 "Sony",
338                 "Memorystick MSC-U03",
339                 US_SC_UFI, US_PR_CB, NULL,
340                 US_FL_SINGLE_LUN ),
341
342 /* Submitted by Nathan Babb <nathan@lexi.com> */
343 UNUSUAL_DEV(  0x054c, 0x006d, 0x0000, 0x9999,
344                 "Sony",
345                 "PEG Mass Storage",
346                 US_SC_DEVICE, US_PR_DEVICE, NULL,
347                 US_FL_FIX_INQUIRY ),
348
349 /* Submitted by Mike Alborn <malborn@deandra.homeip.net> */
350 UNUSUAL_DEV(  0x054c, 0x016a, 0x0000, 0x9999,
351                 "Sony",
352                 "PEG Mass Storage",
353                 US_SC_DEVICE, US_PR_DEVICE, NULL,
354                 US_FL_FIX_INQUIRY ),
355                 
356 /* Submitted by Frank Engel <frankie@cse.unsw.edu.au> */
357 UNUSUAL_DEV(  0x054c, 0x0099, 0x0000, 0x9999,
358                 "Sony",
359                 "PEG Mass Storage",
360                 US_SC_DEVICE, US_PR_DEVICE, NULL,
361                 US_FL_FIX_INQUIRY ),
362
363                 
364 UNUSUAL_DEV(  0x057b, 0x0000, 0x0000, 0x0299, 
365                 "Y-E Data",
366                 "Flashbuster-U",
367                 US_SC_DEVICE,  US_PR_CB, NULL,
368                 US_FL_SINGLE_LUN),
369
370 UNUSUAL_DEV(  0x057b, 0x0000, 0x0300, 0x9999, 
371                 "Y-E Data",
372                 "Flashbuster-U",
373                 US_SC_DEVICE,  US_PR_DEVICE, NULL,
374                 US_FL_SINGLE_LUN),
375
376 /* Fabrizio Fellini <fello@libero.it> */
377 UNUSUAL_DEV(  0x0595, 0x4343, 0x0000, 0x2210,
378                 "Fujifilm",
379                 "Digital Camera EX-20 DSC",
380                 US_SC_8070, US_PR_DEVICE, NULL, 0 ),
381
382 UNUSUAL_DEV(  0x059f, 0xa601, 0x0200, 0x0200, 
383                 "LaCie",
384                 "USB Hard Disk",
385                 US_SC_RBC, US_PR_CB, NULL, 0 ), 
386
387 /* Submitted by Jol Bourquard <numlock@freesurf.ch> */
388 UNUSUAL_DEV(  0x05ab, 0x0060, 0x1104, 0x1110,
389                 "In-System",
390                 "PyroGate External CD-ROM Enclosure (FCD-523)",
391                 US_SC_SCSI, US_PR_BULK, NULL, 0 ),
392
393 #ifdef CONFIG_USB_STORAGE_ISD200
394 UNUSUAL_DEV(  0x05ab, 0x0031, 0x0100, 0x0110,
395                 "In-System",
396                 "USB/IDE Bridge (ATA/ATAPI)",
397                 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
398                 0 ),
399
400 UNUSUAL_DEV(  0x05ab, 0x0301, 0x0100, 0x0110,
401                 "In-System",
402                 "Portable USB Harddrive V2",
403                 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
404                 0 ),
405
406 UNUSUAL_DEV(  0x05ab, 0x0351, 0x0100, 0x0110,
407                 "In-System",
408                 "Portable USB Harddrive V2",
409                 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
410                 0 ),
411
412 UNUSUAL_DEV(  0x05ab, 0x5701, 0x0100, 0x0110,
413                 "In-System",
414                 "USB Storage Adapter V2",
415                 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
416                 0 ),
417 #endif
418
419 #ifdef CONFIG_USB_STORAGE_JUMPSHOT
420 UNUSUAL_DEV(  0x05dc, 0x0001, 0x0000, 0x0001,
421                 "Lexar",
422                 "Jumpshot USB CF Reader",
423                 US_SC_SCSI, US_PR_JUMPSHOT, NULL,
424                 US_FL_NEED_OVERRIDE | US_FL_MODE_XLATE ),
425 #endif
426
427 /* Reported by Blake Matheny <bmatheny@purdue.edu> */
428 UNUSUAL_DEV(  0x05dc, 0xb002, 0x0000, 0x0113,
429                 "Lexar",
430                 "USB CF Reader",
431                 US_SC_DEVICE, US_PR_DEVICE, NULL,
432                 US_FL_FIX_INQUIRY ),
433
434 /* Reported by Carlos Villegas <cav@uniscope.co.jp>
435  * This device needs an INQUIRY of exactly 36-bytes to function.
436  * That is the only reason this entry is needed.
437  */
438 UNUSUAL_DEV(  0x05e3, 0x0700, 0x0000, 0xffff,
439                 "Genesys Logic",
440                 "USB to IDE Card Reader",
441                 US_SC_DEVICE, US_PR_DEVICE, NULL,
442                 US_FL_FIX_INQUIRY ),
443
444 /* Submitted Alexander Oltu <alexander@all-2.com> */
445 UNUSUAL_DEV(  0x05e3, 0x0701, 0x0000, 0xffff, 
446                 "Genesys Logic", 
447                 "USB to IDE Optical",
448                 US_SC_DEVICE, US_PR_DEVICE, NULL,
449                 US_FL_MODE_XLATE ), 
450
451 /* Reported by Peter Marks <peter.marks@turner.com>
452  * Like the SIIG unit above, this unit needs an INQUIRY to ask for exactly
453  * 36 bytes of data.  No more, no less. That is the only reason this entry
454  * is needed.
455  *
456  * ST818 slim drives (rev 0.02) don't need special care.
457 */
458 UNUSUAL_DEV(  0x05e3, 0x0702, 0x0000, 0xffff,
459                 "Genesys Logic",
460                 "USB to IDE Disk",
461                 US_SC_DEVICE, US_PR_DEVICE, NULL,
462                 US_FL_FIX_INQUIRY ),
463
464 /* Reported by Hanno Boeck <hanno@gmx.de>
465  * Taken from the Lycoris Kernel */
466 UNUSUAL_DEV(  0x0636, 0x0003, 0x0000, 0x9999,
467                 "Vivitar",
468                 "Vivicam 35Xx",
469                 US_SC_SCSI, US_PR_BULK, NULL,
470                 US_FL_FIX_INQUIRY | US_FL_MODE_XLATE),
471
472 UNUSUAL_DEV(  0x0644, 0x0000, 0x0100, 0x0100, 
473                 "TEAC",
474                 "Floppy Drive",
475                 US_SC_UFI, US_PR_CB, NULL, 0 ), 
476
477 #ifdef CONFIG_USB_STORAGE_SDDR09
478 UNUSUAL_DEV(  0x066b, 0x0105, 0x0100, 0x0100, 
479                 "Olympus",
480                 "Camedia MAUSB-2",
481                 US_SC_SCSI, US_PR_EUSB_SDDR09, NULL,
482                 US_FL_SINGLE_LUN ),
483 #endif
484
485 /* Submitted by Benny Sjostrand <benny@hostmobility.com> */
486 UNUSUAL_DEV( 0x0686, 0x4011, 0x0001, 0x0001,
487                 "Minolta",
488                 "Dimage F300",
489                 US_SC_SCSI, US_PR_BULK, NULL, 0 ),
490
491 /* Reported by Miguel A. Fosas <amn3s1a@ono.com> */
492 UNUSUAL_DEV(  0x0686, 0x4017, 0x0001, 0x0001,
493                 "Minolta",
494                 "DIMAGE E223",
495                 US_SC_SCSI, US_PR_DEVICE, NULL, 0 ),
496
497 UNUSUAL_DEV(  0x0693, 0x0002, 0x0100, 0x0100, 
498                 "Hagiwara",
499                 "FlashGate SmartMedia",
500                 US_SC_SCSI, US_PR_BULK, NULL, 0 ),
501
502 UNUSUAL_DEV(  0x0693, 0x0005, 0x0100, 0x0100,
503                 "Hagiwara",
504                 "Flashgate",
505                 US_SC_SCSI, US_PR_BULK, NULL, 0 ), 
506
507 UNUSUAL_DEV(  0x0781, 0x0001, 0x0200, 0x0200, 
508                 "Sandisk",
509                 "ImageMate SDDR-05a",
510                 US_SC_SCSI, US_PR_CB, NULL,
511                 US_FL_SINGLE_LUN ),
512
513 UNUSUAL_DEV(  0x0781, 0x0002, 0x0009, 0x0009, 
514                 "Sandisk",
515                 "ImageMate SDDR-31",
516                 US_SC_DEVICE, US_PR_DEVICE, NULL,
517                 US_FL_IGNORE_SER ),
518
519 UNUSUAL_DEV(  0x0781, 0x0100, 0x0100, 0x0100,
520                 "Sandisk",
521                 "ImageMate SDDR-12",
522                 US_SC_SCSI, US_PR_CB, NULL,
523                 US_FL_SINGLE_LUN ),
524
525 #ifdef CONFIG_USB_STORAGE_SDDR09
526 UNUSUAL_DEV(  0x0781, 0x0200, 0x0000, 0x9999, 
527                 "Sandisk",
528                 "ImageMate SDDR-09",
529                 US_SC_SCSI, US_PR_EUSB_SDDR09, NULL,
530                 US_FL_SINGLE_LUN ),
531 #endif
532
533 #ifdef CONFIG_USB_STORAGE_FREECOM
534 UNUSUAL_DEV(  0x07ab, 0xfc01, 0x0000, 0x9999,
535                 "Freecom",
536                 "USB-IDE",
537                 US_SC_QIC, US_PR_FREECOM, freecom_init, 0),
538 #endif
539
540 UNUSUAL_DEV(  0x07af, 0x0004, 0x0100, 0x0133, 
541                 "Microtech",
542                 "USB-SCSI-DB25",
543                 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init,
544                 US_FL_SCM_MULT_TARG ), 
545
546 UNUSUAL_DEV(  0x07af, 0x0005, 0x0100, 0x0100, 
547                 "Microtech",
548                 "USB-SCSI-HD50",
549                 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init,
550                 US_FL_SCM_MULT_TARG ), 
551
552 #ifdef CONFIG_USB_STORAGE_DPCM
553 UNUSUAL_DEV(  0x07af, 0x0006, 0x0100, 0x0100,
554                 "Microtech",
555                 "CameraMate (DPCM_USB)",
556                 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ),
557 #endif
558
559 #ifdef CONFIG_USB_STORAGE_DATAFAB
560 UNUSUAL_DEV(  0x07c4, 0xa000, 0x0000, 0x0015,
561                 "Datafab",
562                 "MDCFE-B USB CF Reader",
563                 US_SC_SCSI, US_PR_DATAFAB, NULL,
564                 US_FL_MODE_XLATE ),
565
566         /*
567          * The following Datafab-based devices may or may not work
568          * using the current driver...the 0xffff is arbitrary since I
569          * don't know what device versions exist for these guys.
570          *
571          * The 0xa003 and 0xa004 devices in particular I'm curious about.
572          * I'm told they exist but so far nobody has come forward to say that
573          * they work with this driver.  Given the success we've had getting
574          * other Datafab-based cards operational with this driver, I've decided
575          * to leave these two devices in the list.
576          */
577 UNUSUAL_DEV( 0x07c4, 0xa001, 0x0000, 0xffff,
578                 "SIIG/Datafab",
579                 "SIIG/Datafab Memory Stick+CF Reader/Writer",
580                 US_SC_SCSI, US_PR_DATAFAB, NULL,
581                 US_FL_MODE_XLATE ),
582
583 UNUSUAL_DEV( 0x07c4, 0xa003, 0x0000, 0xffff,
584                 "Datafab/Unknown",
585                 "Datafab-based Reader",
586                 US_SC_SCSI, US_PR_DATAFAB, NULL,
587                 US_FL_MODE_XLATE ),
588
589 UNUSUAL_DEV( 0x07c4, 0xa004, 0x0000, 0xffff,
590                 "Datafab/Unknown",
591                 "Datafab-based Reader",
592                 US_SC_SCSI, US_PR_DATAFAB, NULL,
593                 US_FL_MODE_XLATE ),
594
595 UNUSUAL_DEV( 0x07c4, 0xa005, 0x0000, 0xffff,
596                 "PNY/Datafab",
597                 "PNY/Datafab CF+SM Reader",
598                 US_SC_SCSI, US_PR_DATAFAB, NULL,
599                 US_FL_MODE_XLATE ),
600
601 UNUSUAL_DEV( 0x07c4, 0xa006, 0x0000, 0xffff,
602                 "Simple Tech/Datafab",
603                 "Simple Tech/Datafab CF+SM Reader",
604                 US_SC_SCSI, US_PR_DATAFAB, NULL,
605                 US_FL_MODE_XLATE ),
606 #endif
607                 
608 #ifdef CONFIG_USB_STORAGE_SDDR55
609 /* Contributed by Peter Waechtler */
610 UNUSUAL_DEV( 0x07c4, 0xa103, 0x0000, 0x9999,
611                 "Datafab",
612                 "MDSM-B reader",
613                 US_SC_SCSI, US_PR_SDDR55, NULL,
614                 US_FL_FIX_INQUIRY ),
615 #endif
616
617 #ifdef CONFIG_USB_STORAGE_DATAFAB
618 /* Submitted by Olaf Hering <olh@suse.de> */
619 UNUSUAL_DEV(  0x07c4, 0xa109, 0x0000, 0xffff,
620                 "Datafab Systems, Inc.",
621                 "USB to CF + SM Combo (LC1)",
622                 US_SC_SCSI, US_PR_DATAFAB, NULL,
623                 US_FL_MODE_XLATE ),
624 #endif
625 #ifdef CONFIG_USB_STORAGE_SDDR55
626 /* SM part - aeb <Andries.Brouwer@cwi.nl> */
627 UNUSUAL_DEV(  0x07c4, 0xa109, 0x0000, 0xffff,
628                 "Datafab Systems, Inc.",
629                 "USB to CF + SM Combo (LC1)",
630                 US_SC_SCSI, US_PR_SDDR55, NULL,
631                 US_FL_SINGLE_LUN ),
632 #endif
633
634 /* Datafab KECF-USB / Sagatek DCS-CF / Simpletech Flashlink UCF-100
635  * Only revision 1.13 tested (same for all of the above devices,
636  * based on the Datafab DF-UG-07 chip).  Needed for US_FL_FIX_INQUIRY.
637  * Submitted by Marek Michalkiewicz <marekm@amelek.gda.pl>.
638  * See also http://martin.wilck.bei.t-online.de/#kecf .
639  */
640 UNUSUAL_DEV(  0x07c4, 0xa400, 0x0000, 0xffff,
641                 "Datafab",
642                 "KECF-USB",
643                 US_SC_DEVICE, US_PR_DEVICE, NULL,
644                 US_FL_FIX_INQUIRY ),
645
646 /* Casio QV 2x00/3x00/4000/8000 digital still cameras are not conformant
647  * to the USB storage specification in two ways:
648  * - They tell us they are using transport protocol CBI. In reality they
649  *   are using transport protocol CB.
650  * - They don't like the INQUIRY command. So we must handle this command
651  *   of the SCSI layer ourselves.
652  * - Some cameras with idProduct=0x1001 and bcdDevice=0x1000 have
653  *   bInterfaceProtocol=0x00 (US_PR_CBI) while others have 0x01 (US_PR_CB).
654  *   So don't remove the US_PR_CB override!
655  * - Cameras with bcdDevice=0x9009 require the US_SC_8070 override.
656  */
657 UNUSUAL_DEV( 0x07cf, 0x1001, 0x1000, 0x9999,
658                 "Casio",
659                 "QV DigitalCamera",
660                 US_SC_8070, US_PR_CB, NULL,
661                 US_FL_NEED_OVERRIDE | US_FL_FIX_INQUIRY ),
662
663 /* Submitted by Hartmut Wahl <hwahl@hwahl.de>*/
664 UNUSUAL_DEV( 0x0839, 0x000a, 0x0001, 0x0001,
665                 "Samsung",
666                 "Digimax 410",
667                 US_SC_DEVICE, US_PR_DEVICE, NULL,
668                 US_FL_FIX_INQUIRY),
669
670 /* Aiptek PocketCAM 3Mega
671  * Nicolas DUPEUX <nicolas@dupeux.net> 
672  */
673 UNUSUAL_DEV(  0x08ca, 0x2011, 0x0000, 0x9999,
674                 "AIPTEK",
675                 "PocketCAM 3Mega",
676                 US_SC_DEVICE, US_PR_DEVICE, NULL,
677                 US_FL_MODE_XLATE ),
678
679 /* Entry needed for flags. Moreover, all devices with this ID use
680  * bulk-only transport, but _some_ falsely report Control/Bulk instead.
681  * One example is "Trumpion Digital Research MYMP3".
682  * Submitted by Bjoern Brill <brill(at)fs.math.uni-frankfurt.de>
683  */
684 UNUSUAL_DEV(  0x090a, 0x1001, 0x0100, 0x0100,
685                 "Trumpion",
686                 "t33520 USB Flash Card Controller",
687                 US_SC_DEVICE, US_PR_BULK, NULL,
688                 US_FL_MODE_XLATE),
689
690 /* Trumpion Microelectronics MP3 player (felipe_alfaro@linuxmail.org) */
691 UNUSUAL_DEV( 0x090a, 0x1200, 0x0000, 0x9999,
692                 "Trumpion",
693                 "MP3 player",
694                 US_SC_RBC, US_PR_BULK, NULL,
695                 US_FL_MODE_XLATE),
696
697 /* aeb */
698 UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff,
699                 "Feiya",
700                 "5-in-1 Card Reader",
701                 US_SC_DEVICE, US_PR_DEVICE, NULL,
702                 US_FL_FIX_CAPACITY ),
703
704 UNUSUAL_DEV(  0x097a, 0x0001, 0x0000, 0x0001,
705                 "Minds@Work",
706                 "Digital Wallet",
707                 US_SC_DEVICE, US_PR_DEVICE, NULL,
708                 US_FL_MODE_XLATE ),
709
710 UNUSUAL_DEV(  0x0a16, 0x8888, 0x0100, 0x0100,
711                 "IBM",
712                 "IBM USB Memory Key",
713                 US_SC_DEVICE, US_PR_DEVICE, NULL,
714                 US_FL_FIX_INQUIRY ),
715
716 /* This Pentax still camera is not conformant
717  * to the USB storage specification: -
718  * - It does not like the INQUIRY command. So we must handle this command
719  *   of the SCSI layer ourselves.
720  * Tested on Rev. 10.00 (0x1000)
721  * Submitted by James Courtier-Dutton <James@superbug.demon.co.uk>
722  */
723 UNUSUAL_DEV( 0x0a17, 0x0004, 0x1000, 0x1000,
724                 "Pentax",
725                 "Optio 2/3/400",
726                 US_SC_DEVICE, US_PR_DEVICE, NULL,
727                 US_FL_FIX_INQUIRY ),
728
729
730 /* Submitted by Per Winkvist <per.winkvist@uk.com> */
731 UNUSUAL_DEV( 0x0a17, 0x006, 0x0000, 0xffff,
732                 "Pentax",
733                 "Optio S/S4",
734                 US_SC_DEVICE, US_PR_DEVICE, NULL,
735                 US_FL_FIX_INQUIRY ),
736                 
737 #ifdef CONFIG_USB_STORAGE_ISD200
738 UNUSUAL_DEV(  0x0bf6, 0xa001, 0x0100, 0x0110,
739                 "ATI",
740                 "USB Cable 205",
741                 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
742                 0 ),
743 #endif
744
745 #ifdef CONFIG_USB_STORAGE_DATAFAB
746 UNUSUAL_DEV( 0x0c0b, 0xa109, 0x0000, 0xffff,
747                "Acomdata",
748                "CF",
749                US_SC_SCSI, US_PR_DATAFAB, NULL,
750                US_FL_SINGLE_LUN ),
751 #endif
752 #ifdef CONFIG_USB_STORAGE_SDDR55
753 UNUSUAL_DEV( 0x0c0b, 0xa109, 0x0000, 0xffff,
754                "Acomdata",
755                "SM",
756                US_SC_SCSI, US_PR_SDDR55, NULL,
757                US_FL_SINGLE_LUN ),
758 #endif
759
760 /* Submitted by Joris Struyve <joris@struyve.be> */
761 UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff,
762                 "Medion",
763                 "MD 7425",
764                 US_SC_DEVICE, US_PR_DEVICE, NULL,
765                 US_FL_FIX_INQUIRY),
766
767 /*
768  * Entry for Jenoptik JD 5200z3
769  *
770  * email: car.busse@gmx.de
771  */
772 UNUSUAL_DEV(  0x0d96, 0x5200, 0x0001, 0x0200,
773                 "Jenoptik",
774                 "JD 5200 z3",
775                 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
776
777 /* Reported by Lubomir Blaha <tritol@trilogic.cz>
778  * I _REALLY_ don't know what 3rd, 4th number and all defines mean, but this
779  * works for me. Can anybody correct these values? (I able to test corrected
780  * version.)
781  */
782 UNUSUAL_DEV( 0x0dd8, 0x1060, 0x0000, 0xffff,
783                 "Netac",
784                 "USB-CF-Card",
785                 US_SC_DEVICE, US_PR_DEVICE, NULL,
786                 US_FL_FIX_INQUIRY ),
787
788 /* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */
789 UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300,
790                 "USB",
791                 "Solid state disk",
792                 US_SC_DEVICE, US_PR_DEVICE, NULL,
793                 US_FL_FIX_INQUIRY ),
794                 
795 /* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu>
796  * Tested on hardware version 1.10.
797  * Entry is needed only for the initializer function override.
798  */
799 UNUSUAL_DEV(  0x1019, 0x0c55, 0x0000, 0x9999,
800                 "Desknote",
801                 "UCR-61S2B",
802                 US_SC_DEVICE, US_PR_DEVICE, usb_stor_ucr61s2b_init,
803                 0 ),
804
805 /* Reported by Dan Pilone <pilone@slac.com>
806  * The device needs the flags only.
807  * Also reported by Brian Hall <brihall@pcisys.net>, again for flags.
808  * I also suspect this device may have a broken serial number.
809  */
810 UNUSUAL_DEV(  0x1065, 0x2136, 0x0000, 0x9999,
811                 "CCYU TECHNOLOGY",
812                 "EasyDisk Portable Device",
813                 US_SC_DEVICE, US_PR_DEVICE, NULL,
814                 US_FL_MODE_XLATE ),
815
816 #ifdef CONFIG_USB_STORAGE_SDDR55
817 UNUSUAL_DEV(  0x55aa, 0xa103, 0x0000, 0x9999, 
818                 "Sandisk",
819                 "ImageMate SDDR55",
820                 US_SC_SCSI, US_PR_SDDR55, NULL,
821                 US_FL_SINGLE_LUN),
822 #endif