USB: Nikon D40 Quirks
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / usb / storage / unusual_devs.h
CommitLineData
1da177e4 1/* Driver for USB Mass Storage compliant devices
093cf723 2 * Unusual Devices File
1da177e4
LT
3 *
4 * $Id: unusual_devs.h,v 1.32 2002/02/25 02:41:24 mdharm Exp $
5 *
6 * Current development and maintenance by:
7 * (c) 2000-2002 Matthew Dharm (mdharm-usb@one-eyed-alien.net)
8 *
9 * Initial work by:
10 * (c) 2000 Adam J. Richter (adam@yggdrasil.com), Yggdrasil Computing, Inc.
11 *
12 * Please see http://www.one-eyed-alien.net/~mdharm/linux-usb for more
13 * information about this driver.
14 *
15 * This program is free software; you can redistribute it and/or modify it
16 * under the terms of the GNU General Public License as published by the
17 * Free Software Foundation; either version 2, or (at your option) any
18 * later version.
19 *
20 * This program is distributed in the hope that it will be useful, but
21 * WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23 * General Public License for more details.
24 *
25 * You should have received a copy of the GNU General Public License along
26 * with this program; if not, write to the Free Software Foundation, Inc.,
27 * 675 Mass Ave, Cambridge, MA 02139, USA.
28 */
29
30/* IMPORTANT NOTE: This file must be included in another file which does
31 * the following thing for it to work:
32 * The macro UNUSUAL_DEV() must be defined before this file is included
33 */
1da177e4
LT
34
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
8af60be9
VB
50/* patch submitted by Vivian Bregier <Vivian.Bregier@imag.fr>
51 */
52UNUSUAL_DEV( 0x03eb, 0x2002, 0x0100, 0x0100,
c0e0c19c
ÇO
53 "ATMEL",
54 "SND1 Storage",
55 US_SC_DEVICE, US_PR_DEVICE, NULL,
56 US_FL_IGNORE_RESIDUE),
8af60be9 57
1ff15e8e
TL
58/* modified by Tobias Lorenz <tobias.lorenz@gmx.net> */
59UNUSUAL_DEV( 0x03ee, 0x6901, 0x0000, 0x0200,
1da177e4
LT
60 "Mitsumi",
61 "USB FDD",
62 US_SC_DEVICE, US_PR_DEVICE, NULL,
63 US_FL_SINGLE_LUN ),
64
9d5847bc
RQ
65/* Reported by Rodolfo Quesada <rquesada@roqz.net> */
66UNUSUAL_DEV( 0x03ee, 0x6906, 0x0003, 0x0003,
67 "VIA Technologies Inc.",
68 "Mitsumi multi cardreader",
69 US_SC_DEVICE, US_PR_DEVICE, NULL,
70 US_FL_IGNORE_RESIDUE ),
71
c0e0c19c 72UNUSUAL_DEV( 0x03f0, 0x0107, 0x0200, 0x0200,
1da177e4
LT
73 "HP",
74 "CD-Writer+",
c0e0c19c 75 US_SC_8070, US_PR_CB, NULL, 0),
1da177e4
LT
76
77#ifdef CONFIG_USB_STORAGE_USBAT
c0e0c19c 78UNUSUAL_DEV( 0x03f0, 0x0207, 0x0001, 0x0001,
1da177e4
LT
79 "HP",
80 "CD-Writer+ 8200e",
bdcfd9e3 81 US_SC_8070, US_PR_USBAT, init_usbat_cd, 0),
1da177e4 82
c0e0c19c 83UNUSUAL_DEV( 0x03f0, 0x0307, 0x0001, 0x0001,
1da177e4
LT
84 "HP",
85 "CD-Writer+ CD-4e",
bdcfd9e3 86 US_SC_8070, US_PR_USBAT, init_usbat_cd, 0),
1da177e4
LT
87#endif
88
1ea640ce
PD
89/* Reported by Sebastian Kapfer <sebastian_kapfer@gmx.net>
90 * and Olaf Hering <olh@suse.de> (different bcd's, same vendor/product)
91 * for USB floppies that need the SINGLE_LUN enforcement.
92 */
93UNUSUAL_DEV( 0x0409, 0x0040, 0x0000, 0x9999,
94 "NEC",
95 "NEC USB UF000x",
96 US_SC_DEVICE, US_PR_DEVICE, NULL,
97 US_FL_SINGLE_LUN ),
98
3e220e95
PD
99/* Patch submitted by Mihnea-Costin Grigore <mihnea@zulu.ro> */
100UNUSUAL_DEV( 0x040d, 0x6205, 0x0003, 0x0003,
101 "VIA Technologies Inc.",
102 "USB 2.0 Card Reader",
103 US_SC_DEVICE, US_PR_DEVICE, NULL,
104 US_FL_IGNORE_RESIDUE ),
105
1da177e4
LT
106/* Deduced by Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
107 * Entry needed for flags: US_FL_FIX_INQUIRY because initial inquiry message
108 * always fails and confuses drive.
109 */
110UNUSUAL_DEV( 0x0411, 0x001c, 0x0113, 0x0113,
111 "Buffalo",
112 "DUB-P40G HDD",
113 US_SC_DEVICE, US_PR_DEVICE, NULL,
114 US_FL_FIX_INQUIRY ),
115
d8840d60
E
116/* Submitted by Ernestas Vaiciukevicius <ernisv@gmail.com> */
117UNUSUAL_DEV( 0x0419, 0x0100, 0x0100, 0x0100,
c0e0c19c
ÇO
118 "Samsung Info. Systems America, Inc.",
119 "MP3 Player",
120 US_SC_DEVICE, US_PR_DEVICE, NULL,
121 US_FL_IGNORE_RESIDUE ),
d8840d60 122
5501a48c
PD
123/* Reported by Orgad Shaneh <orgads@gmail.com> */
124UNUSUAL_DEV( 0x0419, 0xaace, 0x0100, 0x0100,
125 "Samsung", "MP3 Player",
126 US_SC_DEVICE, US_PR_DEVICE, NULL,
127 US_FL_IGNORE_RESIDUE ),
128
1d614a4b
AS
129/* Reported by Christian Leber <christian@leber.de> */
130UNUSUAL_DEV( 0x0419, 0xaaf5, 0x0100, 0x0100,
131 "TrekStor",
132 "i.Beat 115 2.0",
133 US_SC_DEVICE, US_PR_DEVICE, NULL,
134 US_FL_IGNORE_RESIDUE | US_FL_NOT_LOCKABLE ),
135
e4a16e0c
PD
136/* Reported by Stefan Werner <dustbln@gmx.de> */
137UNUSUAL_DEV( 0x0419, 0xaaf6, 0x0100, 0x0100,
138 "TrekStor",
139 "i.Beat Joy 2.0",
140 US_SC_DEVICE, US_PR_DEVICE, NULL,
141 US_FL_IGNORE_RESIDUE ),
142
23b7885d
PZ
143/* Reported by Pete Zaitcev <zaitcev@redhat.com>, bz#176584 */
144UNUSUAL_DEV( 0x0420, 0x0001, 0x0100, 0x0100,
145 "GENERIC", "MP3 PLAYER", /* MyMusix PD-205 on the outside. */
146 US_SC_DEVICE, US_PR_DEVICE, NULL,
147 US_FL_IGNORE_RESIDUE ),
148
0d8c7aea
AN
149/* Reported by Andrew Nayenko <relan@bk.ru> */
150UNUSUAL_DEV( 0x0421, 0x0019, 0x0592, 0x0592,
151 "Nokia",
152 "Nokia 6288",
153 US_SC_DEVICE, US_PR_DEVICE, NULL,
154 US_FL_MAX_SECTORS_64 ),
155
de1caa47
AS
156/* Reported by Mario Rettig <mariorettig@web.de> */
157UNUSUAL_DEV( 0x0421, 0x042e, 0x0100, 0x0100,
158 "Nokia",
159 "Nokia 3250",
160 US_SC_DEVICE, US_PR_DEVICE, NULL,
161 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
162
fe1ec341
AM
163/* Reported by <honkkis@gmail.com> */
164UNUSUAL_DEV( 0x0421, 0x0433, 0x0100, 0x0100,
165 "Nokia",
166 "E70",
167 US_SC_DEVICE, US_PR_DEVICE, NULL,
168 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
169
7923811a
AS
170/* Reported by Jon Hart <Jon.Hart@web.de> */
171UNUSUAL_DEV( 0x0421, 0x0434, 0x0100, 0x0100,
172 "Nokia",
173 "E60",
174 US_SC_DEVICE, US_PR_DEVICE, NULL,
175 US_FL_FIX_CAPACITY | US_FL_IGNORE_RESIDUE ),
176
9a01355e
AS
177/* Reported by Sumedha Swamy <sumedhaswamy@gmail.com> and
178 * Einar Th. Einarsson <einarthered@gmail.com> */
179UNUSUAL_DEV( 0x0421, 0x0444, 0x0100, 0x0100,
180 "Nokia",
181 "N91",
182 US_SC_DEVICE, US_PR_DEVICE, NULL,
183 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
184
d5681fe8
AS
185/* Reported by Jiri Slaby <jirislaby@gmail.com> and
186 * Rene C. Castberg <Rene@Castberg.org> */
187UNUSUAL_DEV( 0x0421, 0x0446, 0x0100, 0x0100,
188 "Nokia",
189 "N80",
190 US_SC_DEVICE, US_PR_DEVICE, NULL,
191 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
192
57b01b1e
AS
193/* Reported by Matthew Bloch <matthew@bytemark.co.uk> */
194UNUSUAL_DEV( 0x0421, 0x044e, 0x0100, 0x0100,
195 "Nokia",
196 "E61",
197 US_SC_DEVICE, US_PR_DEVICE, NULL,
198 US_FL_IGNORE_RESIDUE | US_FL_FIX_CAPACITY ),
199
e4a20daa
AS
200/* Reported by Bardur Arantsson <bardur@scientician.net> */
201UNUSUAL_DEV( 0x0421, 0x047c, 0x0370, 0x0370,
202 "Nokia",
203 "6131",
204 US_SC_DEVICE, US_PR_DEVICE, NULL,
205 US_FL_MAX_SECTORS_64 ),
206
39559b4f
MO
207/* Reported by Manuel Osdoba <manuel.osdoba@tu-ilmenau.de> */
208UNUSUAL_DEV( 0x0421, 0x0492, 0x0452, 0x0452,
209 "Nokia",
210 "Nokia 6233",
211 US_SC_DEVICE, US_PR_DEVICE, NULL,
212 US_FL_MAX_SECTORS_64 ),
213
3ccf25ce
AS
214/* Reported by Alex Corcoles <alex@corcoles.net> */
215UNUSUAL_DEV( 0x0421, 0x0495, 0x0370, 0x0370,
216 "Nokia",
217 "6234",
218 US_SC_DEVICE, US_PR_DEVICE, NULL,
219 US_FL_MAX_SECTORS_64 ),
220
1ea640ce
PD
221/* Reported by Olaf Hering <olh@suse.de> from novell bug #105878 */
222UNUSUAL_DEV( 0x0424, 0x0fdc, 0x0210, 0x0210,
223 "SMSC",
224 "FDC GOLD-2.30",
225 US_SC_DEVICE, US_PR_DEVICE, NULL,
226 US_FL_SINGLE_LUN ),
227
1da177e4
LT
228#ifdef CONFIG_USB_STORAGE_DPCM
229UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100,
230 "Microtech",
231 "CameraMate (DPCM_USB)",
232 US_SC_SCSI, US_PR_DPCM_USB, NULL, 0 ),
233#endif
234
16f05be7
PD
235/* Patch submitted by Daniel Drake <dsd@gentoo.org>
236 * Device reports nonsense bInterfaceProtocol 6 when connected over USB2 */
237UNUSUAL_DEV( 0x0451, 0x5416, 0x0100, 0x0100,
238 "Neuros Audio",
239 "USB 2.0 HD 2.5",
240 US_SC_DEVICE, US_PR_BULK, NULL,
241 US_FL_NEED_OVERRIDE ),
242
490dce15
PZ
243/*
244 * Pete Zaitcev <zaitcev@yahoo.com>, from Patrick C. F. Ernzer, bz#162559.
245 * The key does not actually break, but it returns zero sense which
246 * makes our SCSI stack to print confusing messages.
247 */
248UNUSUAL_DEV( 0x0457, 0x0150, 0x0100, 0x0100,
249 "USBest Technology", /* sold by Transcend */
250 "USB Mass Storage Device",
251 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ),
252
16f05be7
PD
253/*
254* Bohdan Linda <bohdan.linda@gmail.com>
255* 1GB USB sticks MyFlash High Speed. I have restricted
256* the revision to my model only
257*/
258UNUSUAL_DEV( 0x0457, 0x0151, 0x0100, 0x0100,
c0e0c19c
ÇO
259 "USB 2.0",
260 "Flash Disk",
261 US_SC_DEVICE, US_PR_DEVICE, NULL,
262 US_FL_NOT_LOCKABLE ),
e1c37b8d 263
7f38aa0f 264#ifdef CONFIG_USB_STORAGE_KARMA
abb02fdf
MD
265UNUSUAL_DEV( 0x045a, 0x5210, 0x0101, 0x0101,
266 "Rio",
267 "Rio Karma",
dfe0d3ba 268 US_SC_SCSI, US_PR_KARMA, rio_karma_init, 0),
7f38aa0f 269#endif
abb02fdf 270
379885a9
PZ
271/*
272 * This virtual floppy is found in Sun equipment (x4600, x4200m2, etc.)
273 * Reported by Pete Zaitcev <zaitcev@redhat.com>
274 * This device chokes on both version of MODE SENSE which we have, so
275 * use_10_for_ms is not effective, and we use US_FL_NO_WP_DETECT.
276 */
277UNUSUAL_DEV( 0x046b, 0xff40, 0x0100, 0x0100,
278 "AMI",
279 "Virtual Floppy",
280 US_SC_DEVICE, US_PR_DEVICE, NULL,
281 US_FL_NO_WP_DETECT),
282
1da177e4
LT
283/* Patch submitted by Philipp Friedrich <philipp@void.at> */
284UNUSUAL_DEV( 0x0482, 0x0100, 0x0100, 0x0100,
285 "Kyocera",
286 "Finecam S3x",
287 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
288
289/* Patch submitted by Philipp Friedrich <philipp@void.at> */
290UNUSUAL_DEV( 0x0482, 0x0101, 0x0100, 0x0100,
291 "Kyocera",
292 "Finecam S4",
293 US_SC_8070, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
294
295/* Patch submitted by Stephane Galles <stephane.galles@free.fr> */
296UNUSUAL_DEV( 0x0482, 0x0103, 0x0100, 0x0100,
297 "Kyocera",
298 "Finecam S5",
299 US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY),
300
1da177e4
LT
301/* Reported by Paul Stewart <stewart@wetlogic.net>
302 * This entry is needed because the device reports Sub=ff */
303UNUSUAL_DEV( 0x04a4, 0x0004, 0x0001, 0x0001,
304 "Hitachi",
305 "DVD-CAM DZ-MV100A Camcorder",
306 US_SC_SCSI, US_PR_CB, NULL, US_FL_SINGLE_LUN),
307
ae671813
AS
308/* Patch for Nikon coolpix 2000
309 * Submitted by Fabien Cosse <fabien.cosse@wanadoo.fr>*/
310UNUSUAL_DEV( 0x04b0, 0x0301, 0x0010, 0x0010,
311 "NIKON",
312 "NIKON DSC E2000",
313 US_SC_DEVICE, US_PR_DEVICE,NULL,
314 US_FL_NOT_LOCKABLE ),
315
d8fbba2f
AS
316/* Reported by Stefan de Konink <skinkie@xs4all.nl> */
317UNUSUAL_DEV( 0x04b0, 0x0401, 0x0200, 0x0200,
318 "NIKON",
319 "NIKON DSC D100",
320 US_SC_DEVICE, US_PR_DEVICE, NULL,
321 US_FL_FIX_CAPACITY),
322
4f47bb56
MD
323/* Reported by Milinevsky Dmitry <niam.niam@gmail.com> */
324UNUSUAL_DEV( 0x04b0, 0x0409, 0x0100, 0x0100,
325 "NIKON",
326 "NIKON DSC D50",
327 US_SC_DEVICE, US_PR_DEVICE, NULL,
328 US_FL_FIX_CAPACITY),
329
1da177e4
LT
330/* Reported by Andreas Bockhold <andreas@bockionline.de> */
331UNUSUAL_DEV( 0x04b0, 0x0405, 0x0100, 0x0100,
332 "NIKON",
333 "NIKON DSC D70",
334 US_SC_DEVICE, US_PR_DEVICE, NULL,
335 US_FL_FIX_CAPACITY),
336
ae671813
AS
337/* Reported by Jamie Kitson <jamie@staberinde.fsnet.co.uk> */
338UNUSUAL_DEV( 0x04b0, 0x040d, 0x0100, 0x0100,
17fa6e55 339 "NIKON",
ae671813
AS
340 "NIKON DSC D70s",
341 US_SC_DEVICE, US_PR_DEVICE, NULL,
342 US_FL_FIX_CAPACITY),
17fa6e55 343
2ea547d2 344/* Reported by Emil Larsson <emil@swip.net> */
83fc8a15 345UNUSUAL_DEV( 0x04b0, 0x0411, 0x0100, 0x0101,
2ea547d2
EL
346 "NIKON",
347 "NIKON DSC D80",
348 US_SC_DEVICE, US_PR_DEVICE, NULL,
349 US_FL_FIX_CAPACITY),
350
9374b9fd
OG
351/* Reported by Ortwin Glueck <odi@odi.ch> */
352UNUSUAL_DEV( 0x04b0, 0x0413, 0x0110, 0x0110,
353 "NIKON",
354 "NIKON DSC D40",
355 US_SC_DEVICE, US_PR_DEVICE, NULL,
356 US_FL_FIX_CAPACITY),
357
1da177e4
LT
358/* BENQ DC5330
359 * Reported by Manuel Fombuena <mfombuena@ya.com> and
360 * Frank Copeland <fjc@thingy.apana.org.au> */
361UNUSUAL_DEV( 0x04a5, 0x3010, 0x0100, 0x0100,
362 "Tekom Technologies, Inc",
363 "300_CAMERA",
364 US_SC_DEVICE, US_PR_DEVICE, NULL,
365 US_FL_IGNORE_RESIDUE ),
366
367/* Reported by Simon Levitt <simon@whattf.com>
368 * This entry needs Sub and Proto fields */
369UNUSUAL_DEV( 0x04b8, 0x0601, 0x0100, 0x0100,
370 "Epson",
371 "875DC Storage",
372 US_SC_SCSI, US_PR_CB, NULL, US_FL_FIX_INQUIRY),
373
374/* Reported by Khalid Aziz <khalid@gonehiking.org>
375 * This entry is needed because the device reports Sub=ff */
376UNUSUAL_DEV( 0x04b8, 0x0602, 0x0110, 0x0110,
377 "Epson",
378 "785EPX Storage",
379 US_SC_SCSI, US_PR_BULK, NULL, US_FL_SINGLE_LUN),
380
381/* Not sure who reported this originally but
382 * Pavel Machek <pavel@ucw.cz> reported that the extra US_FL_SINGLE_LUN
383 * flag be added */
384UNUSUAL_DEV( 0x04cb, 0x0100, 0x0000, 0x2210,
385 "Fujifilm",
386 "FinePix 1400Zoom",
387 US_SC_UFI, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY | US_FL_SINGLE_LUN),
388
389