blob: 15833fd910d1fcb3d384c6b73b4334de56c830ed [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/* Driver for USB Mass Storage compliant devices
Steven Cole093cf722005-05-03 19:07:24 -06002 * Unusual Devices File
Linus Torvalds1da177e2005-04-16 15:20:36 -07003 *
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 */
Linus Torvalds1da177e2005-04-16 15:20:36 -070034
35/* If you edit this file, please try to keep it sorted first by VendorID,
36 * then by ProductID.
37 *
38 * If you want to add an entry for this file, be sure to include the
39 * following information:
40 * - a patch that adds the entry for your device, including your
41 * email address right above the entry (plus maybe a brief
42 * explanation of the reason for the entry),
43 * - a copy of /proc/bus/usb/devices with your device plugged in
44 * running with this patch.
45 * Send your submission to either Phil Dibowitz <phil@ipom.com> or
46 * Alan Stern <stern@rowland.harvard.edu>, and don't forget to CC: the
47 * USB development list <linux-usb-devel@lists.sourceforge.net>.
48 */
49
Vivian Bregier8af60be2005-05-03 02:16:34 +020050/* patch submitted by Vivian Bregier <Vivian.Bregier@imag.fr>
51 */
52UNUSUAL_DEV( 0x03eb, 0x2002, 0x0100, 0x0100,
53 "ATMEL",
54 "SND1 Storage",
55 US_SC_DEVICE, US_PR_DEVICE, NULL,
56 US_FL_IGNORE_RESIDUE),
57
Linus Torvalds1da177e2005-04-16 15:20:36 -070058UNUSUAL_DEV( 0x03ee, 0x6901, 0x0000, 0x0100,
59 "Mitsumi",
60 "USB FDD",
61 US_SC_DEVICE, US_PR_DEVICE, NULL,
62 US_FL_SINGLE_LUN ),
63
Rodolfo Quesada9d5847b2006-03-06 10:45:42 -050064/* Reported by Rodolfo Quesada <rquesada@roqz.net> */
65UNUSUAL_DEV( 0x03ee, 0x6906, 0x0003, 0x0003,
66 "VIA Technologies Inc.",
67 "Mitsumi multi cardreader",
68 US_SC_DEVICE, US_PR_DEVICE, NULL,
69 US_FL_IGNORE_RESIDUE ),
70
Linus Torvalds1da177e2005-04-16 15:20:36 -070071UNUSUAL_DEV( 0x03f0, 0x0107, 0x0200, 0x0200,
72 "HP",
73 "CD-Writer+",
74 US_SC_8070, US_PR_CB, NULL, 0),
75
76#ifdef CONFIG_USB_STORAGE_USBAT
77UNUSUAL_DEV( 0x03f0, 0x0207, 0x0001, 0x0001,
78 "HP",
79 "CD-Writer+ 8200e",
Peter Chubbbdcfd9e2006-05-02 18:29:34 +010080 US_SC_8070, US_PR_USBAT, init_usbat_cd, 0),
Linus Torvalds1da177e2005-04-16 15:20:36 -070081
82UNUSUAL_DEV( 0x03f0, 0x0307, 0x0001, 0x0001,
83 "HP",
84 "CD-Writer+ CD-4e",
Peter Chubbbdcfd9e2006-05-02 18:29:34 +010085 US_SC_8070, US_PR_USBAT, init_usbat_cd, 0),
Linus Torvalds1da177e2005-04-16 15:20:36 -070086#endif
87
Phil Dibowitz1ea640c2005-08-29 22:38:28 -070088/* Reported by Sebastian Kapfer <sebastian_kapfer@gmx.net>
89 * and Olaf Hering <olh@suse.de> (different bcd's, same vendor/product)
90 * for USB floppies that need the SINGLE_LUN enforcement.
91 */
92UNUSUAL_DEV( 0x0409, 0x0040, 0x0000, 0x9999,
93 "NEC",
94 "NEC USB UF000x",
95 US_SC_DEVICE, US_PR_DEVICE, NULL,
96 US_FL_SINGLE_LUN ),
97
Phil Dibowitz3e220e92005-12-18 21:30:02 -080098/* Patch submitted by Mihnea-Costin Grigore <mihnea@zulu.ro> */
99UNUSUAL_DEV( 0x040d, 0x6205, 0x0003, 0x0003,
100 "VIA Technologies Inc.",
101 "USB 2.0 Card Reader",
102 US_SC_DEVICE, US_PR_DEVICE, NULL,
103 US_FL_IGNORE_RESIDUE ),
104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700105/* Deduced by Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
106 * Entry needed for flags: US_FL_FIX_INQUIRY because initial inquiry message
107 * always fails and confuses drive.
108 */
109UNUSUAL_DEV( 0x0411, 0x001c, 0x0113, 0x0113,
110 "Buffalo",
111 "DUB-P40G HDD",
112 US_SC_DEVICE, US_PR_DEVICE, NULL,
113 US_FL_FIX_INQUIRY ),
114
Alan Stern1d614a42006-02-13 10:15:22 -0500115/* Reported by Christian Leber <christian@leber.de> */
116UNUSUAL_DEV( 0x0419, 0xaaf5, 0x0100, 0x0100,
117 "TrekStor",
118 "i.Beat 115 2.0",
119 US_SC_DEVICE, US_PR_DEVICE, NULL,
120 US_FL_IGNORE_RESIDUE | US_FL_NOT_LOCKABLE ),
121
Phil Dibowitze4a16e02005-09-30 00:20:15 -0700122/* Reported by Stefan Werner <dustbln@gmx.de> */
123UNUSUAL_DEV( 0x0419, 0xaaf6, 0x0100, 0x0100,
124 "TrekStor",
125 "i.Beat Joy 2.0",
126 US_SC_DEVICE, US_PR_DEVICE, NULL,
127 US_FL_IGNORE_RESIDUE ),
128
Pete Zaitcev23b78852006-03-05 21:45:44 -0800129/* Reported by Pete Zaitcev <zaitcev@redhat.com>, bz#176584 */
130UNUSUAL_DEV( 0x0420, 0x0001, 0x0100, 0x0100,
131 "GENERIC", "MP3 PLAYER", /* MyMusix PD-205 on the outside. */
132 US_SC_DEVICE, US_PR_DEVICE, NULL,
133 US_FL_IGNORE_RESIDUE ),
134
Alan Sternd5681fe2006-06-13 09:59:32 -0400135/* Reported by Jiri Slaby <jirislaby@gmail.com> and
136 * Rene C. Castberg <Rene@Castberg.org> */
137UNUSUAL_DEV( 0x0421, 0x0446, 0x0100, 0x0100,
138 "Nokia",
139 "N80",
140 US_SC_DEVICE, US_PR_DEVICE, NULL,
141 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
142
Phil Dibowitz1ea640c2005-08-29 22:38:28 -0700143/* Reported by Olaf Hering <olh@suse.de> from novell bug #105878 */
144UNUSUAL_DEV( 0x0424, 0x0fdc, 0x0210, 0x0210,
145 "SMSC",
146 "FDC GOLD-2.30",
147 US_SC_DEVICE, US_PR_DEVICE, NULL,
148 US_FL_SINGLE_LUN ),
149
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150#ifdef CONFIG_USB_STORAGE_DPCM
151UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100,
152 "Microtech",
153 "CameraMate (DPCM_USB)",
154 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ),
155#endif
156
Phil Dibowitz16f05be2006-02-13 15:59:42 -0800157/* Patch submitted by Daniel Drake <dsd@gentoo.org>
158 * Device reports nonsense bInterfaceProtocol 6 when connected over USB2 */
159UNUSUAL_DEV( 0x0451, 0x5416, 0x0100, 0x0100,
160 "Neuros Audio",
161 "USB 2.0 HD 2.5",
162 US_SC_DEVICE, US_PR_BULK, NULL,
163 US_FL_NEED_OVERRIDE ),
164
Pete Zaitcev490dce12005-08-23 07:46:13 -0700165/*
166 * Pete Zaitcev <zaitcev@yahoo.com>, from Patrick C. F. Ernzer, bz#162559.
167 * The key does not actually break, but it returns zero sense which
168 * makes our SCSI stack to print confusing messages.
169 */
170UNUSUAL_DEV( 0x0457, 0x0150, 0x0100, 0x0100,
171 "USBest Technology", /* sold by Transcend */
172 "USB Mass Storage Device",
173 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
174
Phil Dibowitz16f05be2006-02-13 15:59:42 -0800175/*
176* Bohdan Linda <bohdan.linda@gmail.com>
177* 1GB USB sticks MyFlash High Speed. I have restricted
178* the revision to my model only
179*/
180UNUSUAL_DEV( 0x0457, 0x0151, 0x0100, 0x0100,
181 "USB 2.0",
182 "Flash Disk",
183 US_SC_DEVICE, US_PR_DEVICE, NULL,
184 US_FL_NOT_LOCKABLE ),
Daniel Drakee1c37b82005-08-31 16:38:41 +0100185
Matthew Dharmabb02fd2005-12-30 19:06:53 -0800186UNUSUAL_DEV( 0x045a, 0x5210, 0x0101, 0x0101,
187 "Rio",
188 "Rio Karma",
189 US_SC_SCSI, US_PR_BULK, rio_karma_init, 0),
190
Linus Torvalds1da177e2005-04-16 15:20:36 -0700191/* Patch submitted by Philipp Friedrich <philipp@void.at> */
192UNUSUAL_DEV( 0x0482, 0x0100, 0x0100, 0x0100,
193 "Kyocera",
194 "Finecam S3x",
195 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
196
197/* Patch submitted by Philipp Friedrich <philipp@void.at> */
198UNUSUAL_DEV( 0x0482, 0x0101, 0x0100, 0x0100,
199 "Kyocera",
200 "Finecam S4",
201 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
202
203/* Patch submitted by Stephane Galles <stephane.galles@free.fr> */
204UNUSUAL_DEV( 0x0482, 0x0103, 0x0100, 0x0100,
205 "Kyocera",
206 "Finecam S5",
207 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
208
209/* Patch for Kyocera Finecam L3
210 * Submitted by Michael Krauth <michael.krauth@web.de>
211 * and Alessandro Fracchetti <al.fracchetti@tin.it>
212 */
213UNUSUAL_DEV( 0x0482, 0x0105, 0x0100, 0x0100,
214 "Kyocera",
215 "Finecam L3",
216 US_SC_SCSI, US_PR_BULK, NULL,
217 US_FL_FIX_INQUIRY),
218
219/* Reported by Paul Stewart <stewart@wetlogic.net>
220 * This entry is needed because the device reports Sub=ff */
221UNUSUAL_DEV( 0x04a4, 0x0004, 0x0001, 0x0001,
222 "Hitachi",
223 "DVD-CAM DZ-MV100A Camcorder",
224 US_SC_SCSI, US_PR_CB, NULL, US_FL_SINGLE_LUN),
225
fabien COSSE17fa6e52005-11-30 01:16:00 -0800226/* Patch for Nikon coolpix 2000
227 * Submitted by Fabien Cosse <fabien.cosse@wanadoo.fr>*/
228UNUSUAL_DEV( 0x04b0, 0x0301, 0x0010, 0x0010,
229 "NIKON",
230 "NIKON DSC E2000",
231 US_SC_DEVICE, US_PR_DEVICE,NULL,
232 US_FL_NOT_LOCKABLE ),
233
Alan Sternae671812006-06-06 15:19:17 -0400234/* Reported by Andreas Bockhold <andreas@bockionline.de> */
235UNUSUAL_DEV( 0x04b0, 0x0405, 0x0100, 0x0100,
236 "NIKON",
237 "NIKON DSC D70",
238 US_SC_DEVICE, US_PR_DEVICE, NULL,
239 US_FL_FIX_CAPACITY),
240
241/* Reported by Jamie Kitson <jamie@staberinde.fsnet.co.uk> */
242UNUSUAL_DEV( 0x04b0, 0x040d, 0x0100, 0x0100,
243 "NIKON",
244 "NIKON DSC D70s",
245 US_SC_DEVICE, US_PR_DEVICE, NULL,
246 US_FL_FIX_CAPACITY),
247
Linus Torvalds1da177e2005-04-16 15:20:36 -0700248/* BENQ DC5330
249 * Reported by Manuel Fombuena <mfombuena@ya.com> and
250 * Frank Copeland <fjc@thingy.apana.org.au> */
251UNUSUAL_DEV( 0x04a5, 0x3010, 0x0100, 0x0100,
252 "Tekom Technologies, Inc",
253 "300_CAMERA",
254 US_SC_DEVICE, US_PR_DEVICE, NULL,
255 US_FL_IGNORE_RESIDUE ),
256
257/* Reported by Simon Levitt <simon@whattf.com>
258 * This entry needs Sub and Proto fields */
259UNUSUAL_DEV( 0x04b8, 0x0601, 0x0100, 0x0100,
260 "Epson",
261 "875DC Storage",
262 US_SC_SCSI, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
263
264/* Reported by Khalid Aziz <khalid@gonehiking.org>
265 * This entry is needed because the device reports Sub=ff */
266UNUSUAL_DEV( 0x04b8, 0x0602, 0x0110, 0x0110,
267 "Epson",
268 "785EPX Storage",
269 US_SC_SCSI, US_PR_BULK, NULL, US_FL_SINGLE_LUN),
270
271/* Not sure who reported this originally but
272 * Pavel Machek <pavel@ucw.cz> reported that the extra US_FL_SINGLE_LUN
273 * flag be added */
274UNUSUAL_DEV( 0x04cb, 0x0100, 0x0000, 0x2210,
275 "Fujifilm",
276 "FinePix 1400Zoom",
277 US_SC_UFI, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY | US_FL_SINGLE_LUN),
278
279/* Reported by Peter Wächtler <pwaechtler@loewe-komp.de>
280 * The device needs the flags only.
281 */
282UNUSUAL_DEV( 0x04ce, 0x0002, 0x0074, 0x0074,
283 "ScanLogic",
284 "SL11R-IDE",
285 US_SC_DEVICE, US_PR_DEVICE, NULL,
286 US_FL_FIX_INQUIRY),
287
288/* Reported by Kriston Fincher <kriston@airmail.net>
289 * Patch submitted by Sean Millichamp <sean@bruenor.org>
290 * This is to support the Panasonic PalmCam PV-SD4090
291 * This entry is needed because the device reports Sub=ff
292 */
293UNUSUAL_DEV( 0x04da, 0x0901, 0x0100, 0x0200,
294 "Panasonic",
295 "LS-120 Camera",
296 US_SC_UFI, US_PR_DEVICE, NULL, 0),
297
298/* From Yukihiro Nakai, via zaitcev@yahoo.com.
299 * This is needed for CB instead of CBI */
300UNUSUAL_DEV( 0x04da, 0x0d05, 0x0000, 0x0000,
301 "Sharp CE-CW05",
302 "CD-R/RW Drive",
303 US_SC_8070, US_PR_CB, NULL, 0),
304
305/* Reported by Adriaan Penning <a.penning@luon.net> */
306UNUSUAL_DEV( 0x04da, 0x2372, 0x0000, 0x9999,
307 "Panasonic",
308 "DMC-LCx Camera",
309 US_SC_DEVICE, US_PR_DEVICE, NULL,
310 US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ),
311
Simeon Simeonovdcab4ea2005-10-19 11:32:14 -0400312/* Reported by Simeon Simeonov <simeonov_2000@yahoo.com> */
313UNUSUAL_DEV( 0x04da, 0x2373, 0x0000, 0x9999,
314 "LEICA",
315 "D-LUX Camera",
316 US_SC_DEVICE, US_PR_DEVICE, NULL,
317 US_FL_FIX_CAPACITY | US_FL_NOT_LOCKABLE ),
318
Linus Torvalds1da177e2005-04-16 15:20:36 -0700319/* Most of the following entries were developed with the help of
320 * Shuttle/SCM directly.
321 */
322UNUSUAL_DEV( 0x04e6, 0x0001, 0x0200, 0x0200,
323 "Matshita",
324 "LS-120",
325 US_SC_8020, US_PR_CB, NULL, 0),
326
327UNUSUAL_DEV( 0x04e6, 0x0002, 0x0100, 0x0100,
328 "Shuttle",
329 "eUSCSI Bridge",
330 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init,
331 US_FL_SCM_MULT_TARG ),
332
333#ifdef CONFIG_USB_STORAGE_SDDR09
334UNUSUAL_DEV( 0x04e6, 0x0003, 0x0000, 0x9999,
335 "Sandisk",
336 "ImageMate SDDR09",
Matthew Dharmf5b8cb92005-12-04 21:57:51 -0800337 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
338 0),
Linus Torvalds1da177e2005-04-16 15:20:36 -0700339
340/* This entry is from Andries.Brouwer@cwi.nl */
341UNUSUAL_DEV( 0x04e6, 0x0005, 0x0100, 0x0208,
342 "SCM Microsystems",
343 "eUSB SmartMedia / CompactFlash Adapter",
Matthew Dharmf5b8cb92005-12-04 21:57:51 -0800344 US_SC_SCSI, US_PR_DPCM_USB, usb_stor_sddr09_dpcm_init,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700345 0),
346#endif
347
348/* Reported by Markus Demleitner <msdemlei@cl.uni-heidelberg.de> */
349UNUSUAL_DEV( 0x04e6, 0x0006, 0x0100, 0x0100,
350 "SCM Microsystems Inc.",
351 "eUSB MMC Adapter",
352 US_SC_SCSI, US_PR_CB, NULL,
353 US_FL_SINGLE_LUN),
354
355/* Reported by Daniel Nouri <dpunktnpunkt@web.de> */
356UNUSUAL_DEV( 0x04e6, 0x0006, 0x0205, 0x0205,
357 "Shuttle",
358 "eUSB MMC Adapter",
359 US_SC_SCSI, US_PR_DEVICE, NULL,
360 US_FL_SINGLE_LUN),
361
362UNUSUAL_DEV( 0x04e6, 0x0007, 0x0100, 0x0200,
363 "Sony",
364 "Hifd",
365 US_SC_SCSI, US_PR_CB, NULL,
366 US_FL_SINGLE_LUN),
367
368UNUSUAL_DEV( 0x04e6, 0x0009, 0x0200, 0x0200,
369 "Shuttle",
370 "eUSB ATA/ATAPI Adapter",
371 US_SC_8020, US_PR_CB, NULL, 0),
372
373UNUSUAL_DEV( 0x04e6, 0x000a, 0x0200, 0x0200,
374 "Shuttle",
375 "eUSB CompactFlash Adapter",
376 US_SC_8020, US_PR_CB, NULL, 0),
377
378UNUSUAL_DEV( 0x04e6, 0x000B, 0x0100, 0x0100,
379 "Shuttle",
380 "eUSCSI Bridge",
381 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init,
382 US_FL_SCM_MULT_TARG ),
383
384UNUSUAL_DEV( 0x04e6, 0x000C, 0x0100, 0x0100,
385 "Shuttle",
386 "eUSCSI Bridge",
387 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init,
388 US_FL_SCM_MULT_TARG ),
389
390UNUSUAL_DEV( 0x04e6, 0x0101, 0x0200, 0x0200,
391 "Shuttle",
392 "CD-RW Device",
393 US_SC_8020, US_PR_CB, NULL, 0),
394
395/* Entry and supporting patch by Theodore Kilgore <kilgota@auburn.edu>.
396 * Device uses standards-violating 32-byte Bulk Command Block Wrappers and
397 * reports itself as "Proprietary SCSI Bulk." Cf. device entry 0x084d:0x0011.
398 */
399
400UNUSUAL_DEV( 0x04fc, 0x80c2, 0x0100, 0x0100,
401 "Kobian Mercury",
402 "Binocam DCB-132",
403 US_SC_DEVICE, US_PR_DEVICE, NULL,
404 US_FL_BULK32),
405
406#ifdef CONFIG_USB_STORAGE_USBAT
407UNUSUAL_DEV( 0x04e6, 0x1010, 0x0000, 0x9999,
Daniel Drakeb7b1e652005-09-30 12:49:36 +0100408 "Shuttle/SCM",
409 "USBAT-02",
Daniel Drakef9347c52006-05-08 23:43:02 +0100410 US_SC_SCSI, US_PR_USBAT, init_usbat_flash,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700411 US_FL_SINGLE_LUN),
412#endif
413
414/* Reported by Bob Sass <rls@vectordb.com> -- only rev 1.33 tested */
415UNUSUAL_DEV( 0x050d, 0x0115, 0x0133, 0x0133,
416 "Belkin",
417 "USB SCSI Adaptor",
418 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init,
419 US_FL_SCM_MULT_TARG ),
420
421/* Iomega Clik! Drive
422 * Reported by David Chatenay <dchatenay@hotmail.com>
423 * The reason this is needed is not fully known.
424 */
425UNUSUAL_DEV( 0x0525, 0xa140, 0x0100, 0x0100,
426 "Iomega",
427 "USB Clik! 40",
Phil Dibowitz21206382006-04-16 19:18:36 -0700428 US_SC_8070, US_PR_DEVICE, NULL,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700429 US_FL_FIX_INQUIRY ),
430
431/* Yakumo Mega Image 37
432 * Submitted by Stephan Fuhrmann <atomenergie@t-online.de> */
433UNUSUAL_DEV( 0x052b, 0x1801, 0x0100, 0x0100,
434 "Tekom Technologies, Inc",
435 "300_CAMERA",
436 US_SC_DEVICE, US_PR_DEVICE, NULL,
437 US_FL_IGNORE_RESIDUE ),
438
439/* Another Yakumo camera.
440 * Reported by Michele Alzetta <michele.alzetta@aliceposta.it> */
441UNUSUAL_DEV( 0x052b, 0x1804, 0x0100, 0x0100,
442 "Tekom Technologies, Inc",
443 "300_CAMERA",
444 US_SC_DEVICE, US_PR_DEVICE, NULL,
445 US_FL_IGNORE_RESIDUE ),
446
447/* Reported by Iacopo Spalletti <avvisi@spalletti.it> */
448UNUSUAL_DEV( 0x052b, 0x1807, 0x0100, 0x0100,
449 "Tekom Technologies, Inc",
450 "300_CAMERA",
451 US_SC_DEVICE, US_PR_DEVICE, NULL,
452 US_FL_IGNORE_RESIDUE ),
453
454/* Yakumo Mega Image 47
455 * Reported by Bjoern Paetzel <kolrabi@kolrabi.de> */
456UNUSUAL_DEV( 0x052b, 0x1905, 0x0100, 0x0100,
457 "Tekom Technologies, Inc",
458 "400_CAMERA",
459 US_SC_DEVICE, US_PR_DEVICE, NULL,
460 US_FL_IGNORE_RESIDUE ),
461
462/* Reported by Paul Ortyl <ortylp@3miasto.net>
463 * Note that it's similar to the device above, only different prodID */
464UNUSUAL_DEV( 0x052b, 0x1911, 0x0100, 0x0100,
465 "Tekom Technologies, Inc",
466 "400_CAMERA",
467 US_SC_DEVICE, US_PR_DEVICE, NULL,
468 US_FL_IGNORE_RESIDUE ),
469
470UNUSUAL_DEV( 0x054c, 0x0010, 0x0106, 0x0450,
471 "Sony",
472 "DSC-S30/S70/S75/505V/F505/F707/F717/P8",
473 US_SC_SCSI, US_PR_DEVICE, NULL,
474 US_FL_SINGLE_LUN | US_FL_NOT_LOCKABLE | US_FL_NO_WP_DETECT ),
475
476/* This entry is needed because the device reports Sub=ff */
Alexandre Duret-Lutzec7dc8d2005-12-26 23:04:24 -0800477UNUSUAL_DEV( 0x054c, 0x0010, 0x0500, 0x0600,
478 "Sony",
479 "DSC-T1/T5",
480 US_SC_8070, US_PR_DEVICE, NULL,
481 US_FL_SINGLE_LUN ),
Linus Torvalds1da177e2005-04-16 15:20:36 -0700482
483
484/* Reported by wim@geeks.nl */
485UNUSUAL_DEV( 0x054c, 0x0025, 0x0100, 0x0100,
486 "Sony",
487 "Memorystick NW-MS7",
488 US_SC_DEVICE, US_PR_DEVICE, NULL,
489 US_FL_SINGLE_LUN ),
490
491#ifdef CONFIG_USB_STORAGE_ISD200
492UNUSUAL_DEV( 0x054c, 0x002b, 0x0100, 0x0110,
493 "Sony",
494 "Portable USB Harddrive V2",
495 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
496 0 ),
497#endif
498
499/* Submitted by Olaf Hering, <olh@suse.de> SuSE Bugzilla #49049 */
500UNUSUAL_DEV( 0x054c, 0x002c, 0x0501, 0x0501,
501 "Sony",
502 "USB Floppy Drive",
503 US_SC_DEVICE, US_PR_DEVICE, NULL,
504 US_FL_SINGLE_LUN ),
505
506UNUSUAL_DEV( 0x054c, 0x002d, 0x0100, 0x0100,
507 "Sony",
508 "Memorystick MSAC-US1",
509 US_SC_DEVICE, US_PR_DEVICE, NULL,
510 US_FL_SINGLE_LUN ),
511
512/* Submitted by Klaus Mueller <k.mueller@intershop.de> */
513UNUSUAL_DEV( 0x054c, 0x002e, 0x0106, 0x0310,
514 "Sony",
515 "Handycam",
516 US_SC_SCSI, US_PR_DEVICE, NULL,
517 US_FL_SINGLE_LUN ),
518
519/* Submitted by Rajesh Kumble Nayak <nayak@obs-nice.fr> */
520UNUSUAL_DEV( 0x054c, 0x002e, 0x0500, 0x0500,
521 "Sony",
522 "Handycam HC-85",
523 US_SC_UFI, US_PR_DEVICE, NULL,
524 US_FL_SINGLE_LUN ),
525
526UNUSUAL_DEV( 0x054c, 0x0032, 0x0000, 0x9999,
527 "Sony",
528 "Memorystick MSC-U01N",
529 US_SC_DEVICE, US_PR_DEVICE, NULL,
530 US_FL_SINGLE_LUN ),
531
532/* Submitted by Michal Mlotek <mlotek@foobar.pl> */
533UNUSUAL_DEV( 0x054c, 0x0058, 0x0000, 0x9999,
534 "Sony",
535 "PEG N760c Memorystick",
536 US_SC_DEVICE, US_PR_DEVICE, NULL,
537 US_FL_FIX_INQUIRY ),
538
539UNUSUAL_DEV( 0x054c, 0x0069, 0x0000, 0x9999,
540 "Sony",
541 "Memorystick MSC-U03",
542 US_SC_UFI, US_PR_CB, NULL,
543 US_FL_SINGLE_LUN ),
544
545/* Submitted by Nathan Babb <nathan@lexi.com> */
546UNUSUAL_DEV( 0x054c, 0x006d, 0x0000, 0x9999,
547 "Sony",
548 "PEG Mass Storage",
549 US_SC_DEVICE, US_PR_DEVICE, NULL,
550 US_FL_FIX_INQUIRY ),
551
552/* Submitted by Mike Alborn <malborn@deandra.homeip.net> */
553UNUSUAL_DEV( 0x054c, 0x016a, 0x0000, 0x9999,
554 "Sony",
555 "PEG Mass Storage",
556 US_SC_DEVICE, US_PR_DEVICE, NULL,
557 US_FL_FIX_INQUIRY ),
558
559/* Submitted by Frank Engel <frankie@cse.unsw.edu.au> */
560UNUSUAL_DEV( 0x054c, 0x0099, 0x0000, 0x9999,
561 "Sony",
562 "PEG Mass Storage",
563 US_SC_DEVICE, US_PR_DEVICE, NULL,
564 US_FL_FIX_INQUIRY ),
565
566
567UNUSUAL_DEV( 0x057b, 0x0000, 0x0000, 0x0299,
568 "Y-E Data",
569 "Flashbuster-U",
570 US_SC_DEVICE, US_PR_CB, NULL,
571 US_FL_SINGLE_LUN),
572
573UNUSUAL_DEV( 0x057b, 0x0000, 0x0300, 0x9999,
574 "Y-E Data",
575 "Flashbuster-U",
576 US_SC_DEVICE, US_PR_DEVICE, NULL,
577 US_FL_SINGLE_LUN),
578
579/* Reported by Johann Cardon <johann.cardon@free.fr>
580 * This entry is needed only because the device reports
581 * bInterfaceClass = 0xff (vendor-specific)
582 */
583UNUSUAL_DEV( 0x057b, 0x0022, 0x0000, 0x9999,
584 "Y-E Data",
585 "Silicon Media R/W",
586 US_SC_DEVICE, US_PR_DEVICE, NULL, 0),
587
Matthew Dharme80b0fa2005-12-04 22:02:44 -0800588#ifdef CONFIG_USB_STORAGE_ALAUDA
589UNUSUAL_DEV( 0x0584, 0x0008, 0x0102, 0x0102,
590 "Fujifilm",
591 "DPC-R1 (Alauda)",
592 US_SC_SCSI, US_PR_ALAUDA, init_alauda, 0 ),
593#endif
594
Linus Torvalds1da177e2005-04-16 15:20:36 -0700595/* Fabrizio Fellini <fello@libero.it> */
596UNUSUAL_DEV( 0x0595, 0x4343, 0x0000, 0x2210,
597 "Fujifilm",
598 "Digital Camera EX-20 DSC",
599 US_SC_8070, US_PR_DEVICE, NULL, 0 ),
600
601/* The entry was here before I took over, and had US_SC_RBC. It turns
602 * out that isn't needed. Additionally, Torsten Eriksson
603 * <Torsten.Eriksson@bergianska.se> is able to use his device fine
604 * without this entry at all - but I don't suspect that will be true
605 * for all users (the protocol is likely needed), so is staying at
606 * this time. - Phil Dibowitz <phil@ipom.com>
607 */
608UNUSUAL_DEV( 0x059f, 0xa601, 0x0200, 0x0200,
609 "LaCie",
610 "USB Hard Disk",
611 US_SC_DEVICE, US_PR_CB, NULL, 0 ),
612
613/* Submitted by Joel Bourquard <numlock@freesurf.ch>
614 * Some versions of this device need the SubClass and Protocol overrides
615 * while others don't.
616 */
617UNUSUAL_DEV( 0x05ab, 0x0060, 0x1104, 0x1110,
618 "In-System",
619 "PyroGate External CD-ROM Enclosure (FCD-523)",
620 US_SC_SCSI, US_PR_BULK, NULL,
621 US_FL_NEED_OVERRIDE ),
622
623#ifdef CONFIG_USB_STORAGE_ISD200
624UNUSUAL_DEV( 0x05ab, 0x0031, 0x0100, 0x0110,
625 "In-System",
626 "USB/IDE Bridge (ATA/ATAPI)",
627 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
628 0 ),
629
630UNUSUAL_DEV( 0x05ab, 0x0301, 0x0100, 0x0110,
631 "In-System",
632 "Portable USB Harddrive V2",
633 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
634 0 ),
635
636UNUSUAL_DEV( 0x05ab, 0x0351, 0x0100, 0x0110,
637 "In-System",
638 "Portable USB Harddrive V2",
639 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
640 0 ),
641
642UNUSUAL_DEV( 0x05ab, 0x5701, 0x0100, 0x0110,
643 "In-System",
644 "USB Storage Adapter V2",
645 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
646 0 ),
647#endif
648
Sven Anderson35f4a0c2005-04-22 15:06:58 -0700649/* Submitted by Sven Anderson <sven-linux@anderson.de>
650 * There are at least four ProductIDs used for iPods, so I added 0x1202 and
651 * 0x1204. They just need the US_FL_FIX_CAPACITY. As the bcdDevice appears
652 * to change with firmware updates, I changed the range to maximum for all
653 * iPod entries.
654 */
655UNUSUAL_DEV( 0x05ac, 0x1202, 0x0000, 0x9999,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700656 "Apple",
657 "iPod",
658 US_SC_DEVICE, US_PR_DEVICE, NULL,
659 US_FL_FIX_CAPACITY ),
660
Sven Anderson35f4a0c2005-04-22 15:06:58 -0700661/* Reported by Avi Kivity <avi@argo.co.il> */
662UNUSUAL_DEV( 0x05ac, 0x1203, 0x0000, 0x9999,
663 "Apple",
664 "iPod",
665 US_SC_DEVICE, US_PR_DEVICE, NULL,
666 US_FL_FIX_CAPACITY ),
667
668UNUSUAL_DEV( 0x05ac, 0x1204, 0x0000, 0x9999,
669 "Apple",
670 "iPod",
671 US_SC_DEVICE, US_PR_DEVICE, NULL,
672 US_FL_FIX_CAPACITY ),
673
674UNUSUAL_DEV( 0x05ac, 0x1205, 0x0000, 0x9999,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700675 "Apple",
676 "iPod",
677 US_SC_DEVICE, US_PR_DEVICE, NULL,
678 US_FL_FIX_CAPACITY ),
679
Phil Dibowitz880a9b52005-09-30 00:27:36 -0700680/*
681 * Reported by Tyson Vinson <lornoss@gmail.com>
682 * This particular productId is the iPod Nano
683 */
684UNUSUAL_DEV( 0x05ac, 0x120a, 0x0000, 0x9999,
685 "Apple",
686 "iPod",
687 US_SC_DEVICE, US_PR_DEVICE, NULL,
688 US_FL_FIX_CAPACITY ),
689
Linus Torvalds1da177e2005-04-16 15:20:36 -0700690#ifdef CONFIG_USB_STORAGE_JUMPSHOT
691UNUSUAL_DEV( 0x05dc, 0x0001, 0x0000, 0x0001,
692 "Lexar",
693 "Jumpshot USB CF Reader",
694 US_SC_SCSI, US_PR_JUMPSHOT, NULL,
695 US_FL_NEED_OVERRIDE ),
696#endif
697
698/* Reported by Blake Matheny <bmatheny@purdue.edu> */
699UNUSUAL_DEV( 0x05dc, 0xb002, 0x0000, 0x0113,
700 "Lexar",
701 "USB CF Reader",
702 US_SC_DEVICE, US_PR_DEVICE, NULL,
703 US_FL_FIX_INQUIRY ),
704
705/* The following two entries are for a Genesys USB to IDE
706 * converter chip, but it changes its ProductId depending
707 * on whether or not a disk or an optical device is enclosed
708 * They were originally reported by Alexander Oltu
709 * <alexander@all-2.com> and Peter Marks <peter.marks@turner.com>
710 * respectively.
711 */
712UNUSUAL_DEV( 0x05e3, 0x0701, 0x0000, 0xffff,
713 "Genesys Logic",
714 "USB to IDE Optical",
715 US_SC_DEVICE, US_PR_DEVICE, NULL,
716 US_FL_GO_SLOW ),
717
718UNUSUAL_DEV( 0x05e3, 0x0702, 0x0000, 0xffff,
719 "Genesys Logic",
720 "USB to IDE Disk",
721 US_SC_DEVICE, US_PR_DEVICE, NULL,
722 US_FL_GO_SLOW ),
723
724/* Reported by Hanno Boeck <hanno@gmx.de>
725 * Taken from the Lycoris Kernel */
726UNUSUAL_DEV( 0x0636, 0x0003, 0x0000, 0x9999,
727 "Vivitar",
728 "Vivicam 35Xx",
729 US_SC_SCSI, US_PR_BULK, NULL,
730 US_FL_FIX_INQUIRY ),
731
732UNUSUAL_DEV( 0x0644, 0x0000, 0x0100, 0x0100,
733 "TEAC",
734 "Floppy Drive",
735 US_SC_UFI, US_PR_CB, NULL, 0 ),
736
737#ifdef CONFIG_USB_STORAGE_SDDR09
738UNUSUAL_DEV( 0x066b, 0x0105, 0x0100, 0x0100,
739 "Olympus",
740 "Camedia MAUSB-2",
Matthew Dharmf5b8cb92005-12-04 21:57:51 -0800741 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
742 0),
Linus Torvalds1da177e2005-04-16 15:20:36 -0700743#endif
744
745/* Reported by Darsen Lu <darsen@micro.ee.nthu.edu.tw> */
746UNUSUAL_DEV( 0x066f, 0x8000, 0x0001, 0x0001,
747 "SigmaTel",
748 "USBMSC Audio Player",
749 US_SC_DEVICE, US_PR_DEVICE, NULL,
750 US_FL_FIX_CAPACITY ),
751
752/* Reported by Richard -=[]=- <micro_flyer@hotmail.com> */
753UNUSUAL_DEV( 0x067b, 0x2507, 0x0100, 0x0100,
754 "Prolific Technology Inc.",
755 "Mass Storage Device",
756 US_SC_DEVICE, US_PR_DEVICE, NULL,
757 US_FL_FIX_CAPACITY | US_FL_GO_SLOW ),
758
759/* Reported by Alex Butcher <alex.butcher@assursys.co.uk> */
760UNUSUAL_DEV( 0x067b, 0x3507, 0x0001, 0x0001,
761 "Prolific Technology Inc.",
762 "ATAPI-6 Bridge Controller",
763 US_SC_DEVICE, US_PR_DEVICE, NULL,
764 US_FL_FIX_CAPACITY | US_FL_GO_SLOW ),
765
766/* Submitted by Benny Sjostrand <benny@hostmobility.com> */
767UNUSUAL_DEV( 0x0686, 0x4011, 0x0001, 0x0001,
768 "Minolta",
769 "Dimage F300",
770 US_SC_SCSI, US_PR_BULK, NULL, 0 ),
771
772/* Reported by Miguel A. Fosas <amn3s1a@ono.com> */
773UNUSUAL_DEV( 0x0686, 0x4017, 0x0001, 0x0001,
774 "Minolta",
775 "DIMAGE E223",
776 US_SC_SCSI, US_PR_DEVICE, NULL, 0 ),
777
Linus Torvalds1da177e2005-04-16 15:20:36 -0700778UNUSUAL_DEV( 0x0693, 0x0005, 0x0100, 0x0100,
779 "Hagiwara",
780 "Flashgate",
781 US_SC_SCSI, US_PR_BULK, NULL, 0 ),
782
Alan Stern754501b2006-02-23 10:19:25 -0500783/* Reported by David Hamilton <niftimusmaximus@lycos.com> */
784UNUSUAL_DEV( 0x069b, 0x3004, 0x0001, 0x0001,
785 "Thomson Multimedia Inc.",
786 "RCA RD1080 MP3 Player",
787 US_SC_DEVICE, US_PR_DEVICE, NULL,
788 US_FL_FIX_CAPACITY ),
789
Olivier Blondeauf430c402006-04-16 19:19:25 -0700790/* Reported by Olivier Blondeau <zeitoun@gmail.com> */
791UNUSUAL_DEV( 0x0727, 0x0306, 0x0100, 0x0100,
792 "ATMEL",
793 "SND1 Storage",
794 US_SC_DEVICE, US_PR_DEVICE, NULL,
795 US_FL_IGNORE_RESIDUE),
796
Phil Dibowitz1e7a5a82006-03-05 21:36:51 -0800797/* Submitted by Roman Hodek <roman@hodek.net> */
798UNUSUAL_DEV( 0x0781, 0x0001, 0x0200, 0x0200,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700799 "Sandisk",
800 "ImageMate SDDR-05a",
801 US_SC_SCSI, US_PR_CB, NULL,
802 US_FL_SINGLE_LUN ),
803
Phil Dibowitz1e7a5a82006-03-05 21:36:51 -0800804UNUSUAL_DEV( 0x0781, 0x0002, 0x0009, 0x0009,
805 "SanDisk Corporation",
806 "ImageMate CompactFlash USB",
807 US_SC_DEVICE, US_PR_DEVICE, NULL,
808 US_FL_FIX_CAPACITY ),
809
Daniel Drake094ec602005-09-30 12:58:13 +0100810#ifdef CONFIG_USB_STORAGE_USBAT
811UNUSUAL_DEV( 0x0781, 0x0005, 0x0005, 0x0005,
812 "Sandisk",
813 "ImageMate SDDR-05b",
Peter Chubbbdcfd9e2006-05-02 18:29:34 +0100814 US_SC_SCSI, US_PR_USBAT, init_usbat_flash,
Daniel Drake094ec602005-09-30 12:58:13 +0100815 US_FL_SINGLE_LUN ),
816#endif
817
Linus Torvalds1da177e2005-04-16 15:20:36 -0700818UNUSUAL_DEV( 0x0781, 0x0100, 0x0100, 0x0100,
819 "Sandisk",
820 "ImageMate SDDR-12",
821 US_SC_SCSI, US_PR_CB, NULL,
822 US_FL_SINGLE_LUN ),
823
824#ifdef CONFIG_USB_STORAGE_SDDR09
825UNUSUAL_DEV( 0x0781, 0x0200, 0x0000, 0x9999,
826 "Sandisk",
827 "ImageMate SDDR-09",
Matthew Dharmf5b8cb92005-12-04 21:57:51 -0800828 US_SC_SCSI, US_PR_EUSB_SDDR09, usb_stor_sddr09_init,
829 0),
Linus Torvalds1da177e2005-04-16 15:20:36 -0700830#endif
831
832#ifdef CONFIG_USB_STORAGE_FREECOM
833UNUSUAL_DEV( 0x07ab, 0xfc01, 0x0000, 0x9999,
834 "Freecom",
835 "USB-IDE",
836 US_SC_QIC, US_PR_FREECOM, freecom_init, 0),
837#endif
838
839/* Reported by Eero Volotinen <eero@ping-viini.org> */
Phil Dibowitze5278322005-10-23 23:52:39 -0700840UNUSUAL_DEV( 0x07ab, 0xfccd, 0x0000, 0x9999,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700841 "Freecom Technologies",
842 "FHD-Classic",
843 US_SC_DEVICE, US_PR_DEVICE, NULL,
844 US_FL_FIX_CAPACITY),
845
846UNUSUAL_DEV( 0x07af, 0x0004, 0x0100, 0x0133,
847 "Microtech",
848 "USB-SCSI-DB25",
849 US_SC_SCSI, US_PR_BULK, usb_stor_euscsi_init,
850 US_FL_SCM_MULT_TARG ),
851
852UNUSUAL_DEV( 0x07af, 0x0005, 0x0100, 0x0100,
853 "Microtech",
854 "USB-SCSI-HD50",
Phil Dibowitze8116e82005-06-22 22:47:13 -0700855 US_SC_DEVICE, US_PR_DEVICE, usb_stor_euscsi_init,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700856 US_FL_SCM_MULT_TARG ),
857
858#ifdef CONFIG_USB_STORAGE_DPCM
859UNUSUAL_DEV( 0x07af, 0x0006, 0x0100, 0x0100,
860 "Microtech",
861 "CameraMate (DPCM_USB)",
862 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ),
863#endif
864
Matthew Dharme80b0fa2005-12-04 22:02:44 -0800865#ifdef CONFIG_USB_STORAGE_ALAUDA
866UNUSUAL_DEV( 0x07b4, 0x010a, 0x0102, 0x0102,
867 "Olympus",
868 "MAUSB-10 (Alauda)",
869 US_SC_SCSI, US_PR_ALAUDA, init_alauda, 0 ),
870#endif
871
Linus Torvalds1da177e2005-04-16 15:20:36 -0700872#ifdef CONFIG_USB_STORAGE_DATAFAB
873UNUSUAL_DEV( 0x07c4, 0xa000, 0x0000, 0x0015,
874 "Datafab",
875 "MDCFE-B USB CF Reader",
876 US_SC_SCSI, US_PR_DATAFAB, NULL,
877 0 ),
878
879/*
880 * The following Datafab-based devices may or may not work
881 * using the current driver...the 0xffff is arbitrary since I
882 * don't know what device versions exist for these guys.
883 *
884 * The 0xa003 and 0xa004 devices in particular I'm curious about.
885 * I'm told they exist but so far nobody has come forward to say that
886 * they work with this driver. Given the success we've had getting
887 * other Datafab-based cards operational with this driver, I've decided
888 * to leave these two devices in the list.
889 */
890UNUSUAL_DEV( 0x07c4, 0xa001, 0x0000, 0xffff,
891 "SIIG/Datafab",
892 "SIIG/Datafab Memory Stick+CF Reader/Writer",
893 US_SC_SCSI, US_PR_DATAFAB, NULL,
894 0 ),
895
896/* Reported by Josef Reisinger <josef.reisinger@netcologne.de> */
897UNUSUAL_DEV( 0x07c4, 0xa002, 0x0000, 0xffff,
898 "Datafab/Unknown",
899 "MD2/MD3 Disk enclosure",
900 US_SC_SCSI, US_PR_DATAFAB, NULL,
901 US_FL_SINGLE_LUN ),
902
903UNUSUAL_DEV( 0x07c4, 0xa003, 0x0000, 0xffff,
904 "Datafab/Unknown",
905 "Datafab-based Reader",
906 US_SC_SCSI, US_PR_DATAFAB, NULL,
907 0 ),
908
909UNUSUAL_DEV( 0x07c4, 0xa004, 0x0000, 0xffff,
910 "Datafab/Unknown",
911 "Datafab-based Reader",
912 US_SC_SCSI, US_PR_DATAFAB, NULL,
913 0 ),
914
915UNUSUAL_DEV( 0x07c4, 0xa005, 0x0000, 0xffff,
916 "PNY/Datafab",
917 "PNY/Datafab CF+SM Reader",
918 US_SC_SCSI, US_PR_DATAFAB, NULL,
919 0 ),
920
921UNUSUAL_DEV( 0x07c4, 0xa006, 0x0000, 0xffff,
922 "Simple Tech/Datafab",
923 "Simple Tech/Datafab CF+SM Reader",
924 US_SC_SCSI, US_PR_DATAFAB, NULL,
925 0 ),
926#endif
927
928#ifdef CONFIG_USB_STORAGE_SDDR55
929/* Contributed by Peter Waechtler */
930UNUSUAL_DEV( 0x07c4, 0xa103, 0x0000, 0x9999,
931 "Datafab",
932 "MDSM-B reader",
933 US_SC_SCSI, US_PR_SDDR55, NULL,
934 US_FL_FIX_INQUIRY ),
935#endif
936
937#ifdef CONFIG_USB_STORAGE_DATAFAB
938/* Submitted by Olaf Hering <olh@suse.de> */
939UNUSUAL_DEV( 0x07c4, 0xa109, 0x0000, 0xffff,
940 "Datafab Systems, Inc.",
941 "USB to CF + SM Combo (LC1)",
942 US_SC_SCSI, US_PR_DATAFAB, NULL,
943 0 ),
944#endif
945#ifdef CONFIG_USB_STORAGE_SDDR55
946/* SM part - aeb <Andries.Brouwer@cwi.nl> */
947UNUSUAL_DEV( 0x07c4, 0xa109, 0x0000, 0xffff,
948 "Datafab Systems, Inc.",
949 "USB to CF + SM Combo (LC1)",
950 US_SC_SCSI, US_PR_SDDR55, NULL,
951 US_FL_SINGLE_LUN ),
952#endif
953
felix@derklecks.ded6427cf2005-04-18 17:39:28 -0700954#ifdef CONFIG_USB_STORAGE_DATAFAB
955/* Reported by Felix Moeller <felix@derklecks.de>
956 * in Germany this is sold by Hama with the productnumber 46952
957 * as "DualSlot CompactFlash(TM) & MStick Drive USB"
958 */
959UNUSUAL_DEV( 0x07c4, 0xa10b, 0x0000, 0xffff,
960 "DataFab Systems Inc.",
961 "USB CF+MS",
962 US_SC_SCSI, US_PR_DATAFAB, NULL,
963 0 ),
964
965#endif
966
Linus Torvalds1da177e2005-04-16 15:20:36 -0700967/* Datafab KECF-USB / Sagatek DCS-CF / Simpletech Flashlink UCF-100
968 * Only revision 1.13 tested (same for all of the above devices,
969 * based on the Datafab DF-UG-07 chip). Needed for US_FL_FIX_INQUIRY.
970 * Submitted by Marek Michalkiewicz <marekm@amelek.gda.pl>.
971 * See also http://martin.wilck.bei.t-online.de/#kecf .
972 */
973UNUSUAL_DEV( 0x07c4, 0xa400, 0x0000, 0xffff,
974 "Datafab",
975 "KECF-USB",
976 US_SC_DEVICE, US_PR_DEVICE, NULL,
977 US_FL_FIX_INQUIRY ),
978
979/* Casio QV 2x00/3x00/4000/8000 digital still cameras are not conformant
980 * to the USB storage specification in two ways:
981 * - They tell us they are using transport protocol CBI. In reality they
982 * are using transport protocol CB.
983 * - They don't like the INQUIRY command. So we must handle this command
984 * of the SCSI layer ourselves.
985 * - Some cameras with idProduct=0x1001 and bcdDevice=0x1000 have
986 * bInterfaceProtocol=0x00 (US_PR_CBI) while others have 0x01 (US_PR_CB).
987 * So don't remove the US_PR_CB override!
988 * - Cameras with bcdDevice=0x9009 require the US_SC_8070 override.
989 */
990UNUSUAL_DEV( 0x07cf, 0x1001, 0x1000, 0x9999,
991 "Casio",
992 "QV DigitalCamera",
993 US_SC_8070, US_PR_CB, NULL,
994 US_FL_NEED_OVERRIDE | US_FL_FIX_INQUIRY ),
995
996/* Submitted by Hartmut Wahl <hwahl@hwahl.de>*/
997UNUSUAL_DEV( 0x0839, 0x000a, 0x0001, 0x0001,
998 "Samsung",
999 "Digimax 410",
1000 US_SC_DEVICE, US_PR_DEVICE, NULL,
1001 US_FL_FIX_INQUIRY),
1002
1003/* Entry and supporting patch by Theodore Kilgore <kilgota@auburn.edu>.
1004 * Flag will support Bulk devices which use a standards-violating 32-byte
1005 * Command Block Wrapper. Here, the "DC2MEGA" cameras (several brands) with
1006 * Grandtech GT892x chip, which request "Proprietary SCSI Bulk" support.
1007 */
1008
1009UNUSUAL_DEV( 0x084d, 0x0011, 0x0110, 0x0110,
1010 "Grandtech",
1011 "DC2MEGA",
1012 US_SC_DEVICE, US_PR_DEVICE, NULL,
1013 US_FL_BULK32),
1014
Alan Sternba3e93a2006-01-30 10:19:43 -05001015/* Submitted by Jan De Luyck <lkml@kcore.org> */
1016UNUSUAL_DEV( 0x08bd, 0x1100, 0x0000, 0x0000,
1017 "CITIZEN",
1018 "X1DE-USB",
1019 US_SC_DEVICE, US_PR_DEVICE, NULL,
1020 US_FL_SINGLE_LUN),
Linus Torvalds1da177e2005-04-16 15:20:36 -07001021
1022/* Entry needed for flags. Moreover, all devices with this ID use
1023 * bulk-only transport, but _some_ falsely report Control/Bulk instead.
1024 * One example is "Trumpion Digital Research MYMP3".
1025 * Submitted by Bjoern Brill <brill(at)fs.math.uni-frankfurt.de>
1026 */
1027UNUSUAL_DEV( 0x090a, 0x1001, 0x0100, 0x0100,
1028 "Trumpion",
1029 "t33520 USB Flash Card Controller",
1030 US_SC_DEVICE, US_PR_BULK, NULL,
1031 US_FL_NEED_OVERRIDE ),
1032
Phil Dibowitz17247572005-05-21 00:45:55 -07001033/* Reported by Filippo Bardelli <filibard@libero.it>
1034 * The device reports a subclass of RBC, which is wrong.
1035 */
1036UNUSUAL_DEV( 0x090a, 0x1050, 0x0100, 0x0100,
1037 "Trumpion Microelectronics, Inc.",
1038 "33520 USB Digital Voice Recorder",
1039 US_SC_UFI, US_PR_DEVICE, NULL,
1040 0),
1041
Linus Torvalds1da177e2005-04-16 15:20:36 -07001042/* Trumpion Microelectronics MP3 player (felipe_alfaro@linuxmail.org) */
1043UNUSUAL_DEV( 0x090a, 0x1200, 0x0000, 0x9999,
1044 "Trumpion",
1045 "MP3 player",
1046 US_SC_RBC, US_PR_BULK, NULL,
1047 0 ),
1048
1049/* aeb */
1050UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff,
1051 "Feiya",
1052 "5-in-1 Card Reader",
1053 US_SC_DEVICE, US_PR_DEVICE, NULL,
1054 US_FL_FIX_CAPACITY ),
1055
1056/* This Pentax still camera is not conformant
1057 * to the USB storage specification: -
1058 * - It does not like the INQUIRY command. So we must handle this command
1059 * of the SCSI layer ourselves.
1060 * Tested on Rev. 10.00 (0x1000)
1061 * Submitted by James Courtier-Dutton <James@superbug.demon.co.uk>
1062 */
1063UNUSUAL_DEV( 0x0a17, 0x0004, 0x1000, 0x1000,
1064 "Pentax",
1065 "Optio 2/3/400",
1066 US_SC_DEVICE, US_PR_DEVICE, NULL,
1067 US_FL_FIX_INQUIRY ),
1068
1069
1070/* Submitted by Per Winkvist <per.winkvist@uk.com> */
1071UNUSUAL_DEV( 0x0a17, 0x006, 0x0000, 0xffff,
1072 "Pentax",
1073 "Optio S/S4",
1074 US_SC_DEVICE, US_PR_DEVICE, NULL,
1075 US_FL_FIX_INQUIRY ),
1076
1077#ifdef CONFIG_USB_STORAGE_ISD200
1078UNUSUAL_DEV( 0x0bf6, 0xa001, 0x0100, 0x0110,
1079 "ATI",
1080 "USB Cable 205",
1081 US_SC_ISD200, US_PR_BULK, isd200_Initialization,
1082 0 ),
1083#endif
1084
1085#ifdef CONFIG_USB_STORAGE_DATAFAB
1086UNUSUAL_DEV( 0x0c0b, 0xa109, 0x0000, 0xffff,
1087 "Acomdata",
1088 "CF",
1089 US_SC_SCSI, US_PR_DATAFAB, NULL,
1090 US_FL_SINGLE_LUN ),
1091#endif
1092#ifdef CONFIG_USB_STORAGE_SDDR55
1093UNUSUAL_DEV( 0x0c0b, 0xa109, 0x0000, 0xffff,
1094 "Acomdata",
1095 "SM",
1096 US_SC_SCSI, US_PR_SDDR55, NULL,
1097 US_FL_SINGLE_LUN ),
1098#endif
1099
Matthew Dharm34008db2005-07-28 14:49:01 -07001100/* Submitted by: Nick Sillik <n.sillik@temple.edu>
1101 * Needed for OneTouch extension to usb-storage
1102 *
1103 */
1104#ifdef CONFIG_USB_STORAGE_ONETOUCH
Antti Andreimann94656632005-11-17 09:47:53 -08001105 UNUSUAL_DEV( 0x0d49, 0x7000, 0x0000, 0x9999,
1106 "Maxtor",
1107 "OneTouch External Harddrive",
1108 US_SC_DEVICE, US_PR_DEVICE, onetouch_connect_input,
1109 0),
Matthew Dharm34008db2005-07-28 14:49:01 -07001110 UNUSUAL_DEV( 0x0d49, 0x7010, 0x0000, 0x9999,
1111 "Maxtor",
1112 "OneTouch External Harddrive",
1113 US_SC_DEVICE, US_PR_DEVICE, onetouch_connect_input,
1114 0),
1115#endif
1116
Pete Zaitcevc713c972006-03-05 21:43:40 -08001117/*
1118 * Pete Zaitcev <zaitcev@yahoo.com>, bz#164688.
1119 * The device blatantly ignores LUN and returns 1 in GetMaxLUN.
1120 */
1121UNUSUAL_DEV( 0x0c45, 0x1060, 0x0100, 0x0100,
1122 "Unknown",
1123 "Unknown",
1124 US_SC_DEVICE, US_PR_DEVICE, NULL,
1125 US_FL_SINGLE_LUN ),
1126
Linus Torvalds1da177e2005-04-16 15:20:36 -07001127/* Submitted by Joris Struyve <joris@struyve.be> */
1128UNUSUAL_DEV( 0x0d96, 0x410a, 0x0001, 0xffff,
1129 "Medion",
1130 "MD 7425",
1131 US_SC_DEVICE, US_PR_DEVICE, NULL,
1132 US_FL_FIX_INQUIRY),
1133
1134/*
1135 * Entry for Jenoptik JD 5200z3
1136 *
1137 * email: car.busse@gmx.de
1138 */
1139UNUSUAL_DEV( 0x0d96, 0x5200, 0x0001, 0x0200,
1140 "Jenoptik",
1141 "JD 5200 z3",
1142 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
1143
1144/* Reported by Lubomir Blaha <tritol@trilogic.cz>
1145 * I _REALLY_ don't know what 3rd, 4th number and all defines mean, but this
1146 * works for me. Can anybody correct these values? (I able to test corrected
1147 * version.)
1148 */
1149UNUSUAL_DEV( 0x0dd8, 0x1060, 0x0000, 0xffff,
1150 "Netac",
1151 "USB-CF-Card",
1152 US_SC_DEVICE, US_PR_DEVICE, NULL,
1153 US_FL_FIX_INQUIRY ),
1154
1155/* Patch by Stephan Walter <stephan.walter@epfl.ch>
1156 * I don't know why, but it works... */
1157UNUSUAL_DEV( 0x0dda, 0x0001, 0x0012, 0x0012,
1158 "WINWARD",
1159 "Music Disk",
1160 US_SC_DEVICE, US_PR_DEVICE, NULL,
1161 US_FL_IGNORE_RESIDUE ),
1162
1163/* Reported by Ian McConnell <ian at emit.demon.co.uk> */
1164UNUSUAL_DEV( 0x0dda, 0x0301, 0x0012, 0x0012,
1165 "PNP_MP3",
1166 "PNP_MP3 PLAYER",
1167 US_SC_DEVICE, US_PR_DEVICE, NULL,
1168 US_FL_IGNORE_RESIDUE ),
1169
Alan Stern982db2a2006-02-13 10:16:04 -05001170/* Reported by Jim McCloskey <mcclosk@ucsc.edu> */
1171UNUSUAL_DEV( 0x0e21, 0x0520, 0x0100, 0x0100,
1172 "Cowon Systems",
1173 "iAUDIO M5",
1174 US_SC_DEVICE, US_PR_BULK, NULL,
1175 0 ),
1176
Linus Torvalds1da177e2005-04-16 15:20:36 -07001177/* Submitted by Antoine Mairesse <antoine.mairesse@free.fr> */
1178UNUSUAL_DEV( 0x0ed1, 0x6660, 0x0100, 0x0300,
1179 "USB",
1180 "Solid state disk",
1181 US_SC_DEVICE, US_PR_DEVICE, NULL,
1182 US_FL_FIX_INQUIRY ),
1183
1184/* Submitted by Daniel Drake <dsd@gentoo.org>
1185 * Reported by dayul on the Gentoo Forums */
1186UNUSUAL_DEV( 0x0ea0, 0x2168, 0x0110, 0x0110,
1187 "Ours Technology",
1188 "Flash Disk",
1189 US_SC_DEVICE, US_PR_DEVICE, NULL,
1190 US_FL_IGNORE_RESIDUE ),
1191
1192/* Reported by Rastislav Stanik <rs_kernel@yahoo.com> */
1193UNUSUAL_DEV( 0x0ea0, 0x6828, 0x0110, 0x0110,
1194 "USB",
1195 "Flash Disk",
1196 US_SC_DEVICE, US_PR_DEVICE, NULL,
1197 US_FL_IGNORE_RESIDUE ),
1198
1199/* Reported by Michael Stattmann <michael@stattmann.com> */
1200UNUSUAL_DEV( 0x0fce, 0xd008, 0x0000, 0x0000,
1201 "Sony Ericsson",
1202 "V800-Vodafone 802",
1203 US_SC_DEVICE, US_PR_DEVICE, NULL,
1204 US_FL_NO_WP_DETECT ),
1205
1206/* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu>
1207 * Tested on hardware version 1.10.
1208 * Entry is needed only for the initializer function override.
1209 */
1210UNUSUAL_DEV( 0x1019, 0x0c55, 0x0000, 0x9999,
1211 "Desknote",
1212 "UCR-61S2B",
1213 US_SC_DEVICE, US_PR_DEVICE, usb_stor_ucr61s2b_init,
1214 0 ),
1215
Phil Dibowitz7b1cbeb2005-05-02 23:54:28 -07001216/* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */
1217UNUSUAL_DEV( 0x132b, 0x000b, 0x0001, 0x0001,
1218 "Minolta",
1219 "Dimage Z10",
1220 US_SC_DEVICE, US_PR_DEVICE, NULL,
1221 0 ),
1222
Linus Torvalds1da177e2005-04-16 15:20:36 -07001223/* Reported by Kotrla Vitezslav <kotrla@ceb.cz> */
1224UNUSUAL_DEV( 0x1370, 0x6828, 0x0110, 0x0110,
1225 "SWISSBIT",
1226 "Black Silver",
1227 US_SC_DEVICE, US_PR_DEVICE, NULL,
1228 US_FL_IGNORE_RESIDUE ),
1229
Davide Perini0ddc0632006-06-19 17:07:39 -04001230/* patch submitted by Davide Perini <perini.davide@dpsoftware.org>
1231 * and Renato Perini <rperini@email.it>
1232 */
1233UNUSUAL_DEV( 0x22b8, 0x3010, 0x0001, 0x0001,
1234 "Motorola",
1235 "RAZR V3x",
1236 US_SC_DEVICE, US_PR_DEVICE, NULL,
1237 US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),
1238
Linus Torvalds1da177e2005-04-16 15:20:36 -07001239/* Reported by Radovan Garabik <garabik@kassiopeia.juls.savba.sk> */
1240UNUSUAL_DEV( 0x2735, 0x100b, 0x0000, 0x9999,
1241 "MPIO",
1242 "HS200",
1243 US_SC_DEVICE, US_PR_DEVICE, NULL,
1244 US_FL_GO_SLOW ),
1245
David Härdeman63dc3ff2005-11-23 15:45:49 -08001246/*
1247 * David Härdeman <david@2gen.com>
1248 * The key makes the SCSI stack print confusing (but harmless) messages
1249 */
1250UNUSUAL_DEV( 0x4146, 0xba01, 0x0100, 0x0100,
1251 "Iomega",
1252 "Micro Mini 1GB",
1253 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
1254
Linus Torvalds1da177e2005-04-16 15:20:36 -07001255#ifdef CONFIG_USB_STORAGE_SDDR55
1256UNUSUAL_DEV( 0x55aa, 0xa103, 0x0000, 0x9999,
1257 "Sandisk",
1258 "ImageMate SDDR55",
1259 US_SC_SCSI, US_PR_SDDR55, NULL,
1260 US_FL_SINGLE_LUN),
1261#endif
Pete Zaitceva00828e2005-10-22 20:15:09 -07001262
Alan Sterna2149bc2006-02-02 09:52:45 -05001263/* Reported by Andrew Simmons <andrew.simmons@gmail.com> */
1264UNUSUAL_DEV( 0xed06, 0x4500, 0x0001, 0x0001,
1265 "DataStor",
1266 "USB4500 FW1.04",
1267 US_SC_DEVICE, US_PR_DEVICE, NULL,
1268 US_FL_FIX_CAPACITY),
1269
Pete Zaitceva00828e2005-10-22 20:15:09 -07001270/* Control/Bulk transport for all SubClass values */
1271USUAL_DEV(US_SC_RBC, US_PR_CB, USB_US_TYPE_STOR),
1272USUAL_DEV(US_SC_8020, US_PR_CB, USB_US_TYPE_STOR),
1273USUAL_DEV(US_SC_QIC, US_PR_CB, USB_US_TYPE_STOR),
1274USUAL_DEV(US_SC_UFI, US_PR_CB, USB_US_TYPE_STOR),
1275USUAL_DEV(US_SC_8070, US_PR_CB, USB_US_TYPE_STOR),
1276USUAL_DEV(US_SC_SCSI, US_PR_CB, USB_US_TYPE_STOR),
1277
1278/* Control/Bulk/Interrupt transport for all SubClass values */
1279USUAL_DEV(US_SC_RBC, US_PR_CBI, USB_US_TYPE_STOR),
1280USUAL_DEV(US_SC_8020, US_PR_CBI, USB_US_TYPE_STOR),
1281USUAL_DEV(US_SC_QIC, US_PR_CBI, USB_US_TYPE_STOR),
1282USUAL_DEV(US_SC_UFI, US_PR_CBI, USB_US_TYPE_STOR),
1283USUAL_DEV(US_SC_8070, US_PR_CBI, USB_US_TYPE_STOR),
1284USUAL_DEV(US_SC_SCSI, US_PR_CBI, USB_US_TYPE_STOR),
1285
1286/* Bulk-only transport for all SubClass values */
1287USUAL_DEV(US_SC_RBC, US_PR_BULK, USB_US_TYPE_STOR),
1288USUAL_DEV(US_SC_8020, US_PR_BULK, USB_US_TYPE_STOR),
1289USUAL_DEV(US_SC_QIC, US_PR_BULK, USB_US_TYPE_STOR),
1290USUAL_DEV(US_SC_UFI, US_PR_BULK, USB_US_TYPE_STOR),
1291USUAL_DEV(US_SC_8070, US_PR_BULK, USB_US_TYPE_STOR),
1292USUAL_DEV(US_SC_SCSI, US_PR_BULK, 0),