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