diff options
author | Marcus Meissner <marcus@jet.franken.de> | 2011-11-27 19:12:38 +0000 |
---|---|---|
committer | Marcus Meissner <marcus@jet.franken.de> | 2011-11-27 19:12:38 +0000 |
commit | 5bf7ee7671abe771c00c9c79394c6937a1a13b28 (patch) | |
tree | 9294829ff770f710ba9007cf8e965599363004ed | |
parent | e8d9517a24a982d00f75ae5fa8eb419701676c4e (diff) | |
download | libgphoto2-5bf7ee7671abe771c00c9c79394c6937a1a13b28.tar.gz |
imported from libmtp
git-svn-id: https://svn.code.sf.net/p/gphoto/code/branches/libgphoto2-2_4/libgphoto2@13781 67ed7778-7388-44ab-90cf-0a291f65f57c
-rw-r--r-- | camlibs/ptp2/device-flags.h | 24 | ||||
-rw-r--r-- | camlibs/ptp2/music-players.h | 260 |
2 files changed, 221 insertions, 63 deletions
diff --git a/camlibs/ptp2/device-flags.h b/camlibs/ptp2/device-flags.h index e8bb6cbed..b98829def 100644 --- a/camlibs/ptp2/device-flags.h +++ b/camlibs/ptp2/device-flags.h @@ -65,9 +65,10 @@ */ #define DEVICE_FLAG_UNLOAD_DRIVER 0x00000002 /** - * This means that the PTP_OC_MTP_GetObjPropList is broken and - * won't properly return all object properties if parameter 3 - * is set to 0xFFFFFFFFU. + * This means that the PTP_OC_MTP_GetObjPropList (9805) + * is broken in some way, either it doesn't work at all + * (as for Android devices) or it won't properly return all + * object properties if parameter 3 is set to 0xFFFFFFFFU. */ #define DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST 0x00000004 /** @@ -266,3 +267,20 @@ * like this, so it's not done by default. */ #define DEVICE_FLAG_FORCE_RESET_ON_CLOSE 0x10000000 +/** + * Early Creative Zen (etc) models actually only support + * command 9805 (Get object property list) and will hang + * if you try to get individual properties of an object. + */ +#define DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL 0x20000000 +/** + * All these bug flags need to be set on Android devices, + * they claim to support MTP operations they actually + * cannot handle, especially 9805 (Get object property list). + * These are auto-assigned to devices reporting + * "android.com" in their device extension descriptor. + */ +#define DEVICE_FLAGS_ANDROID_BUGS \ + (DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | \ + DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST | \ + DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST) diff --git a/camlibs/ptp2/music-players.h b/camlibs/ptp2/music-players.h index 792f2bb8c..7a686b819 100644 --- a/camlibs/ptp2/music-players.h +++ b/camlibs/ptp2/music-players.h @@ -45,45 +45,79 @@ * some of the folders will start to disappear when getting all objects * and properties. */ - { "Creative", 0x041e, "ZEN Vision", 0x411f, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "Portable Media Center", 0x4123, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "ZEN Xtra (MTP mode)", 0x4128, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Dell", 0x041e, "DJ (2nd generation)", 0x412f, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "ZEN Micro (MTP mode)", 0x4130, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "ZEN Touch (MTP mode)", 0x4131, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Dell", 0x041e, "Dell Pocket DJ (MTP mode)", 0x4132, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "ZEN MicroPhoto (alternate version)", 0x4133, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "ZEN Sleek (MTP mode)", 0x4137, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "ZEN MicroPhoto", 0x413c, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "ZEN Sleek Photo", 0x413d, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, - { "Creative", 0x041e, "ZEN Vision:M", 0x413e, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + { "Creative", 0x041e, "ZEN Vision", 0x411f, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "Portable Media Center", 0x4123, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "ZEN Xtra (MTP mode)", 0x4128, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Dell", 0x041e, "DJ (2nd generation)", 0x412f, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "ZEN Micro (MTP mode)", 0x4130, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "ZEN Touch (MTP mode)", 0x4131, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Dell", 0x041e, "Dell Pocket DJ (MTP mode)", 0x4132, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "ZEN MicroPhoto (alternate version)", 0x4133, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "ZEN Sleek (MTP mode)", 0x4137, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "ZEN MicroPhoto", 0x413c, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "ZEN Sleek Photo", 0x413d, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, + { "Creative", 0x041e, "ZEN Vision:M", 0x413e, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, // Reported by marazm@o2.pl - { "Creative", 0x041e, "ZEN V", 0x4150, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + { "Creative", 0x041e, "ZEN V", 0x4150, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, // Reported by danielw@iinet.net.au // This version of the Vision:M needs the no release interface flag, // unclear whether the other version above need it too or not. - { "Creative", 0x041e, "ZEN Vision:M (DVP-HD0004)", 0x4151, + { "Creative", 0x041e, "ZEN Vision:M (DVP-HD0004)", 0x4151, DEVICE_FLAG_NO_RELEASE_INTERFACE | - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL}, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, // Reported by Darel on the XNJB forums { "Creative", 0x041e, "ZEN V Plus", 0x4152, - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, { "Creative", 0x041e, "ZEN Vision W", 0x4153, - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, // Don't add 0x4155: this is a Zen Stone device which is not MTP // Reported by Paul Kurczaba <paul@kurczaba.com> - { "Creative", 0x041e, "ZEN", 0x4157, DEVICE_FLAG_IGNORE_HEADER_ERRORS | - DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS | - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + { "Creative", 0x041e, "ZEN", 0x4157, + DEVICE_FLAG_IGNORE_HEADER_ERRORS | + DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS | + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, // Reported by Ringofan <mcroman@users.sourceforge.net> { "Creative", 0x041e, "ZEN V 2GB", 0x4158, - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, // Reported by j norment <stormzen@gmail.com> { "Creative", 0x041e, "ZEN Mozaic", 0x4161, - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, // Reported by Aaron F. Gonzalez <sub_tex@users.sourceforge.net> { "Creative", 0x041e, "ZEN X-Fi", 0x4162, - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL }, // Reported by Todor Gyumyushev <yodor1@users.sourceforge.net> { "ZiiLABS", 0x041e, "Zii EGG", 0x6000, DEVICE_FLAG_UNLOAD_DRIVER | @@ -119,7 +153,7 @@ // get all objects with the getobjectproplist command.. { "Samsung", 0x04e8, "YH-820", 0x502e, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, // Contributed by polux2001@users.sourceforge.net - { "Samsung", 0x04e8, "YH-925(-GS)", 0x502f, DEVICE_FLAG_UNLOAD_DRIVER | + { "Samsung", 0x04e8, "YH-925(-GS)", 0x502f, DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, // Contributed by anonymous person on SourceForge { "Samsung", 0x04e8, "YH-J70J", 0x5033, DEVICE_FLAG_UNLOAD_DRIVER }, @@ -222,6 +256,12 @@ { "Samsung", 0x04e8, "YP-Q3", 0x5130, DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_OGG_IS_UNKNOWN | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | DEVICE_FLAG_PLAYLIST_SPL_V1 }, + // Reported by: traaf <traaf@users.sourceforge.net> + // Guessing on the playlist type! + // Appears to present itself properly as a PTP device with MTP extensions! + { "Samsung", 0x04e8, "YP-Z3", 0x5137, DEVICE_FLAG_UNLOAD_DRIVER | + DEVICE_FLAG_OGG_IS_UNKNOWN | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | + DEVICE_FLAG_PLAYLIST_SPL_V1 }, // From a rouge .INF file // this device ID seems to have been recycled for: // the Samsung SGH-A707 Cingular cellphone @@ -254,8 +294,11 @@ // Guessing on .spl flag, maybe needs NO_ZERO_READS, whatdoIknow { "Samsung", 0x04e8, "GT-S8500", 0x6819, DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_PLAYLIST_SPL_V1 }, - // Reported by anonymous sourceforge user - { "Samsung", 0x04e8, "GT-P7510/Galaxy Tab 10.1", 0x6860, + // Reported by anonymous sourceforge user - this is an Android + // device. It seems to be hard to use this device under Linux, + // which may be because it seems to implement fairly strong + // Microsoft DRM stuff. + { "Samsung", 0x04e8, "GT-P7510/Galaxy Tab 10.1/S2", 0x6860, DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_LONG_TIMEOUT }, // From: Erik Berglund <erikjber@users.sourceforge.net> @@ -348,10 +391,15 @@ // From Anonymous SourceForge User { "Philips", 0x0471, "GoGear VIBE SA2VBE[08|16]K/02", 0x20b7, DEVICE_FLAG_UNLOAD_DRIVER }, + // From Anonymous SourceForge User + { "Philips", 0x0471, "GoGear Ariaz", 0x20b9, + DEVICE_FLAG_UNLOAD_DRIVER }, + // From Anonymous SourceForge User + { "Philips", 0x0471, "GoGear Vibe/02", 0x20e5, + DEVICE_FLAG_UNLOAD_DRIVER }, // from XNJB user { "Philips", 0x0471, "PSA235", 0x7e01, DEVICE_FLAG_NONE }, - /* * Acer */ @@ -359,7 +407,8 @@ { "Acer", 0x0502, "Iconia TAB A500 v1", 0x3325, DEVICE_FLAG_NONE }, // Reported by: Franck VDL <franckv@users.sourceforge.net> { "Acer", 0x0502, "Iconia TAB A500 v2", 0x3341, DEVICE_FLAG_NONE }, - + // Reported by: Arvin Schnell <arvins@users.sourceforge.net> + { "Acer", 0x0502, "Iconia TAB A100", 0x3349, DEVICE_FLAG_NONE }, /* * SanDisk @@ -464,7 +513,12 @@ DEVICE_FLAG_NO_RELEASE_INTERFACE | DEVICE_FLAG_ALWAYS_PROBE_DESCRIPTOR | DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS | DEVICE_FLAG_CANNOT_HANDLE_DATEMODIFIED}, - + // Reported by mattyj2001@users.sourceforge.net + { "SanDisk", 0x0781, "Sansa Clip Zip", 0x74e4, + DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | + DEVICE_FLAG_NO_RELEASE_INTERFACE | DEVICE_FLAG_ALWAYS_PROBE_DESCRIPTOR | + DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS | + DEVICE_FLAG_CANNOT_HANDLE_DATEMODIFIED}, /* * iRiver @@ -581,6 +635,8 @@ * Dell */ { "Dell, Inc", 0x413c, "DJ Itty", 0x4500, DEVICE_FLAG_NONE }, + /* Reported by: JR */ + { "Dell, Inc", 0x413c, "Dell Streak 7", 0xb10b, DEVICE_FLAGS_ANDROID_BUGS }, /* * Toshiba @@ -667,6 +723,8 @@ { "Archos", 0x0e79, "SPOD (MTP mode)", 0x1341, DEVICE_FLAG_UNLOAD_DRIVER }, { "Archos", 0x0e79, "5S IT (MTP mode)", 0x1351, DEVICE_FLAG_UNLOAD_DRIVER }, { "Archos", 0x0e79, "5H IT (MTP mode)", 0x1357, DEVICE_FLAG_UNLOAD_DRIVER }, + // Reported by Till <Till@users.sourceforge.net> + { "Archos", 0x0e79, "101 G9", 0x1528, DEVICE_FLAG_UNLOAD_DRIVER }, /* * Dunlop (OEM of EGOMAN ltd?) reported by Nanomad @@ -675,6 +733,10 @@ * so on older kernels special care is needed to remove the * USB mass storage driver that erroneously binds to the device * interface. + * + * More problematic, this manufacturer+device ID seems to be + * reused in a USB Mass Storage device named "Zipy Fox 8GB", + * which means libmtp may mistreat it. */ { "Dunlop", 0x10d6, "MP3 player 1GB / EGOMAN MD223AFD", 0x2200, DEVICE_FLAG_UNLOAD_DRIVER}, // Reported by Steven Black <stevenblack1956@users.sourceforge.net> @@ -748,6 +810,9 @@ // this flag atleast is needed { "Nokia", 0x0421, "5800 XpressMusic v2", 0x0155, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + // Yet another version... I think + { "Nokia", 0x0421, "5800 XpressMusic v3", 0x0159, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, // From an anonymous SourceForge user // Not verified to be MTP { "Nokia", 0x0421, "E63", 0x0179, DEVICE_FLAG_NONE }, @@ -779,8 +844,12 @@ { "Nokia", 0x0421, "N8", 0x02fe, DEVICE_FLAG_NONE }, // From: Lan Liu at Nokia <lan.liu@nokia.com> { "Nokia", 0x0421, "N8 (Ovi mode)", 0x0302, DEVICE_FLAG_NONE }, + // From: Martijn Hoogendoorn <m.hoogendoorn@gmail.com> + { "Nokia", 0x0421, "E7", 0x0334, DEVICE_FLAG_NONE }, // From: Raul Metsma <raul@innovaatik.ee> - { "Nokia", 0x0421, "E7", 0x0335, DEVICE_FLAG_NONE }, + { "Nokia", 0x0421, "E7 (Ovi mode)", 0x0335, DEVICE_FLAG_NONE }, + // Reported by Anonymous SourceForge user + { "Nokia", 0x0421, "N950", 0x03d2, DEVICE_FLAG_NONE }, // From: http://nds2.nokia.com/files/support/global/phones/software/Nokia_3250_WMP10_driver.inf { "Nokia", 0x0421, "3250 Mobile Phone", 0x0462, DEVICE_FLAG_NONE }, // From http://nds2.nokia.com/files/support/global/phones/software/Nokia_N93_WMP10_Driver.inf @@ -1114,6 +1183,14 @@ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | DEVICE_FLAG_UNIQUE_FILENAMES | DEVICE_FLAG_FORCE_RESET_ON_CLOSE }, + // Reported by anonymous SourceForge user + { "Sony", 0x054c, "Walkman NWZ-W252B", 0x04bb, + DEVICE_FLAG_UNLOAD_DRIVER | + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | + DEVICE_FLAG_UNIQUE_FILENAMES | + DEVICE_FLAG_FORCE_RESET_ON_CLOSE }, + // Suspect this device has strong DRM features + // See https://answers.launchpad.net/ubuntu/+source/libmtp/+question/149587 { "Sony", 0x054c, "Walkman NWZ-B153F", 0x04be, DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | @@ -1143,47 +1220,80 @@ * for now. */ // Reported by Thomas Schweitzer <thomas_-_s@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "K550i", 0xe000, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "K550i", 0xe000, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Øyvind Stegard <stegaro@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "K850i", 0x0075, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "K850i", 0x0075, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Michael Eriksson - { "SonyEricsson", 0x0fce, "W910", 0x0076, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "W910", 0x0076, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Zack <zackdvd@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "W890i", 0x00b3, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "W890i", 0x00b3, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by robert dot ahlskog at gmail - { "SonyEricsson", 0x0fce, "W760i", 0x00c6, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "W760i", 0x00c6, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Linus Åkesson <linusakesson@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "C902", 0x00d4, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "C902", 0x00d4, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by an anonymous SourceForge user - { "SonyEricsson", 0x0fce, "C702", 0x00d9, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "C702", 0x00d9, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Christian Zuckschwerdt <christian@zuckschwerdt.org> - { "SonyEricsson", 0x0fce, "W980", 0x00da, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "W980", 0x00da, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by David Taylor <davidt-libmtp@yadt.co.uk> - { "SonyEricsson", 0x0fce, "C905", 0x00ef, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "C905", 0x00ef, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by David House <dmhouse@users.sourceforge.net> { "SonyEricsson", 0x0fce, "W595", 0x00f3, - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST }, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | + DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST }, // Reported by Mattias Evensson <mevensson@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "W902", 0x00f5, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "W902", 0x00f5, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Sarunas <sarunas@users.sourceforge.net> // Doesn't need any flags according to reporter - { "SonyEricsson", 0x0fce, "T700", 0x00fb, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, + { "SonyEricsson", 0x0fce, "T700", 0x00fb, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL }, // Reported by Stéphane Pontier <shadow_walker@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "W705/W715", 0x0105, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "W705/W715", 0x0105, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Håkan Kvist - { "SonyEricsson", 0x0fce, "W995", 0x0112, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "W995", 0x0112, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by anonymous SourceForge user - { "SonyEricsson", 0x0fce, "U5", 0x0133, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "U5", 0x0133, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Flo <lhugsereg@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "U8i", 0x013a, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "U8i", 0x013a, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by xirotyu <xirotyu@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "j10i2 (Elm)", 0x0144, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "j10i2 (Elm)", 0x0144, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + // Reported by Serge Chirik <schirik@users.sourceforge.net> + { "SonyEricsson", 0x0fce, "j108i (Cedar)", 0x014e, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Jonas Salling <> // Erroneous MTP implementation seems to be from Aricent, returns // broken transaction ID. - { "SonyEricsson", 0x0fce, "LT15i (Xperia arc)", 0x14f, DEVICE_FLAG_IGNORE_HEADER_ERRORS }, + { "SonyEricsson", 0x0fce, "LT15i (Xperia arc)", 0x14f, + DEVICE_FLAG_IGNORE_HEADER_ERRORS }, + // Reported by Eamonn Webster <eweb@users.sourceforge.net> + // Guessing on the ignore errors flag + { "SonyEricsson", 0x0fce, "Xperia Neo", 0x0156, + DEVICE_FLAG_IGNORE_HEADER_ERRORS }, + // Reported by <wealas@users.sourceforge.net> + { "SonyEricsson", 0x0fce, "ST18a", 0x161, + DEVICE_FLAG_IGNORE_HEADER_ERRORS }, // Reported by Jonas Nyrén <spectralmks@users.sourceforge.net> - { "SonyEricsson", 0x0fce, "W302", 0x10c8, DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + { "SonyEricsson", 0x0fce, "W302", 0x10c8, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + // Reported by Anonymous Sourceforge user + { "SonyEricsson", 0x0fce, "j10i (Elm)", 0xd144, + DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, + /* @@ -1210,7 +1320,8 @@ DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST }, // Reported by Marcus Meissner to libptp2 - { "Motorola", 0x22b8, "K1", 0x4811, DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST }, + { "Motorola", 0x22b8, "IdeaPad K1", 0x4811, + DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST }, // Reported by Hans-Joachim Baader <hjb@pro-linux.de> to libptp2 { "Motorola", 0x22b8, "A1200", 0x60ca, DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST }, @@ -1223,16 +1334,23 @@ // Reported by Google Inc's Yavor Goulishev <yavor@google.com> // Android 3.0 MTP stack seems to announce that it supports the // list operations, but they do not work? - { "Motorola", 0x22b8, "Xoom (ID 1)", 0x70a8, - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | - DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST | - DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST }, - { "Motorola", 0x22b8, "Xoom (ID 2)", 0x70a9, - DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST | - DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST | - DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST }, + { "Motorola", 0x22b8, "Xoom (ID 1)", 0x70a8, DEVICE_FLAGS_ANDROID_BUGS }, /* + * Google + * These guys lend their Vendor ID to anyone who comes down the + * road to produce an Android tablet it seems... The Vendor ID + * was originally used for Nexus phones + */ + { "Google Inc (for Sony)", 0x18d1, "S1", 0x05b3, + DEVICE_FLAGS_ANDROID_BUGS }, + // WiFi-only version of Xoom + // See: http://bugzilla.gnome.org/show_bug.cgi?id=647506 + { "Google Inc (for Motorola)", 0x18d1, "Xoom (MZ604)", 0x70a8, + DEVICE_FLAGS_ANDROID_BUGS }, + { "Google Inc (for Motorola)", 0x22b8, "Xoom (ID 2)", 0x70a9, + DEVICE_FLAGS_ANDROID_BUGS }, + /* * Media Keg */ // Reported by Rajan Bella <rajanbella@yahoo.com> @@ -1326,8 +1444,30 @@ /* * Asus */ - { "Asus", 0x0b05, "TF101 Eeepad Transformer", 0x4e0f, DEVICE_FLAG_NONE }, - { "Asus", 0x0b05, "FT101 Eeepad Transformer", 0x4e1f, DEVICE_FLAG_NONE }, + { "Asus", 0x0b05, "TF101 Eeepad Transformer", 0x4e0f, + DEVICE_FLAGS_ANDROID_BUGS }, + { "Asus", 0x0b05, "TF101 Eeepad Transformer (debug mode)", 0x4e1f, + DEVICE_FLAGS_ANDROID_BUGS }, + + + /* + * Lenovo + */ + // Reported by Richard Körber <shredzone@users.sourceforge.net> + { "Lenovo", 0x17ef, "K1", 0x740a, + DEVICE_FLAGS_ANDROID_BUGS }, + // Reported by anonymous sourceforge user + // Adding Android default bug flags since it appears to be an Android + { "Lenovo", 0x17ef, "ThinkPad Tablet", 0x741c, + DEVICE_FLAGS_ANDROID_BUGS }, + + + /* + * ZTE + * Android devices reported by junwang <lovewjlove@users.sourceforge.net> + */ + { "ZTE", 0x19d2, "V55 ID 1", 0x0244, DEVICE_FLAGS_ANDROID_BUGS }, + { "ZTE", 0x19d2, "V55 ID 2", 0x0245, DEVICE_FLAGS_ANDROID_BUGS }, /* * Other strange stuff. |