--- /dev/null
+From 5e071b5d1aa6928f8d695c15f52a949d70b8d7fb Mon Sep 17 00:00:00 2001
+From: Bjørn Mork <bjorn@mork.no>
+Date: Wed, 23 May 2012 23:19:32 +0000
+Subject: net: qmi_wwan: Add Sierra Wireless device IDs
+
+From: Bjørn Mork <bjorn@mork.no>
+
+commit 5e071b5d1aa6928f8d695c15f52a949d70b8d7fb upstream.
+
+Some additional Gobi3K IDs found in the BSD/GPL licensed
+out-of-tree GobiNet driver from Sierra Wireless.
+
+Signed-off-by: Bjørn Mork <bjorn@mork.no>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/usb/qmi_wwan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/net/usb/qmi_wwan.c
++++ b/drivers/net/usb/qmi_wwan.c
+@@ -548,6 +548,8 @@ static const struct usb_device_id produc
+ {QMI_GOBI_DEVICE(0x16d8, 0x8002)}, /* CMDTech Gobi 2000 Modem device (VU922) */
+ {QMI_GOBI_DEVICE(0x05c6, 0x9205)}, /* Gobi 2000 Modem device */
+ {QMI_GOBI_DEVICE(0x1199, 0x9013)}, /* Sierra Wireless Gobi 3000 Modem device (MC8355) */
++ {QMI_GOBI_DEVICE(0x1199, 0x9015)}, /* Sierra Wireless Gobi 3000 Modem device */
++ {QMI_GOBI_DEVICE(0x1199, 0x9019)}, /* Sierra Wireless Gobi 3000 Modem device */
+ { } /* END */
+ };
+ MODULE_DEVICE_TABLE(usb, products);
--- /dev/null
+From 88c16dc3bb61a1c1e9d4c78f45cc2107bc8d5249 Mon Sep 17 00:00:00 2001
+From: Bjørn Mork <bjorn@mork.no>
+Date: Sat, 19 May 2012 07:20:31 +0000
+Subject: net: qmi_wwan: Add Vodafone/Huawei K5005 support
+
+From: Bjørn Mork <bjorn@mork.no>
+
+commit 88c16dc3bb61a1c1e9d4c78f45cc2107bc8d5249 upstream.
+
+Tested-by: Thomas Schäfer <tschaefer@t-online.de>
+Signed-off-by: Bjørn Mork <bjorn@mork.no>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/usb/qmi_wwan.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+--- a/drivers/net/usb/qmi_wwan.c
++++ b/drivers/net/usb/qmi_wwan.c
+@@ -407,6 +407,14 @@ static const struct usb_device_id produc
+ .bInterfaceProtocol = 8, /* NOTE: This is the *slave* interface of the CDC Union! */
+ .driver_info = (unsigned long)&qmi_wwan_info,
+ },
++ { /* Vodafone/Huawei K5005 (12d1:14c8) and similar modems */
++ .match_flags = USB_DEVICE_ID_MATCH_VENDOR | USB_DEVICE_ID_MATCH_INT_INFO,
++ .idVendor = HUAWEI_VENDOR_ID,
++ .bInterfaceClass = USB_CLASS_VENDOR_SPEC,
++ .bInterfaceSubClass = 1,
++ .bInterfaceProtocol = 56, /* NOTE: This is the *slave* interface of the CDC Union! */
++ .driver_info = (unsigned long)&qmi_wwan_info,
++ },
+ { /* Huawei E392, E398 and possibly others in "Windows mode"
+ * using a combined control and data interface without any CDC
+ * functional descriptors
--- /dev/null
+From 6fecd35d4cd79fc75e8290abb86734c18500d2a2 Mon Sep 17 00:00:00 2001
+From: Bjørn Mork <bjorn@mork.no>
+Date: Thu, 5 Jul 2012 01:13:33 +0000
+Subject: net: qmi_wwan: add ZTE MF60
+
+From: Bjørn Mork <bjorn@mork.no>
+
+commit 6fecd35d4cd79fc75e8290abb86734c18500d2a2 upstream.
+
+Adding a device with limited QMI support. It does not support
+normal QMI_WDS commands for connection management. Instead,
+sending a QMI_CTL SET_INSTANCE_ID command is required to
+enable the network interface:
+
+ 01 0f 00 00 00 00 00 00 20 00 04 00 01 01 00 00
+
+A number of QMI_DMS and QMI_NAS commands are also supported
+for optional device management.
+
+Signed-off-by: Bjørn Mork <bjorn@mork.no>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/usb/qmi_wwan.c | 18 ++++++++++++++++++
+ 1 file changed, 18 insertions(+)
+
+--- a/drivers/net/usb/qmi_wwan.c
++++ b/drivers/net/usb/qmi_wwan.c
+@@ -346,6 +346,15 @@ static const struct driver_info qmi_wwan
+ .data = BIT(1), /* interface whitelist bitmap */
+ };
+
++static const struct driver_info qmi_wwan_force_int2 = {
++ .description = "Qualcomm WWAN/QMI device",
++ .flags = FLAG_WWAN,
++ .bind = qmi_wwan_bind_shared,
++ .unbind = qmi_wwan_unbind_shared,
++ .manage_power = qmi_wwan_manage_power,
++ .data = BIT(2), /* interface whitelist bitmap */
++};
++
+ static const struct driver_info qmi_wwan_force_int3 = {
+ .description = "Qualcomm WWAN/QMI device",
+ .flags = FLAG_WWAN,
+@@ -498,6 +507,15 @@ static const struct usb_device_id produc
+ .bInterfaceProtocol = 0xff,
+ .driver_info = (unsigned long)&qmi_wwan_force_int4,
+ },
++ { /* ZTE MF60 */
++ .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO,
++ .idVendor = 0x19d2,
++ .idProduct = 0x1402,
++ .bInterfaceClass = 0xff,
++ .bInterfaceSubClass = 0xff,
++ .bInterfaceProtocol = 0xff,
++ .driver_info = (unsigned long)&qmi_wwan_force_int2,
++ },
+ { /* Sierra Wireless MC77xx in QMI mode */
+ .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO,
+ .idVendor = 0x1199,
--- /dev/null
+From db8dacf953a70274172236957a4b97d4fdb376f0 Mon Sep 17 00:00:00 2001
+From: Bjørn Mork <bjorn@mork.no>
+Date: Thu, 12 Jul 2012 01:18:26 +0000
+Subject: net: qmi_wwan: add ZTE MF821D
+
+From: Bjørn Mork <bjorn@mork.no>
+
+commit db8dacf953a70274172236957a4b97d4fdb376f0 upstream.
+
+Sold by O2 (telefonica germany) under the name "LTE4G"
+
+Tested-by: Thomas Schäfer <tschaefer@t-online.de>
+Signed-off-by: Bjørn Mork <bjorn@mork.no>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/usb/qmi_wwan.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+--- a/drivers/net/usb/qmi_wwan.c
++++ b/drivers/net/usb/qmi_wwan.c
+@@ -453,6 +453,15 @@ static const struct usb_device_id produc
+ .bInterfaceProtocol = 0xff,
+ .driver_info = (unsigned long)&qmi_wwan_force_int4,
+ },
++ { /* ZTE MF821D */
++ .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO,
++ .idVendor = 0x19d2,
++ .idProduct = 0x0326,
++ .bInterfaceClass = 0xff,
++ .bInterfaceSubClass = 0xff,
++ .bInterfaceProtocol = 0xff,
++ .driver_info = (unsigned long)&qmi_wwan_force_int4,
++ },
+ { /* ZTE (Vodafone) K3520-Z */
+ .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO,
+ .idVendor = 0x19d2,
powerpc-85xx-p1022ds-disable-the-nand-flash-node-if-video-is-enabled.patch
powerpc-85xx-p1022ds-fix-diu-lbc-switching-with-nand-enabled.patch
pch_uart-add-eg20t_port-lock-field-avoid-recursive-spinlocks.patch
+net-qmi_wwan-add-vodafone-huawei-k5005-support.patch
+usb-qmi_wwan-add-zte-vodafone-k3765-z.patch
+net-qmi_wwan-add-sierra-wireless-device-ids.patch
+net-qmi_wwan-add-zte-mf60.patch
+net-qmi_wwan-add-zte-mf821d.patch
--- /dev/null
+From 8965c98fdebedce077257241957b205515dd1a5f Mon Sep 17 00:00:00 2001
+From: "Andrew Bird (Sphere Systems)" <ajb@spheresystems.co.uk>
+Date: Sat, 19 May 2012 22:28:37 +0000
+Subject: USB: qmi_wwan: Add ZTE (Vodafone) K3765-Z
+
+From: "Andrew Bird (Sphere Systems)" <ajb@spheresystems.co.uk>
+
+commit 8965c98fdebedce077257241957b205515dd1a5f upstream.
+
+Add the ZTE (Vodafone) K3765-Z to the whitelist. This requires the
+previous patch to make the whitelist with forced interface 4 generic
+or the device fails to initialise. After applying this patch and
+loading the Option driver without usb-modeswitch's bind all
+interfaces trick, a wwan0 net interface and /dev/cdc-wdm0 device
+file were created. Using Bjorn Mork's perl connection script a
+connection was made to a mobile network using QMI and the network
+interface's IPv4 address was configured OK.
+
+Signed-off-by: Andrew Bird <ajb@spheresystems.co.uk>
+Acked-by: Bjørn Mork <bjorn@mork.no>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/usb/qmi_wwan.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+--- a/drivers/net/usb/qmi_wwan.c
++++ b/drivers/net/usb/qmi_wwan.c
+@@ -480,6 +480,15 @@ static const struct usb_device_id produc
+ .bInterfaceProtocol = 0xff,
+ .driver_info = (unsigned long)&qmi_wwan_force_int4,
+ },
++ { /* ZTE (Vodafone) K3765-Z */
++ .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO,
++ .idVendor = 0x19d2,
++ .idProduct = 0x2002,
++ .bInterfaceClass = 0xff,
++ .bInterfaceSubClass = 0xff,
++ .bInterfaceProtocol = 0xff,
++ .driver_info = (unsigned long)&qmi_wwan_force_int4,
++ },
+ { /* ZTE (Vodafone) K4505-Z */
+ .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO,
+ .idVendor = 0x19d2,