summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Enge <andreas@enge.fr>2015-09-19 23:19:32 +0200
committerAndreas Enge <andreas@enge.fr>2015-09-19 23:38:51 +0200
commite49b339608d63ea980c24fec01dc94cd59f19335 (patch)
tree2d10143f0e48a6bdc20fc5c96628856e5fed5c14
parentedb15985f1123e54199bac7228e49fb84371e0cb (diff)
downloadguix-e49b339608d63ea980c24fec01dc94cd59f19335.tar.gz
gnu: libmtp: Add additional MTP devices.
* gnu/packages/patches/libmtp-devices.patch: New file.
* gnu-system.am (dist_patch_DATA): Register patch.
* gnu/packages/patches/libmtp-devices.patch (libmtp)[source]: Add patch.
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/libusb.scm3
-rw-r--r--gnu/packages/patches/libmtp-devices.patch554
3 files changed, 557 insertions, 1 deletions
diff --git a/gnu-system.am b/gnu-system.am
index d3c63cad33..2d261315ef 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -518,6 +518,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/libbonobo-activation-test-race.patch	\
   gnu/packages/patches/libcanberra-sound-theme-freedesktop.patch \
   gnu/packages/patches/libevent-dns-tests.patch			\
+  gnu/packages/patches/libmtp-devices.patch			\
   gnu/packages/patches/liboop-mips64-deplibs-fix.patch		\
   gnu/packages/patches/liblxqt-include.patch			\
   gnu/packages/patches/libmad-armv7-thumb-pt1.patch		\
diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm
index e7f5b8b119..266669061e 100644
--- a/gnu/packages/libusb.scm
+++ b/gnu/packages/libusb.scm
@@ -96,7 +96,8 @@ version of libusb to run with newer libusb.")
                                  "/libmtp-" version ".tar.gz"))
              (sha256
                (base32
-                "12dinqic0ljnhrwx3rc61jc7q24ybr0mckc2ya5kh1s1np0d7w93"))))
+                "12dinqic0ljnhrwx3rc61jc7q24ybr0mckc2ya5kh1s1np0d7w93"))
+             (patches (list (search-patch "libmtp-devices.patch")))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/patches/libmtp-devices.patch b/gnu/packages/patches/libmtp-devices.patch
new file mode 100644
index 0000000000..9b985e526d
--- /dev/null
+++ b/gnu/packages/patches/libmtp-devices.patch
@@ -0,0 +1,554 @@
+Add additional devices; the patched file corresponds to git commit 8e471b,
+to which one additional device has been added as reported at
+   http://sourceforge.net/p/libmtp/bugs/1422/
+
+diff -u -r libmtp-1.1.9.orig/src/music-players.h libmtp-1.1.9/src/music-players.h
+--- libmtp-1.1.9.orig/src/music-players.h	2015-09-19 22:54:24.537330594 +0200
++++ libmtp-1.1.9/src/music-players.h	2015-09-19 23:16:41.079206331 +0200
+@@ -47,82 +47,61 @@
+    * and properties.
+    */
+   { "Creative", 0x041e, "ZEN Vision", 0x411f,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Creative", 0x041e, "Portable Media Center", 0x4123,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Creative", 0x041e, "ZEN Xtra (MTP mode)", 0x4128,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Dell", 0x041e, "DJ (2nd generation)", 0x412f,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Creative", 0x041e, "ZEN Micro (MTP mode)", 0x4130,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Creative", 0x041e, "ZEN Touch (MTP mode)", 0x4131,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "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 },
++      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 |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Creative", 0x041e, "ZEN MicroPhoto", 0x413c,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Creative", 0x041e, "ZEN Sleek Photo", 0x413d,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Creative", 0x041e, "ZEN Vision:M", 0x413e,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // Reported by marazm@o2.pl
+   { "Creative", 0x041e, "ZEN V", 0x4150,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // 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,
+       DEVICE_FLAG_NO_RELEASE_INTERFACE |
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // Reported by Darel on the XNJB forums
+   { "Creative", 0x041e, "ZEN V Plus", 0x4152,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   { "Creative", 0x041e, "ZEN Vision W", 0x4153,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // 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 |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // Reported by Ringofan <mcroman@users.sourceforge.net>
+   { "Creative", 0x041e, "ZEN V 2GB", 0x4158,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // Reported by j norment <stormzen@gmail.com>
+   { "Creative", 0x041e, "ZEN Mozaic", 0x4161,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // Reported by Aaron F. Gonzalez <sub_tex@users.sourceforge.net>
+   { "Creative", 0x041e, "ZEN X-Fi", 0x4162,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // Reported by farmerstimuli <farmerstimuli@users.sourceforge.net>
+   { "Creative", 0x041e, "ZEN X-Fi 3", 0x4169,
+-      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL |
+-      DEVICE_FLAG_BROKEN_GET_OBJECT_PROPVAL },
++      DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL },
+   // Reported by Todor Gyumyushev <yodor1@users.sourceforge.net>
+   { "ZiiLABS", 0x041e, "Zii EGG", 0x6000,
+       DEVICE_FLAG_UNLOAD_DRIVER |
+@@ -607,8 +586,17 @@
+   /* https://sourceforge.net/p/libmtp/bugs/1251/ */
+   { "Acer", 0x0502, "E39", 0x3643,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1369/ */
++  { "Acer", 0x0502, "liquid e700", 0x3644,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   { "Acer", 0x0502, "One 7", 0x3657,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/support-requests/183/ */
++  { "Acer", 0x0502, "Z200", 0x3683,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1341/ */
++  { "Acer", 0x0502, "Liquid S56", 0x3725,
++      DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * SanDisk
+@@ -952,6 +940,7 @@
+   { "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 },
++  { "Archos", 0x0e79, "48 (MTP mode)", 0x1421, DEVICE_FLAGS_ANDROID_BUGS },
+   { "Archos", 0x0e79, "Arnova Childpad", 0x1458, DEVICE_FLAGS_ANDROID_BUGS },
+   { "Archos", 0x0e79, "Arnova 8c G3", 0x145e, DEVICE_FLAGS_ANDROID_BUGS },
+   { "Archos", 0x0e79, "Arnova 10bG3 Tablet", 0x146b, DEVICE_FLAGS_ANDROID_BUGS },
+@@ -973,9 +962,17 @@
+   { "Archos", 0x0e79, "70it2 (ID 2)", 0x1569, DEVICE_FLAGS_ANDROID_BUGS },
+   { "Archos", 0x0e79, "50c", 0x2008, DEVICE_FLAGS_ANDROID_BUGS },
+   { "Archos", 0x0e79, "C40", 0x31ab, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1393/ */
++  { "Archos", 0x0e79, "Phone", 0x31e1, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1325/ */
++  { "Archos", 0x0e79, "45 Neon", 0x31f3, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1352/ */
++  { "Archos", 0x0e79, "50 Diamond", 0x3229, DEVICE_FLAGS_ANDROID_BUGS },
+   { "Archos", 0x0e79, "101 G4", 0x4002, DEVICE_FLAGS_ANDROID_BUGS },
+   { "Archos (for Tesco)", 0x0e79, "Hudl (ID1)", 0x5008, DEVICE_FLAGS_ANDROID_BUGS },
+   { "Archos (for Tesco)", 0x0e79, "Hudl (ID2)", 0x5009, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1404/ */
++  { "Archos", 0x0e79, "AC40DTI", 0x5217, DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * Dunlop (OEM of EGOMAN ltd?) reported by Nanomad
+@@ -1181,6 +1178,10 @@
+   { "Qualcomm (for OnePlus)", 0x05c6, "One (MTP+ADB)",
+       0x6765, DEVICE_FLAGS_ANDROID_BUGS },
+ 
++  /* https://sourceforge.net/p/libmtp/bugs/1377/ */
++  { "Qualcomm (for Xolo)", 0x901b, "Xolo Black (MTP)",
++      0x9039, DEVICE_FLAGS_ANDROID_BUGS },
++
+   { "Qualcomm (for PhiComm)", 0x05c6, "C230w (MTP)",
+       0x9039, DEVICE_FLAGS_ANDROID_BUGS },
+ 
+@@ -1221,6 +1222,9 @@
+   // Reported by Thomas Bretthauer
+   { "Fujitsu, Ltd", 0x04c5, "STYLISTIC M532", 0x133b,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/feature-requests/137/ */
++  { "Fujitsu, Ltd", 0x04c5, "F02-E", 0x1378,
++      DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * Palm device userland program named Pocket Tunes
+@@ -1247,6 +1251,9 @@
+   // Reported by anonymous SourceForge user
+   { "Medion", 0x066f, "MD8333 (ID2)", 0x8588,
+     DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
++  /* https://sourceforge.net/p/libmtp/bugs/1359/ */
++  { "Verizon", 0x0408, "Ellipsis 7", 0x3899,
++    DEVICE_FLAGS_ANDROID_BUGS },
+   // The vendor ID is "Quanta Computer, Inc."
+   // same as Olivetti Olipad 110
+   // Guessing on device flags
+@@ -1403,6 +1410,9 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "LG Electronics Inc.", 0x1004, "LG2 Optimus", 0x6225,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1386/ */
++  { "LG Electronics Inc.", 0x1004, "LG VS950", 0x622a,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   { "LG Electronics Inc.", 0x1004, "LG VS870", 0x6239,
+       DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/992/ */
+@@ -1410,6 +1420,8 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "LG Electronics Inc.", 0x1004, "VK810", 0x6265,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  { "LG Electronics Inc.", 0x1004, "G3", 0x627f,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/support-requests/134/ */
+   { "LG Electronics Inc.", 0x1004, "G3 (VS985)", 0x626e,
+       DEVICE_FLAGS_ANDROID_BUGS },
+@@ -1723,8 +1735,12 @@
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia M2 MTP", 0x01aa,
+       DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "Xperia M2 Dual MTP", 0x01ab,
++      DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia Z2 MTP", 0x01af,
+       DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "Xperia Z2 Tablet MTP", 0x01b1,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   { "SONY", 0x0fce, "Xperia Z Ultra MTP", 0x01b6,
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "SONY", 0x0fce, "Xperia Z3 MTP", 0x01ba,
+@@ -1733,6 +1749,10 @@
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia E3 MTP", 0x01bc,
+       DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "XPeria Z3+ MTP", 0x01c9,
++      DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "XPeria E4g MTP", 0x01cb,
++      DEVICE_FLAG_NONE },
+ 
+ 
+   /*
+@@ -1788,6 +1808,8 @@
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia M MTP+CDROM", 0x419b,
+       DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "Xperia Z Ultra MTP+CDROM (ID3)", 0x419c,
++      DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia Z1 MTP+CDROM", 0x419e,
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia C MTP+CDROM", 0x41a3,
+@@ -1796,10 +1818,20 @@
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia M2 MTP+CDROM", 0x41aa,
+       DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "Xperia M2 Dual MTP+CDROM", 0x41ab,
++      DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia Z2 MTP+CDROM", 0x41af,
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia Z3 MTP+CDROM", 0x41ba,
+       DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "Xperia Z3 Compact MTP+CDROM", 0x41bb,
++      DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "Xperia E3 MTP+CDROM", 0x01bc,
++      DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "XPeria Z3+ MTP+CDROM", 0x41c9,
++      DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "XPeria E4g MTP+CDROM", 0x41cb,
++      DEVICE_FLAG_NONE },
+ 
+   /*
+    * MTP+ADB personalities of MTP devices (see above)
+@@ -1888,6 +1920,8 @@
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia M2 MTP+ADB", 0x51aa,
+       DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "Xperia M2 Dual MTP+ADB", 0x51ab,
++      DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia Z2 MTP+ADB", 0x51af,
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia Z Ultra MTP+ADB", 0x51b6,
+@@ -1898,6 +1932,10 @@
+       DEVICE_FLAG_NONE },
+   { "SONY", 0x0fce, "Xperia E3 MTP+ADB", 0x51bc,
+       DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce, "XPeria Z3+ MTP+ADB", 0x51c9,
++      DEVICE_FLAG_NONE },
++  { "SONY", 0x0fce,  "XPeria E4g MTP+ADB", 0x51cb,
++      DEVICE_FLAG_NONE },
+ 
+   /*
+    * MTP+UMS modes
+@@ -1936,6 +1974,9 @@
+    * Motorola
+    * Assume DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST on all of these.
+    */
++  /* https://sourceforge.net/p/libmtp/feature-requests/136/ */
++  { "Motorola", 0x22b8, "XT1524 (MTP)", 0x002e,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   // Reported by David Boyd <tiggrdave@users.sourceforge.net>
+   { "Motorola", 0x22b8, "V3m/V750 verizon", 0x2a65,
+       DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST |
+@@ -1952,6 +1993,9 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "Motorola", 0x22b8, "Moto X (XT1058)", 0x2e63,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1323/ */
++  { "Motorola", 0x22b8, "Moto X (XT1080)", 0x2e66,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   { "Motorola", 0x22b8, "Droid Maxx (XT1080)", 0x2e67,
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "Motorola", 0x22b8, "Droid Ultra", 0x2e68,
+@@ -2345,6 +2389,14 @@
+   /* https://sourceforge.net/p/libmtp/bugs/1244/ */
+   { "Asus", 0x0b05, "MemoPad 8 ME181 CX (MTP)", 0x5561,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1406/ */
++  { "Asus", 0x0b05, "Zenfone 2 (MTP)", 0x5600,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1364/ */
++  { "Asus", 0x0b05, "Z00AD (MTP)", 0x5601,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  { "Asus", 0x0b05, "TX201LA (MTP)", 0x561f,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1271/ */
+   { "Asus", 0x0b05, "ZenFone 4 (MTP)", 0x580f,
+       DEVICE_FLAGS_ANDROID_BUGS },
+@@ -2354,9 +2406,20 @@
+   /* https://sourceforge.net/p/libmtp/bugs/1258/ */
+   { "Asus", 0x0b05, "A450CG (MTP)", 0x5a0f,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1350/ */
++  { "Asus", 0x0b05, "Zenfone 2 ZE550ML (MTP)", 0x5f02,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1364/ */
++  { "Asus", 0x0b05, "Zenfone 2 ZE551ML (MTP)", 0x5f03,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1232/ */
+   { "Asus", 0x0b05, "MemoPad 7 (ME572CL)", 0x7772,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1351/ */
++  { "Asus", 0x0b05, "Fonepad 7 (FE375CXG)", 0x7773,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  { "Asus", 0x0b05, "ZenFone 5 A500KL (MTP)", 0x7780,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1247/ */
+   { "Asus", 0x0b05, "ZenFone 5 A500KL (MTP+ADB)", 0x7781,
+       DEVICE_FLAGS_ANDROID_BUGS },
+@@ -2365,6 +2428,12 @@
+   /*
+    * Lenovo
+    */
++  /* https://sourceforge.net/p/libmtp/support-requests/178/ */
++  { "Lenovo", 0x17ef, "P70-A", 0x0c02,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1415/ */
++  { "Lenovo", 0x17ef, "P70", 0x2008,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   // Reported by Richard Körber <shredzone@users.sourceforge.net>
+   { "Lenovo", 0x17ef, "K1", 0x740a,
+       DEVICE_FLAGS_ANDROID_BUGS },
+@@ -2407,6 +2476,9 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "Lenovo", 0x17ef, "Toga Tablet B6000-F", 0x76f2,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1122/ */
++  { "Lenovo", 0x17ef, "S930", 0x7718,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1250/ */
+   { "Lenovo", 0x17ef, "A5500-F", 0x772b,
+       DEVICE_FLAGS_ANDROID_BUGS },
+@@ -2417,15 +2489,24 @@
+   /* https://sourceforge.net/p/libmtp/bugs/1155/ */
+   { "Lenovo", 0x17ef, "Yoga Tablet 10 B8000-H", 0x76ff,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /*  https://sourceforge.net/p/libmtp/bugs/1391/ */
++  { "Lenovo", 0x17ef, "A7600-F", 0x7731,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1291/ */
+   { "Lenovo", 0x17ef, "A3500-F", 0x7737,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/support-requests/186/ */
++  { "Lenovo", 0x17ef, "Yoga Tablet 2 - 1050F", 0x77a4,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/support-requests/168/ */
+   { "Lenovo", 0x17ef, "Yoga Tablet 2 Pro", 0x77b1,
+       DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/feature-requests/125/ */
+   { "Lenovo", 0x17ef, "Vibe Z2", 0x77ea,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1360/ */
++  { "Lenovo", 0x17ef, "K3 Note", 0x7883,
++      DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * Huawei
+@@ -2435,6 +2516,15 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "Huawei", 0x12d1, "MTP device (ID2)", 0x1052,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1381/ */
++  { "Huawei", 0x12d1, "H60-L11", 0x1079,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1361/ */
++  { "Huawei", 0x12d1, "Ascend P8 ", 0x1082,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1418/ */
++  { "Huawei", 0x12d1, "Honor 3C ", 0x2012,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   { "Huawei", 0x12d1, "Mediapad (mode 0)", 0x360f,
+       DEVICE_FLAGS_ANDROID_BUGS },
+   // Reported by Bearsh <bearsh@users.sourceforge.net>
+@@ -2452,6 +2542,8 @@
+   /* https://sourceforge.net/p/libmtp/bugs/672/ */
+   { "ZTE", 0x19d2, "Grand X In", 0x0343, DEVICE_FLAGS_ANDROID_BUGS },
+   { "ZTE", 0x19d2, "V985", 0x0383, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1328/ */
++  { "ZTE", 0x19d2, "V5", 0xffce, DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * HTC (High Tech Computer Corp)
+@@ -2459,6 +2551,12 @@
+    * Steven Eastland <grassmonk@users.sourceforge.net>
+    * Kevin Cheng <kache@users.sf.net>
+    */
++  /* https://sourceforge.net/p/libmtp/support-requests/181/ */
++  { "HTC", 0x0bb4, "HTC One M9 (MTP)", 0x040b,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1398/ */
++  { "HTC", 0x0bb4, "Spreadtrum SH57MYZ03342 (MTP)", 0x05e3,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* reported by Mikkel Oscar Lyderik <mikkeloscar@gmail.com> */
+   { "HTC", 0x0bb4, "HTC Desire 510 (MTP+ADB)", 0x05fd,
+       DEVICE_FLAGS_ANDROID_BUGS },
+@@ -2545,6 +2643,9 @@
+   /* https://sourceforge.net/p/libmtp/bugs/1182/ */
+   { "HTC", 0x0bb4, "Desire 310 (MTP)", 0x0ec6,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1420/ */
++  { "HTC", 0x0bb4, "Desire 816G (MTP)", 0x0edb,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   { "HTC", 0x0bb4, "HTC One (MTP+ADB+CDC)", 0x0f5f,
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "HTC", 0x0bb4, "HTC One (MTP+CDC)", 0x0f60,
+@@ -2658,6 +2759,9 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "Amazon", 0x1949, "Kindle Fire (ID5)", 0x0012,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1353/ */
++  { "Amazon", 0x1949, "Kindle Fire HD6", 0x00f2,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   { "Amazon", 0x1949, "Fire Phone", 0x0800,
+       DEVICE_FLAGS_ANDROID_BUGS },
+ 
+@@ -2677,6 +2781,9 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "YiFang", 0x2207, "BQ Tesla", 0x0006,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1354/ */
++  { "Various", 0x2207, "Viewpia DR/bq Kepler Debugging", 0x0011,
++      DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * Kobo
+@@ -2708,6 +2815,8 @@
+   { "Intel", 0x8087, "Foxconn iView i700", 0x0a15, DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1237/ */
+   { "Intel", 0x8087, "Telcast Air 3G", 0x0a5e, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1338/ */
++  { "Intel", 0x8087, "Chuwi vi8", 0x0a5f, DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * Xiaomi
+@@ -2738,6 +2847,15 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "Xiaomi", 0x2717, "Mi-2 (MTP)", 0xf003,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1397/ */
++  { "Xiaomi", 0x2717, "Mi-2s (id2) (MTP)", 0xff40,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1339/ */
++  { "Xiaomi", 0x2717, "Mi-2s (MTP)", 0xff48,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1402/ */
++  { "Xiaomi", 0x2717, "Redmi 2 (MTP)", 0xff60,
++      DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * XO Learning Tablet
+@@ -2774,6 +2892,9 @@
+   /* https://sourceforge.net/p/libmtp/bugs/1304/ */
+   { "Alcatel", 0x1bbb, "OneTouch 5042D (MTP)", 0xa00e,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1401/ */
++  { "Alcatel", 0x1bbb, "OneTouch Idol 3 (MTP)", 0xaf2b,
++      DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/feature-requests/114/ */
+   { "Alcatel", 0x1bbb, "OneTouch 6034R", 0xf003,
+       DEVICE_FLAGS_ANDROID_BUGS },
+@@ -2782,8 +2903,12 @@
+    * Kyocera
+    */
+   { "Kyocera", 0x0482, "Rise", 0x0571, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/feature-requests/134/ */
++  { "Kyocera", 0x0482, "Torque Model E6715", 0x0059a, DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/discussion/535190/thread/6270f5ce/ */
+   { "Kyocera", 0x0482, "KYL22", 0x0810, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1345/ */
++  { "Kyocera", 0x0482, "DuraForce", 0x0979, DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * HiSense
+@@ -2798,12 +2923,20 @@
+       DEVICE_FLAGS_ANDROID_BUGS },
+   { "Hewlett-Packard", 0x03f0, "Slate 7 2800", 0x5d1d,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/bugs/1366/ */
++  { "Hewlett-Packard", 0x03f0, "Slate 10 HD", 0x7e1d,
++      DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * MediaTek Inc.
+    */
+   { "MediaTek Inc", 0x0e8d, "MT5xx and MT6xx SoCs", 0x0050,
+       DEVICE_FLAGS_ANDROID_BUGS },
++  { "MediaTek Inc", 0x0e8d, "MT65xx", 0x2008,
++      DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/feature-requests/79/ */
++  { "MediaTek Inc", 0x0e8d, "Elephone P8000", 0x201d,
++      DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /*
+    * Jolla
+@@ -2860,6 +2993,8 @@
+   { "Prestigio", 0x29e4, "5505 DUO ", 0x1103, DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1243/ */
+   { "Prestigio", 0x29e4, "5504 DUO ", 0x1203, DEVICE_FLAGS_ANDROID_BUGS },
++  /* https://sourceforge.net/p/libmtp/feature-requests/141/ */
++  { "Prestigio", 0x29e4, "3405 DUO ", 0x3201, DEVICE_FLAGS_ANDROID_BUGS },
+ 
+   /* https://sourceforge.net/p/libmtp/bugs/1283/ */
+   { "Megafon", 0x201e, "MFLogin3T", 0x42ab, DEVICE_FLAGS_ANDROID_BUGS },
+@@ -2867,6 +3002,8 @@
+   /* https://sourceforge.net/p/libmtp/bugs/1287/ */
+   { "Gensis", 0x040d, "GT-7305 ", 0x885c, DEVICE_FLAGS_ANDROID_BUGS },
+ 
++  /* https://sourceforge.net/p/libmtp/support-requests/182/ */
++  { "Oppo", 0x22d9, "Find 5", 0x2764, DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1207/ */
+   { "Oppo", 0x22d9, "Find 7 (ID 1)", 0x2765, DEVICE_FLAGS_ANDROID_BUGS },
+   /* https://sourceforge.net/p/libmtp/bugs/1277/ */
+@@ -2916,6 +3053,14 @@
+   /* https://sourceforge.net/p/libmtp/bugs/1314/ */
+   { "BenQ", 0x1d45, "F5", 0x459d, DEVICE_FLAGS_ANDROID_BUGS },
+ 
++  /* https://sourceforge.net/p/libmtp/bugs/1362/ */
++  { "TomTom", 0x1390, "Rider 40", 0x5455, DEVICE_FLAGS_ANDROID_BUGS },
++
++  /* https://sourceforge.net/p/libmtp/feature-requests/135/. guessed android. */
++  { "OUYA", 0x2836, "Videogame Console", 0x0010, DEVICE_FLAGS_ANDROID_BUGS },
++
++  /* https://sourceforge.net/p/libmtp/bugs/1383/ */
++  { "BLU", 0x0e8d, "Studio HD", 0x2008, DEVICE_FLAGS_ANDROID_BUGS },
+   /*
+    * Other strange stuff.
+    */