libmtp  1.1.18
music-players.h
Go to the documentation of this file.
1 
32 /*
33  * MTP device list, trying real bad to get all devices into
34  * this list by stealing from everyone I know.
35  * Some devices taken from the Rockbox device listing:
36  * http://www.rockbox.org/twiki/bin/view/Main/DeviceDetection
37  */
38 
39  /*
40  * Creative Technology and ZiiLABS
41  * Initially the Creative devices was all we supported so these are
42  * the most thoroughly tested devices. Presumably only the devices
43  * with older firmware (the ones that have 32bit object size) will
44  * need the DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL flag. This bug
45  * manifest itself when you have a lot of folders on the device,
46  * some of the folders will start to disappear when getting all objects
47  * and properties.
48  */
49  { "Creative", 0x041e, "ZEN Vision", 0x411f,
51  { "Creative", 0x041e, "Portable Media Center", 0x4123,
53  { "Creative", 0x041e, "ZEN Xtra (MTP mode)", 0x4128,
55  { "Dell", 0x041e, "DJ (2nd generation)", 0x412f,
57  { "Creative", 0x041e, "ZEN Micro (MTP mode)", 0x4130,
59  { "Creative", 0x041e, "ZEN Touch (MTP mode)", 0x4131,
61  { "Dell", 0x041e, "Dell Pocket DJ (MTP mode)", 0x4132,
63  { "Creative", 0x041e, "ZEN MicroPhoto (alternate version)", 0x4133,
65  { "Creative", 0x041e, "ZEN Sleek (MTP mode)", 0x4137,
67  { "Creative", 0x041e, "ZEN MicroPhoto", 0x413c,
69  { "Creative", 0x041e, "ZEN Sleek Photo", 0x413d,
71  { "Creative", 0x041e, "ZEN Vision:M", 0x413e,
73  // Reported by marazm@o2.pl
74  { "Creative", 0x041e, "ZEN V", 0x4150,
76  // Reported by danielw@iinet.net.au
77  // This version of the Vision:M needs the no release interface flag,
78  // unclear whether the other version above need it too or not.
79  { "Creative", 0x041e, "ZEN Vision:M (DVP-HD0004)", 0x4151,
82  // Reported by Darel on the XNJB forums
83  { "Creative", 0x041e, "ZEN V Plus", 0x4152,
85  { "Creative", 0x041e, "ZEN Vision W", 0x4153,
87  // Don't add 0x4155: this is a Zen Stone device which is not MTP
88  // Reported by Paul Kurczaba <paul@kurczaba.com>
89  { "Creative", 0x041e, "ZEN", 0x4157,
93  // Reported by Ringofan <mcroman@users.sourceforge.net>
94  { "Creative", 0x041e, "ZEN V 2GB", 0x4158,
96  // Reported by j norment <stormzen@gmail.com>
97  { "Creative", 0x041e, "ZEN Mozaic", 0x4161,
99  // Reported by Aaron F. Gonzalez <sub_tex@users.sourceforge.net>
100  { "Creative", 0x041e, "ZEN X-Fi", 0x4162,
102  // Reported by farmerstimuli <farmerstimuli@users.sourceforge.net>
103  { "Creative", 0x041e, "ZEN X-Fi 3", 0x4169,
105  // Reported by Todor Gyumyushev <yodor1@users.sourceforge.net>
106  { "ZiiLABS", 0x041e, "Zii EGG", 0x6000,
112 
113  /*
114  * Samsung
115  * We suspect that more of these are dual mode.
116  * We suspect more of these might need DEVICE_FLAG_NO_ZERO_READS
117  * We suspect more of these might need DEVICE_FLAG_PLAYLIST_SPL_V1
118  * or DEVICE_FLAG_PLAYLIST_SPL_V2 to get playlists working.
119  * YP-NEU, YP-NDU, YP-20, YP-800, YP-MF Series, YP-100, YP-30
120  * YP-700 and YP-90 are NOT MTP, but use a Samsung custom protocol.
121  * See: http://wiki.xiph.org/index.php/PortablePlayers for Ogg
122  * status.
123  */
124  // From anonymous SourceForge user, not verified
125  { "Samsung", 0x04e8, "YP-900", 0x0409, DEVICE_FLAG_NONE },
126  // From MItch <dbaker@users.sourceforge.net>
127  { "Samsung", 0x04e8, "I550W Phone", 0x04a4, DEVICE_FLAG_NONE },
128  // From Manfred Enning <menning@users.sourceforge.net>
129  { "Samsung", 0x04e8, "Jet S8000", 0x4f1f, DEVICE_FLAG_NONE },
130  // From Gabriel Nunes <gabrielkm1@yahoo.com.br>
131  { "Samsung", 0x04e8, "YH-920 (501d)", 0x501d, DEVICE_FLAG_UNLOAD_DRIVER },
132  // From Soren O'Neill
133  { "Samsung", 0x04e8, "YH-920 (5022)", 0x5022, DEVICE_FLAG_UNLOAD_DRIVER },
134  // Contributed by aronvanammers on SourceForge
135  { "Samsung", 0x04e8, "YH-925GS", 0x5024, DEVICE_FLAG_NONE },
136  // From libgphoto2, according to tests by Stephan Fabel it cannot
137  // get all objects with the getobjectproplist command..
138  { "Samsung", 0x04e8, "YH-820", 0x502e,
140  // Contributed by polux2001@users.sourceforge.net
141  { "Samsung", 0x04e8, "YH-925(-GS)", 0x502f,
144  // Contributed by anonymous person on SourceForge
145  { "Samsung", 0x04e8, "YH-J70J", 0x5033,
147  // From XNJB user
148  // Guessing on .spl flag
149  { "Samsung", 0x04e8, "YP-Z5", 0x503c,
153  // Don't add 0x5041 as this is YP-Z5 in USB mode
154  // Contributed by anonymous person on SourceForge
155  { "Samsung", 0x04e8, "YP-T7J", 0x5047,
158  // Reported by cstrickler@gmail.com
159  { "Samsung", 0x04e8, "YP-U2J (YP-U2JXB/XAA)", 0x5054,
162  // Reported by Andrew Benson
163  { "Samsung", 0x04e8, "YP-F2J", 0x5057,
165  // Reported by Patrick <skibler@gmail.com>
166  // Just guessing but looks like .spl v1 http://www.anythingbutipod.com/forum/showthread.php?t=14160
167  { "Samsung", 0x04e8, "YP-K5", 0x505a,
171  // From dev.local@gmail.com - 0x4e8/0x507c is the UMS mode, apparently
172  // do not add that device.
173  // From m.eik michalke
174  // This device does NOT use the special SPL playlist according to sypqgjxu@gmx.de.
175  { "Samsung", 0x04e8, "YP-U3", 0x507d,
178  // Reported by Matthew Wilcox <matthew@wil.cx>
179  // Sergio <sfrdll@tiscali.it> reports this device need the BROKEN ALL flag.
180  // Guessing on .spl flag
181  { "Samsung", 0x04e8, "YP-T9", 0x507f,
186  // From Paul Clinch
187  // Just guessing but looks like .spl v1 http://www.anythingbutipod.com/forum/showthread.php?t=14160
188  // Some versions of the firmware reportedly support OGG, reportedly only the
189  // UMS versions, so MTP+OGG is not possible on this device.
190  { "Samsung", 0x04e8, "YP-K3", 0x5081,
193  // From XNJB user
194  // From Alistair Boyle, .spl v2 required for playlists
195  // According to the device log it properly supports OGG
196  { "Samsung", 0x04e8, "YP-P2", 0x5083,
201  // From Paul Clinch
202  // Guessing on .spl flag
203  { "Samsung", 0x04e8, "YP-T10", 0x508a,
209  // From Wim Verwimp <wimverwimp@gmail.com>
210  // Not sure about the Ogg and broken proplist flags here. Just guessing.
211  // Guessing on .spl flag
212  { "Samsung", 0x04e8, "YP-S5", 0x508b,
217  // From Ludovic Danigo
218  // Guessing on .spl flag
219  { "Samsung", 0x04e8, "YP-S3", 0x5091,
224  // From Adrian Levi <adrian.levi@gmail.com>
225  // Guessing on .spl flag
226  // This one supports OGG properly through the correct MTP type.
227  { "Samsung", 0x04e8, "YP-U4", 0x5093, DEVICE_FLAG_UNLOAD_DRIVER },
228  // From Chris Le Sueur <thefishface@gmail.com>
229  // Guessing on .spl flag
230  // This one supports OGG properly through the correct MTP type.
231  { "Samsung", 0x04e8, "YP-R1", 0x510f,
235  // From Anonymous SourceForge user
236  // Guessing on .spl flag
237  { "Samsung", 0x04e8, "YP-Q1", 0x5115,
242  // From Holger
243  { "Samsung", 0x04e8, "YP-M1", 0x5118,
247  // From Anonymous SourceForge user
248  // Guessing on .spl flag
249  { "Samsung", 0x04e8, "YP-P3", 0x511a,
254  // From Anonymous SourceForge user
255  // Guessing on .spl flag
256  { "Samsung", 0x04e8, "YP-Q2", 0x511d,
261  // From Marco Pizzocaro <mpizzocaro@users.sourceforge.net>
262  // Guessing on .spl flag
263  { "Samsung", 0x04e8, "YP-U5", 0x5121,
268  // From Leonardo Accorsi <laccorsi@users.sourceforge.net>
269  // Guessing on .spl flag
270  { "Samsung", 0x04e8, "YP-R0", 0x5125,
275  // The "YP-R2" (0x04e8/0x512d) is NOT MTP, it is UMS only.
276  // Guessing on device flags for the MTP mode...
277  { "Samsung", 0x04e8, "YP-R2", 0x512e,
283  // From Manuel Carro
284  // Copied from Q2
285  { "Samsung", 0x04e8, "YP-Q3", 0x5130,
290  // Reported by: traaf <traaf@users.sourceforge.net>
291  // Guessing on the playlist type!
292  // Appears to present itself properly as a PTP device with MTP extensions!
293  { "Samsung", 0x04e8, "YP-Z3", 0x5137,
298  // YP-F3 is NOT MTP - USB mass storage
299  // From a rouge .INF file
300  // this device ID seems to have been recycled for:
301  // the Samsung SGH-A707 Cingular cellphone
302  // the Samsung L760-V cellphone
303  // the Samsung SGH-U900 cellphone
304  // the Samsung Fascinate player
305  { "Samsung", 0x04e8,
306  "YH-999 Portable Media Center/SGH-A707/SGH-L760V/SGH-U900/Verizon Intensity/Fascinate",
308  // From Santi Béjar <sbejar@gmail.com> - not sure this is MTP...
309  // { "Samsung", 0x04e8, "Z170 Mobile Phone", 0x6601, DEVICE_FLAG_UNLOAD_DRIVER },
310  // From Santi Béjar <sbejar@gmail.com> - not sure this is MTP...
311  // { "Samsung", 0x04e8, "E250 Mobile Phone", 0x663e, DEVICE_FLAG_UNLOAD_DRIVER },
312  // From an anonymous SF user
313  { "Samsung", 0x04e8, "M7600 Beat/GT-S8300T/SGH-F490/S8300", 0x6642,
316  // From Lionel Bouton
317  { "Samsung", 0x04e8, "X830 Mobile Phone", 0x6702,
319  // From James <jamestech@gmail.com>
320  { "Samsung", 0x04e8, "U600 Mobile Phone", 0x6709,
322  // From Cesar Cardoso <cesar@cesarcardoso.tk>
323  // No confirmation that this is really MTP.
324  { "Samsung", 0x04e8, "F250 Mobile Phone", 0x6727,
326  // From Charlie Todd 2007-10-31
327  { "Samsung", 0x04e8, "Juke (SCH-U470)", 0x6734,
329  // Reported by Tenn
330  { "Samsung", 0x04e8, "GT-B2700", 0x6752,
332  // Added by Greg Fitzgerald <netzdamon@gmail.com>
333  { "Samsung", 0x04e8, "SAMSUNG Trance", 0x6763,
337  // From anonymous sourceforge user
338  // Guessing on .spl flag, maybe needs NO_ZERO_READS, whatdoIknow
339  { "Samsung", 0x04e8, "GT-S8500", 0x6819,
342  /*
343  * These entries seems to be used on a *lot* of Samsung
344  * Android phones. It is *not* the Android MTP stack but an internal
345  * Samsung stack. The devices present a few different product IDs
346  * depending on mode:
347  *
348  * 0x685b - UMS
349  * 0x685c - MTP + ADB
350  * 0x685e - UMS + CDC (not MTP)
351  * 0x6860 - MTP mode (default)
352  * 0x6863 - USB CDC RNDIS (not MTP)
353  * 0x6865 - PTP mode (not MTP)
354  * 0x6877 - Kies mode? Does it have MTP?
355  *
356  * Used on these samsung devices:
357  * GT P7310/P7510/N7000/I9100/I9250/I9300
358  * Galaxy Nexus
359  * Galaxy Tab 7.7/10.1
360  * Galaxy S GT-I9000
361  * Galaxy S Advance GT-I9070
362  * Galaxy S2
363  * Galaxy S3
364  * Galaxy Note
365  * Gakaxy Xcover
366  * Galaxy Y
367  *
368  * - It seems that some PTP commands are broken.
369  * - Devices seem to have a connection timeout, the session must be
370  * open in about 3 seconds since the device is plugged in, after
371  * that time it will not respond. Thus GUI programs work fine.
372  * - Seems also to be used with Galaxy Nexus debug mode and on
373  * US markets for some weird reason.
374  * - has a weird USB bug if it reads exactly 512byte (usb 2 packetsize)
375  * the device will hang. this is one of the reasons we need to disable
376  * DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST as it can hit this size :/
377  *
378  * From: Ignacio Martínez <ignacio.martinezrivera@yahoo.es> and others
379  * From Harrison Metzger <harrisonmetz@gmail.com>
380  */
381  { "Samsung", 0x04e8,
382  "Galaxy models (MTP+ADB)", 0x685c,
391  { "Samsung", 0x04e8,
392  "Galaxy models (MTP)", 0x6860,
401  // From: Erik Berglund <erikjber@users.sourceforge.net>
402  // Logs indicate this needs DEVICE_FLAG_NO_ZERO_READS
403  // No Samsung platlists on this device.
404  // https://sourceforge.net/tracker/?func=detail&atid=809061&aid=3026337&group_id=158745
405  // i5800 duplicate reported by igel <igel-kun@users.sourceforge.net>
406  // Guessing this has the same problematic MTP stack as the device
407  // above.
408  { "Samsung", 0x04e8, "Galaxy models Kies mode", 0x6877,
415  // From: John Gorkos <ab0oo@users.sourceforge.net> and
416  // Akos Maroy <darkeye@users.sourceforge.net>
417  { "Samsung", 0x04e8, "Vibrant SGH-T959/Captivate/Media player mode", 0x68a9,
420  // Reported by Sleep.Walker <froser@users.sourceforge.net>
421  { "Samsung", 0x04e8, "GT-B2710/Xcover 271", 0x68af,
424  // From anonymous Sourceforge user
425  { "Samsung", 0x04e8, "GT-S5230", 0xe20c, DEVICE_FLAG_NONE },
426 
427 
428  /*
429  * Microsoft
430  * All except the first probably need MTPZ to work
431  */
432  { "Microsoft/Intel", 0x045e, "Bandon Portable Media Center", 0x00c9,
434  // HTC Mozart is using the PID, as is Nokia Lumia 800
435  // May need MTPZ to work
436  { "Microsoft", 0x045e, "Windows Phone", 0x04ec, DEVICE_FLAG_NONE },
437  // Reported by Tadimarri Sarath <sarath.tadi@gmail.com>
438  // No idea why this use an Intel PID, perhaps a leftover from
439  // the early PMC development days when Intel and Microsoft were
440  // partnering.
441  { "Microsoft", 0x045e, "Windows MTP Simulator", 0x0622, DEVICE_FLAG_NONE },
442  // Reported by Edward Hutchins (used for Zune HDs)
443  { "Microsoft", 0x045e, "Zune HD", 0x063e, DEVICE_FLAG_NONE },
444  { "Microsoft", 0x045e, "Kin 1", 0x0640, DEVICE_FLAG_NONE },
445  { "Microsoft/Sharp/nVidia", 0x045e, "Kin TwoM", 0x0641, DEVICE_FLAG_NONE },
446  // Reported by Farooq Zaman (used for all Zunes)
447  { "Microsoft", 0x045e, "Zune", 0x0710, DEVICE_FLAG_NONE },
448  /* https://sourceforge.net/p/libmtp/feature-requests/155/ */
449  { "Microsoft", 0x045e, "Lumia 950 XL Dual SIM (RM-1116)", 0x0a00, DEVICE_FLAG_NONE },
450  // Reported by Olegs Jeremejevs
451  { "Microsoft/HTC", 0x045e, "HTC 8S", 0xf0ca, DEVICE_FLAG_NONE },
452 
453  /*
454  * JVC
455  */
456  // From Mark Veinot
457  { "JVC", 0x04f1, "Alneo XA-HD500", 0x6105, DEVICE_FLAG_NONE },
458 
459  /* https://sourceforge.net/p/libmtp/bugs/1613/ */
460  { "Intex", 0x05c6, "Aqua Fish", 0x0a07, DEVICE_FLAG_NONE },
461 
462  /*
463  * Philips
464  */
465  { "Philips", 0x0471, "HDD6320/00 or HDD6330/17", 0x014b, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
466  // Anonymous SourceForge user
467  { "Philips", 0x0471, "HDD14XX,HDD1620 or HDD1630/17", 0x014c, DEVICE_FLAG_NONE },
468  // from discussion forum
469  { "Philips", 0x0471, "HDD085/00 or HDD082/17", 0x014d, DEVICE_FLAG_NONE },
470  // from XNJB forum
471  { "Philips", 0x0471, "GoGear SA9200", 0x014f, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
472  // From John Coppens <jcoppens@users.sourceforge.net>
473  { "Philips", 0x0471, "SA1115/55", 0x0164, DEVICE_FLAG_NONE },
474  // From Gerhard Mekenkamp
475  { "Philips", 0x0471, "GoGear Audio", 0x0165, DEVICE_FLAG_NONE },
476  // from David Holm <wormie@alberg.dk>
477  { "Philips", 0x0471, "Shoqbox", 0x0172, DEVICE_FLAG_ONLY_7BIT_FILENAMES },
478  // from npedrosa
479  { "Philips", 0x0471, "PSA610", 0x0181, DEVICE_FLAG_NONE },
480  // From libgphoto2 source
481  { "Philips", 0x0471, "HDD6320", 0x01eb, DEVICE_FLAG_NONE },
482  // From Detlef Meier <dm@emlix.com>
483  { "Philips", 0x0471, "GoGear SA6014/SA6015/SA6024/SA6025/SA6044/SA6045", 0x084e, DEVICE_FLAG_UNLOAD_DRIVER },
484  // From anonymous Sourceforge user SA5145/02
485  { "Philips", 0x0471, "GoGear SA5145", 0x0857, DEVICE_FLAG_UNLOAD_DRIVER },
486  /* https://sourceforge.net/p/libmtp/bugs/1260/ */
487  { "Philips", 0x0471, "i908", 0x190b, DEVICE_FLAG_UNLOAD_DRIVER },
488  // From a
489  { "Philips", 0x0471, "GoGear SA6125/SA6145/SA6185", 0x2002, DEVICE_FLAG_UNLOAD_DRIVER },
490  // From anonymous Sourceforge user, not verified to be MTP!
491  { "Philips", 0x0471, "GoGear SA3345", 0x2004, DEVICE_FLAG_UNLOAD_DRIVER },
492  /* https://sourceforge.net/p/libmtp/support-requests/163/ */
493  { "Philips", 0x0471, "W6610", 0x2008, DEVICE_FLAG_UNLOAD_DRIVER },
494  // From Roberto Vidmar <rvidmar@libero.it>
495  { "Philips", 0x0471, "SA5285", 0x2022, DEVICE_FLAG_UNLOAD_DRIVER },
496  // From Elie De Brauwer <elie@de-brauwer.be>
497  { "Philips", 0x0471, "GoGear ViBE SA1VBE04", 0x2075,
499  // From Anonymous SourceForge user
500  { "Philips", 0x0471, "GoGear Muse", 0x2077,
502  // From Elie De Brauwer <elie@de-brauwer.be>
503  { "Philips", 0x0471, "GoGear ViBE SA1VBE04/08", 0x207b,
505  // From josmtx <josmtx@users.sourceforge.net>
506  { "Philips", 0x0471, "GoGear Aria", 0x207c,
508  // From epklein
509  { "Philips", 0x0471, "GoGear SA1VBE08KX/78", 0x208e,
511  // From Anonymous SourceForge User
512  { "Philips", 0x0471, "GoGear VIBE SA2VBE[08|16]K/02", 0x20b7,
514  // From Anonymous SourceForge User
515  { "Philips", 0x0471, "GoGear Ariaz", 0x20b9,
517  // From Anonymous SourceForge User
518  { "Philips", 0x0471, "GoGear Vibe/02", 0x20e5,
520  // Reported by Philip Rhoades
521  { "Philips", 0x0471, "GoGear Ariaz/97", 0x2138,
523  /* https://sourceforge.net/p/libmtp/bugs/1186/ */
524  { "Philips", 0x0471, "PI3900B2/58 ", 0x2190,
526  // from XNJB user
527  { "Philips", 0x0471, "PSA235", 0x7e01, DEVICE_FLAG_NONE },
528 
529  /*
530  * Acer
531  * Reporters:
532  * Franck VDL <franckv@users.sourceforge.net>
533  * Matthias Arndt <simonsunnyboy@users.sourceforge.net>
534  * Arvin Schnell <arvins@users.sourceforge.net>
535  * Philippe Marzouk <philm@users.sourceforge.net>
536  * nE0sIghT <ne0sight@users.sourceforge.net>
537  * Maxime de Roucy <maxime1986@users.sourceforge.net>
538  */
539  { "Acer", 0x0502, "Iconia TAB A500 (ID1)", 0x3325,
541  { "Acer", 0x0502, "Iconia TAB A500 (ID2)", 0x3341,
543  { "Acer", 0x0502, "Iconia TAB A501 (ID1)", 0x3344,
545  { "Acer", 0x0502, "Iconia TAB A501 (ID2)", 0x3345,
547  { "Acer", 0x0502, "Iconia TAB A100 (ID1)", 0x3348,
549  { "Acer", 0x0502, "Iconia TAB A100 (ID2)", 0x3349,
551  { "Acer", 0x0502, "Iconia TAB A101 (ID1)", 0x334a,
553  { "Acer", 0x0502, "Iconia TAB A700", 0x3378,
555  { "Acer", 0x0502, "Iconia TAB A200 (ID1)", 0x337c,
557  { "Acer", 0x0502, "Iconia TAB A200 (ID2)", 0x337d,
559  { "Acer", 0x0502, "Iconia TAB A510 (ID1)", 0x3389,
561  { "Acer", 0x0502, "Iconia TAB A510 (ID2)", 0x338a,
563  { "Acer", 0x0502, "S500 CloudMobile", 0x33aa,
565  { "Acer", 0x0502, "E350 Liquid Gallant Duo (ID1)", 0x33c3,
567  { "Acer", 0x0502, "E350 Liquid Gallant Duo (ID2)", 0x33c4,
569  { "Acer", 0x0502, "Iconia TAB A210", 0x33cb,
571  { "Acer", 0x0502, "Iconia TAB A110", 0x33d8,
573  { "Acer", 0x0502, "Liquid Z120 MT65xx Android Phone", 0x3473,
575  /* https://sourceforge.net/p/libmtp/bugs/1029/ */
576  { "Acer", 0x0502, "Liquid E2", 0x3514,
578  { "Acer", 0x0502, "Iconia A1-810", 0x353c,
580  { "Acer", 0x0502, "Liquid Z130 MT65xx Android Phone", 0x355f,
582  /* https://sourceforge.net/p/libmtp/bugs/1206/ */
583  { "Acer", 0x0502, "Iconia A3-A11", 0x3586,
585  /* https://sourceforge.net/p/libmtp/bugs/1103/ */
586  { "Acer", 0x0502, "Liquid E3", 0x35a8,
588  /* https://sourceforge.net/p/libmtp/bugs/1147/ */
589  { "Acer", 0x0502, "Z150", 0x35e4,
591  /* https://sourceforge.net/p/libmtp/bugs/1184/ */
592  { "Acer", 0x0502, "Liquid X1", 0x3609,
594  /* https://sourceforge.net/p/libmtp/bugs/1298/ */
595  { "Acer", 0x0502, "Z160", 0x361d,
597  { "Acer", 0x0502, "Iconia A1-840FHD", 0x362d,
599  /* https://sourceforge.net/p/libmtp/bugs/1251/ */
600  { "Acer", 0x0502, "E39", 0x3643,
602  /* https://sourceforge.net/p/libmtp/bugs/1369/ */
603  { "Acer", 0x0502, "liquid e700", 0x3644,
605  { "Acer", 0x0502, "One 7", 0x3657,
607  /* https://sourceforge.net/p/libmtp/support-requests/183/ */
608  { "Acer", 0x0502, "Z200", 0x3683,
610  /* https://sourceforge.net/p/libmtp/bugs/1579/ */
611  { "Acer", 0x0502, "A1-841", 0x365e,
613  /* https://sourceforge.net/p/libmtp/bugs/1341/ */
614  { "Acer", 0x0502, "Liquid S56", 0x3725,
616  /* https://sourceforge.net/p/libmtp/support-requests/228/ */
617  { "Acer", 0x0502, "Liquid Z220 (ID1)", 0x374f,
619  /* https://sourceforge.net/p/libmtp/support-requests/188/ */
620  { "Acer", 0x0502, "Liquid Z220 (ID2)", 0x3750,
622  /* https://sourceforge.net/p/libmtp/bugs/1478/ */
623  { "Acer", 0x0502, "Liquid Z330", 0x3750,
625  /* https://sourceforge.net/p/libmtp/bugs/1552/ */
626  { "Acer", 0x0502, "Liquid Z630", 0x37ef,
628  /* https://sourceforge.net/p/libmtp/bugs/1469/ */
629  { "Acer", 0x0502, "Z530", 0x3822,
631  /* https://sourceforge.net/p/libmtp/bugs/1534/ */
632  { "Acer", 0x0502, "Z530 16GB", 0x3823,
634  /* Reported by Jocelyn Mayer <l_indien@magic.fr> */
635  { "Acer", 0x0502, "Iconia One 10", 0x3841,
637  /* https://sourceforge.net/p/libmtp/support-requests/279/ */
638  { "Acer", 0x0502, "B3-A20", 0x3841,
640  /* https://sourceforge.net/p/libmtp/feature-requests/298/ */
641  { "Acer", 0x0502, "A3-A40", 0x387a,
643  /* https://sourceforge.net/p/libmtp/bugs/1733/ */
644  { "Acer", 0x0502, "Liquid Zest 4G", 0x38a5,
646  /* Mia */
647  { "Acer", 0x0502, "Liquid Zest Plus", 0x38bb,
649  /* Richard Waterbeek <richard@fotobakje.nl> on libmtp-discuss */
650  { "Acer", 0x0502, "Liquid Liquid Z6E", 0x3938,
652  /* https://sourceforge.net/p/libmtp/bugs/1838/ */
653  { "Acer", 0x0502, "Iconia One 10 B3-A40 ", 0x394b,
655 
656  /*
657  * SanDisk
658  * several devices (c150 for sure) are definately dual-mode and must
659  * have the USB mass storage driver that hooks them unloaded first.
660  * They all have problematic dual-mode making the device unload effect
661  * uncertain on these devices.
662  *
663  * All older devices seem to need DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL.
664  * Old chipsets: e200/c200 use PP5024 from Nvidia (formerly PortalPlayer).
665  * m200 use TCC770 from Telechips.
666  *
667  * The newer Sansa v2 chipset, AD3525 from Austriamicrosystems (AMS) found
668  * in e280 v2 c200 v2, Clip, Fuze etc require
669  * DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST
670  * and DEVICE_FLAG_ALWAYS_PROBE_DESCRIPTOR to work properly.
671  *
672  * For more info see: http://daniel.haxx.se/sansa/v2.html
673  */
674  // Reported by Brian Robison
675  { "SanDisk", 0x0781, "Sansa m230/m240", 0x7400,
678  // From Rockbox device listing
679  { "SanDisk", 0x0781, "Sansa m200-tcc (MTP mode)", 0x7401,
682  // Reported by tangent_@users.sourceforge.net
683  { "SanDisk", 0x0781, "Sansa c150", 0x7410,
686  // From libgphoto2 source
687  // Reported by <gonkflea@users.sourceforge.net>
688  // Reported by Mike Owen <mikeowen@computerbaseusa.com>
689  { "SanDisk", 0x0781, "Sansa e200/e250/e260/e270/e280", 0x7420,
692  // Don't add 0x7421 as this is e280 in MSC mode
693  // Reported by XNJB user
694  { "SanDisk", 0x0781, "Sansa e260/e280 v2", 0x7422,
698  // Reported by XNJB user
699  { "SanDisk", 0x0781, "Sansa m240/m250", 0x7430,
702  // Reported by Eugene Brevdo <ebrevdo@princeton.edu>
703  { "SanDisk", 0x0781, "Sansa Clip", 0x7432,
707  // Reported by HackAR <hackar@users.sourceforge.net>
708  { "SanDisk", 0x0781, "Sansa Clip v2", 0x7434,
712  // Reported by anonymous user at sourceforge.net
713  { "SanDisk", 0x0781, "Sansa c240/c250", 0x7450,
716  // Reported by anonymous SourceForge user
717  { "SanDisk", 0x0781, "Sansa c250 v2", 0x7452,
720  // Reported by Troy Curtis Jr.
721  { "SanDisk", 0x0781, "Sansa Express", 0x7460,
724  // Reported by XNJB user, and Miguel de Icaza <miguel@gnome.org>
725  // This has no dual-mode so no need to unload any driver.
726  // This is a Linux based device!
727  { "SanDisk", 0x0781, "Sansa Connect", 0x7480, DEVICE_FLAG_NONE },
728  // Reported by anonymous SourceForge user
729  { "SanDisk", 0x0781, "Sansa View", 0x74b0,
732  // Reported by Patrick <skibler@gmail.com>
733  // There are apparently problems with this device.
734  { "SanDisk", 0x0781, "Sansa Fuze", 0x74c0,
739  // Harry Phillips <tuxcomputers@users.sourceforge.net>
740  { "SanDisk", 0x0781, "Sansa Fuze v2", 0x74c2,
745  // Reported by anonymous SourceForge user
746  // Need BROKEN_SET_SAMPLE_DIMENSIONS accordning to
747  // Michael <mpapet@users.sourceforge.net>
748  { "SanDisk", 0x0781, "Sansa Clip+", 0x74d0,
753  // Reported by anonymous SourceForge user
754  { "SanDisk", 0x0781, "Sansa Fuze+", 0x74e0,
759  // Reported by mattyj2001@users.sourceforge.net
760  { "SanDisk", 0x0781, "Sansa Clip Zip", 0x74e4,
765 
766  /*
767  * iRiver
768  * we assume that PTP_OC_MTP_GetObjPropList is essentially
769  * broken on all iRiver devices, meaning it simply won't return
770  * all properties for a file when asking for metadata 0xffffffff.
771  * Please test on your device if you believe it isn't broken!
772  */
773  { "iRiver", 0x1006, "H300 Series MTP", 0x3004,
776  { "iRiver", 0x1006, "Portable Media Center 1", 0x4002,
779  { "iRiver", 0x1006, "Portable Media Center 2", 0x4003,
782  // From [st]anislav <iamstanislav@gmail.com>
783  { "iRiver", 0x1042, "T7 Volcano", 0x1143, DEVICE_FLAG_IRIVER_OGG_ALZHEIMER },
784  // From an anonymous person at SourceForge, uncertain about this one
785  { "iRiver", 0x4102, "iFP-880", 0x1008,
788  // 0x4102, 0x1042 is a USB mass storage mode for E100 v2/Lplayer
789  // From libgphoto2 source
790  { "iRiver", 0x4102, "T10", 0x1113,
793  { "iRiver", 0x4102, "T20 FM", 0x1114,
796  // This appears at the MTP-UMS site
797  { "iRiver", 0x4102, "T20", 0x1115,
800  { "iRiver", 0x4102, "U10", 0x1116,
803  { "iRiver", 0x4102, "T10b", 0x1117,
806  { "iRiver", 0x4102, "T20b", 0x1118,
809  { "iRiver", 0x4102, "T30", 0x1119,
812  // Reported by David Wolpoff
813  { "iRiver", 0x4102, "T10 2GB", 0x1120,
816  // Rough guess this is the MTP device ID...
817  { "iRiver", 0x4102, "N12", 0x1122,
820  // Reported by Philip Antoniades <philip@mysql.com>
821  // Newer iriver devices seem to have shaped-up firmware without any
822  // of the annoying bugs.
823  { "iRiver", 0x4102, "Clix2", 0x1126, DEVICE_FLAG_NONE },
824  // Reported by Adam Torgerson
825  { "iRiver", 0x4102, "Clix", 0x112a,
827  // Reported by Douglas Roth <dougaus@gmail.com>
828  { "iRiver", 0x4102, "X20", 0x1132,
831  // Reported by Robert Ugo <robert_ugo@users.sourceforge.net>
832  { "iRiver", 0x4102, "T60", 0x1134,
835  // Reported by two anonymous SourceForge users
836  // Needs the stronger OGG_IS_UNKNOWN flag to support OGG properly,
837  // be aware of newer players that may be needing this too.
838  { "iRiver", 0x4102, "E100", 0x1141,
841  // Reported by anonymous SourceForge user
842  // Need verification of whether this firmware really need all these flags
843  { "iRiver", 0x4102, "E100 v2/Lplayer", 0x1142,
846  // Reported by Richard Vennemann <vennemann@users.sourceforge.net>
847  // In USB Mass Storage mode it is 0x4102/0x1047
848  // Seems to use the new shaped-up firmware.
849  { "iRiver", 0x4102, "Spinn", 0x1147, DEVICE_FLAG_NONE },
850  // Reported by Tony Janssen <tonyjanssen@users.sourceforge.net>
851  { "iRiver", 0x4102, "E50", 0x1151,
854  // Reported by anonymous SourceForge user, guessing on flags
855  { "iRiver", 0x4102, "E150", 0x1152,
858  // Reported by Jakub Matraszek <jakub.matraszek@gmail.com>
859  { "iRiver", 0x4102, "T5", 0x1153,
862  // Reported by pyalex@users.sourceforge.net
863  // Guessing that this needs the FLAG_NO_ZERO_READS...
864  { "iRiver", 0x4102, "E30", 0x1167,
867  /* https://sourceforge.net/p/libmtp/bugs/1766/ */
868  { "iRiver", 0x4102, "AK380", 0x1195,
871  /* https://sourceforge.net/p/libmtp/bugs/1634/
872  * copying flags from above */
873  { "iRiver", 0x4102, "AK70", 0x1200,
876  /* https://bugzilla.suse.com/show_bug.cgi?id=1176588 ... */
877  { "A&K", 0x4102, "SR15", 0x1213,
880  // Reported by Scott Call
881  // Assume this actually supports OGG though it reports it doesn't.
882  { "iRiver", 0x4102, "H10 20GB", 0x2101,
885  { "iRiver", 0x4102, "H10 5GB", 0x2102,
888  // From Rockbox device listing
889  { "iRiver", 0x4102, "H10 5.6GB", 0x2105,
892 
893 
894  /*
895  * Dell
896  */
897  { "Dell Inc", 0x413c, "DJ Itty", 0x4500,
899  /* Reported by: JR */
900  { "Dell Inc", 0x413c, "Dell Streak 7", 0xb10b,
902  { "Dell Inc", 0x413c, "Dell Venue 7 inch", 0xb11a,
904  { "Dell Inc", 0x413c, "Dell Venue 7 inch (2nd ID)", 0xb11b,
906 
907  /*
908  * Toshiba
909  * Tentatively flagged all Toshiba devices with
910  * DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST after one of them
911  * showed erroneous behaviour.
912  */
913  { "Toshiba", 0x0930, "Gigabeat MEGF-40", 0x0009,
916  { "Toshiba", 0x0930, "Gigabeat", 0x000c,
919  // Reported by Nicholas Tripp
920  { "Toshiba", 0x0930, "Gigabeat P20", 0x000f,
923  // From libgphoto2
924  { "Toshiba", 0x0930, "Gigabeat S", 0x0010,
928  // Reported by Rob Brown
929  { "Toshiba", 0x0930, "Gigabeat P10", 0x0011,
932  // Reported by solanum@users.sourceforge.net
933  { "Toshiba", 0x0930, "Gigabeat V30", 0x0014,
936  // Reported by Michael Davis <slithy@yahoo.com>
937  { "Toshiba", 0x0930, "Gigabeat U", 0x0016,
940  // Reported by Devon Jacobs <devo@godevo.com>
941  { "Toshiba", 0x0930, "Gigabeat MEU202", 0x0018,
944  // Reported by Rolf <japan (at) dl3lar.de>
945  { "Toshiba", 0x0930, "Gigabeat T", 0x0019,
948  // Reported by Phil Ingram <ukpbert@users.sourceforge.net>
949  // Tentatively added - no real reports of this device ID being MTP,
950  // reports as USB Mass Storage currently.
951  { "Toshiba", 0x0930, "Gigabeat MEU201", 0x001a,
954  // Reported by anonymous SourceForge user
955  { "Toshiba", 0x0930, "Gigabeat MET401", 0x001d,
958  // Reported by Andree Jacobson <nmcandree@users.sourceforge.net>
959  { "Toshiba", 0x0930, "Excite AT300", 0x0963,
961  /* https://sourceforge.net/p/libmtp/bugs/1557/ */
962  { "Toshiba", 0x0930, "Excite AT200", 0x0960,
964  // Reported by Nigel Cunningham <nigel@tuxonice.net>
965  // Guessing on Android bugs
966  { "Toshiba", 0x0930, "Thrive AT100/AT105", 0x7100,
968 
969  /*
970  * Archos
971  * These devices have some dual-mode interfaces which will really
972  * respect the driver unloading, so DEVICE_FLAG_UNLOAD_DRIVER
973  * really work on these devices!
974  *
975  * Devices reported by:
976  * Archos
977  * Alexander Haertig <AlexanderHaertig@gmx.de>
978  * Jan Binder
979  * gudul1@users.sourceforge.net
980  * Etienne Chauchot <chauchot.etienne@free.fr>
981  * Kay McCormick <kaym@modsystems.com>
982  * Joe Rabinoff
983  * Jim Krehl <jimmuhk@users.sourceforge.net>
984  * Adrien Guichard <tmor@users.sourceforge.net>
985  * Clément <clemvangelis@users.sourceforge.net>
986  * Thackert <hackertenator@users.sourceforge.net>
987  * Till <Till@users.sourceforge.net>
988  * Sebastien ROHAUT
989  */
990  { "Archos", 0x0e79, "Gmini XS100", 0x1207, DEVICE_FLAG_UNLOAD_DRIVER },
991  { "Archos", 0x0e79, "XS202 (MTP mode)", 0x1208, DEVICE_FLAG_NONE },
992  { "Archos", 0x0e79, "104 (MTP mode)", 0x120a, DEVICE_FLAG_NONE },
993  { "Archos", 0x0e79, "204 (MTP mode)", 0x120c, DEVICE_FLAG_UNLOAD_DRIVER },
994  { "Archos", 0x0e79, "404 (MTP mode)", 0x1301, DEVICE_FLAG_UNLOAD_DRIVER },
995  { "Archos", 0x0e79, "404CAM (MTP mode)", 0x1303, DEVICE_FLAG_UNLOAD_DRIVER },
996  { "Archos", 0x0e79, "504 (MTP mode)", 0x1307, DEVICE_FLAG_UNLOAD_DRIVER },
997  { "Archos", 0x0e79, "604 (MTP mode)", 0x1309, DEVICE_FLAG_UNLOAD_DRIVER },
998  { "Archos", 0x0e79, "604WIFI (MTP mode)", 0x130b, DEVICE_FLAG_UNLOAD_DRIVER },
999  { "Archos", 0x0e79, "704 mobile dvr", 0x130d, DEVICE_FLAG_UNLOAD_DRIVER },
1000  { "Archos", 0x0e79, "704TV (MTP mode)", 0x130f, DEVICE_FLAG_UNLOAD_DRIVER },
1001  { "Archos", 0x0e79, "405 (MTP mode)", 0x1311, DEVICE_FLAG_UNLOAD_DRIVER },
1002  { "Archos", 0x0e79, "605 (MTP mode)", 0x1313, DEVICE_FLAG_UNLOAD_DRIVER },
1003  { "Archos", 0x0e79, "605F (MTP mode)", 0x1315, DEVICE_FLAG_UNLOAD_DRIVER },
1004  { "Archos", 0x0e79, "705 (MTP mode)", 0x1319, DEVICE_FLAG_UNLOAD_DRIVER },
1005  { "Archos", 0x0e79, "TV+ (MTP mode)", 0x131b, DEVICE_FLAG_UNLOAD_DRIVER },
1006  { "Archos", 0x0e79, "105 (MTP mode)", 0x131d, DEVICE_FLAG_UNLOAD_DRIVER },
1007