diff --git a/target/linux/generic/patches-4.4/099-0001-usbnet-allow-mini-drivers-to-consume-L2-headers.patch b/target/linux/generic/patches-4.4/099-0001-usbnet-allow-mini-drivers-to-consume-L2-headers.patch index a1f19ea18e..a753794d84 100644 --- a/target/linux/generic/patches-4.4/099-0001-usbnet-allow-mini-drivers-to-consume-L2-headers.patch +++ b/target/linux/generic/patches-4.4/099-0001-usbnet-allow-mini-drivers-to-consume-L2-headers.patch @@ -18,11 +18,9 @@ Signed-off-by: David S. Miller drivers/net/usb/usbnet.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) -diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c -index 0744bf2ef2d6..0b0ba7ef14e4 100644 --- a/drivers/net/usb/usbnet.c +++ b/drivers/net/usb/usbnet.c -@@ -324,7 +324,10 @@ void usbnet_skb_return (struct usbnet *dev, struct sk_buff *skb) +@@ -324,7 +324,10 @@ void usbnet_skb_return (struct usbnet *d return; } @@ -34,6 +32,3 @@ index 0744bf2ef2d6..0b0ba7ef14e4 100644 dev->net->stats.rx_packets++; dev->net->stats.rx_bytes += skb->len; --- -2.7.4 - diff --git a/target/linux/generic/patches-4.4/099-0002-net-qmi_wwan-support-raw-IP-mode.patch b/target/linux/generic/patches-4.4/099-0002-net-qmi_wwan-support-raw-IP-mode.patch index 8b5fc374b3..893fb31e1d 100644 --- a/target/linux/generic/patches-4.4/099-0002-net-qmi_wwan-support-raw-IP-mode.patch +++ b/target/linux/generic/patches-4.4/099-0002-net-qmi_wwan-support-raw-IP-mode.patch @@ -51,8 +51,6 @@ Signed-off-by: David S. Miller drivers/net/usb/qmi_wwan.c | 98 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 1 deletion(-) -diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c -index e3727b66d850..98add3bf8821 100644 --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c @@ -14,6 +14,7 @@ @@ -158,7 +156,7 @@ index e3727b66d850..98add3bf8821 100644 /* default ethernet address used by the modem */ static const u8 default_modem_addr[ETH_ALEN] = {0x02, 0x50, 0xf3}; -@@ -80,6 +163,8 @@ static const u8 buggy_fw_addr[ETH_ALEN] = {0x00, 0xa0, 0xc6, 0x00, 0x00, 0x00}; +@@ -80,6 +163,8 @@ static const u8 buggy_fw_addr[ETH_ALEN] */ static int qmi_wwan_rx_fixup(struct usbnet *dev, struct sk_buff *skb) { @@ -167,7 +165,7 @@ index e3727b66d850..98add3bf8821 100644 __be16 proto; /* This check is no longer done by usbnet */ -@@ -94,15 +179,25 @@ static int qmi_wwan_rx_fixup(struct usbnet *dev, struct sk_buff *skb) +@@ -94,15 +179,25 @@ static int qmi_wwan_rx_fixup(struct usbn proto = htons(ETH_P_IPV6); break; case 0x00: @@ -193,7 +191,7 @@ index e3727b66d850..98add3bf8821 100644 if (skb_headroom(skb) < ETH_HLEN) return 0; skb_push(skb, ETH_HLEN); -@@ -326,6 +421,7 @@ static int qmi_wwan_bind(struct usbnet *dev, struct usb_interface *intf) +@@ -294,6 +389,7 @@ static int qmi_wwan_bind(struct usbnet * dev->net->dev_addr[0] &= 0xbf; /* clear "IP" bit */ } dev->net->netdev_ops = &qmi_wwan_netdev_ops; @@ -201,6 +199,3 @@ index e3727b66d850..98add3bf8821 100644 err: return status; } --- -2.7.4 - diff --git a/target/linux/generic/patches-4.4/099-0003-net-qmi_wwan-should-hold-RTNL-while-changing-netdev-.patch b/target/linux/generic/patches-4.4/099-0003-net-qmi_wwan-should-hold-RTNL-while-changing-netdev-.patch index 48f7141efb..44087893ee 100644 --- a/target/linux/generic/patches-4.4/099-0003-net-qmi_wwan-should-hold-RTNL-while-changing-netdev-.patch +++ b/target/linux/generic/patches-4.4/099-0003-net-qmi_wwan-should-hold-RTNL-while-changing-netdev-.patch @@ -41,8 +41,6 @@ Signed-off-by: David S. Miller drivers/net/usb/qmi_wwan.c | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) -diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c -index 98add3bf8821..babc84a3946c 100644 --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c @@ -16,6 +16,7 @@ @@ -53,7 +51,7 @@ index 98add3bf8821..babc84a3946c 100644 #include #include #include -@@ -92,7 +93,7 @@ static ssize_t raw_ip_store(struct device *d, struct device_attribute *attr, co +@@ -92,7 +93,7 @@ static ssize_t raw_ip_store(struct devic struct usbnet *dev = netdev_priv(to_net_dev(d)); struct qmi_wwan_state *info = (void *)&dev->data; bool enable; @@ -62,7 +60,7 @@ index 98add3bf8821..babc84a3946c 100644 if (strtobool(buf, &enable)) return -EINVAL; -@@ -101,18 +102,22 @@ static ssize_t raw_ip_store(struct device *d, struct device_attribute *attr, co +@@ -101,18 +102,22 @@ static ssize_t raw_ip_store(struct devic if (enable == (info->flags & QMI_WWAN_FLAG_RAWIP)) return len; @@ -90,7 +88,7 @@ index 98add3bf8821..babc84a3946c 100644 } if (enable) -@@ -121,7 +126,10 @@ static ssize_t raw_ip_store(struct device *d, struct device_attribute *attr, co +@@ -121,7 +126,10 @@ static ssize_t raw_ip_store(struct devic info->flags &= ~QMI_WWAN_FLAG_RAWIP; qmi_wwan_netdev_setup(dev->net); call_netdevice_notifiers(NETDEV_POST_TYPE_CHANGE, dev->net); @@ -102,6 +100,3 @@ index 98add3bf8821..babc84a3946c 100644 } static DEVICE_ATTR_RW(raw_ip); --- -2.7.4 - diff --git a/target/linux/generic/patches-4.4/099-0004-usbnet-fix-alignment-for-frames-with-no-ethernet-hea.patch b/target/linux/generic/patches-4.4/099-0004-usbnet-fix-alignment-for-frames-with-no-ethernet-hea.patch index 2511e0a961..063f052e27 100644 --- a/target/linux/generic/patches-4.4/099-0004-usbnet-fix-alignment-for-frames-with-no-ethernet-hea.patch +++ b/target/linux/generic/patches-4.4/099-0004-usbnet-fix-alignment-for-frames-with-no-ethernet-hea.patch @@ -24,11 +24,9 @@ Signed-off-by: David S. Miller include/linux/usb/usbnet.h | 1 + 3 files changed, 7 insertions(+), 1 deletion(-) -diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c -index c750cf7c042b..304ec6555cd8 100644 --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c -@@ -261,9 +261,11 @@ static void qmi_wwan_netdev_setup(struct net_device *net) +@@ -70,9 +70,11 @@ static void qmi_wwan_netdev_setup(struct net->hard_header_len = 0; net->addr_len = 0; net->flags = IFF_POINTOPOINT | IFF_NOARP | IFF_MULTICAST; @@ -40,11 +38,9 @@ index c750cf7c042b..304ec6555cd8 100644 netdev_dbg(net, "mode: Ethernet\n"); } -diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c -index 80348b6a8646..d56fe32bf48d 100644 --- a/drivers/net/usb/usbnet.c +++ b/drivers/net/usb/usbnet.c -@@ -484,7 +484,10 @@ static int rx_submit (struct usbnet *dev, struct urb *urb, gfp_t flags) +@@ -482,7 +482,10 @@ static int rx_submit (struct usbnet *dev return -ENOLINK; } @@ -56,11 +52,9 @@ index 80348b6a8646..d56fe32bf48d 100644 if (!skb) { netif_dbg(dev, rx_err, dev->net, "no rx skb\n"); usbnet_defer_kevent (dev, EVENT_RX_MEMORY); -diff --git a/include/linux/usb/usbnet.h b/include/linux/usb/usbnet.h -index a69877734c4e..e2ec3582e549 100644 --- a/include/linux/usb/usbnet.h +++ b/include/linux/usb/usbnet.h -@@ -82,6 +82,7 @@ struct usbnet { +@@ -79,6 +79,7 @@ struct usbnet { # define EVENT_RX_KILL 10 # define EVENT_LINK_CHANGE 11 # define EVENT_SET_RX_MODE 12 @@ -68,6 +62,3 @@ index a69877734c4e..e2ec3582e549 100644 }; static inline struct usb_driver *driver_of(struct usb_interface *intf) --- -2.7.4 - diff --git a/target/linux/generic/patches-4.4/099-0005-qmi_wwan-Add-missing-skb_reset_mac_header-call.patch b/target/linux/generic/patches-4.4/099-0005-qmi_wwan-Add-missing-skb_reset_mac_header-call.patch index 08408e2414..e88e31477e 100644 --- a/target/linux/generic/patches-4.4/099-0005-qmi_wwan-Add-missing-skb_reset_mac_header-call.patch +++ b/target/linux/generic/patches-4.4/099-0005-qmi_wwan-Add-missing-skb_reset_mac_header-call.patch @@ -64,11 +64,9 @@ Signed-off-by: David S. Miller drivers/net/usb/qmi_wwan.c | 1 + 1 file changed, 1 insertion(+) -diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c -index a4f229edcceb..8d4a6f7cba61 100644 --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c -@@ -499,6 +499,7 @@ static int qmi_wwan_rx_fixup(struct usbnet *dev, struct sk_buff *skb) +@@ -203,6 +203,7 @@ static int qmi_wwan_rx_fixup(struct usbn return 1; } if (rawip) { @@ -76,6 +74,3 @@ index a4f229edcceb..8d4a6f7cba61 100644 skb->dev = dev->net; /* normally set by eth_type_trans */ skb->protocol = proto; return 1; --- -2.7.4 - diff --git a/target/linux/generic/patches-4.4/099-0006-net-qmi_wwan-MDM9x30-specific-power-management.patch b/target/linux/generic/patches-4.4/099-0006-net-qmi_wwan-MDM9x30-specific-power-management.patch index c26a86b270..74aef4538e 100644 --- a/target/linux/generic/patches-4.4/099-0006-net-qmi_wwan-MDM9x30-specific-power-management.patch +++ b/target/linux/generic/patches-4.4/099-0006-net-qmi_wwan-MDM9x30-specific-power-management.patch @@ -29,11 +29,9 @@ Signed-off-by: David S. Miller drivers/net/usb/qmi_wwan.c | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) -diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c -index 9a5be8b85186..fc9dd452a3b5 100644 --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c -@@ -223,6 +223,20 @@ static int qmi_wwan_register_subdriver(struct usbnet *dev) +@@ -329,6 +329,20 @@ err: return rv; } @@ -54,7 +52,7 @@ index 9a5be8b85186..fc9dd452a3b5 100644 static int qmi_wwan_bind(struct usbnet *dev, struct usb_interface *intf) { int status = -1; -@@ -280,6 +294,24 @@ static int qmi_wwan_bind(struct usbnet *dev, struct usb_interface *intf) +@@ -386,6 +400,24 @@ static int qmi_wwan_bind(struct usbnet * usb_driver_release_interface(driver, info->data); } @@ -79,7 +77,7 @@ index 9a5be8b85186..fc9dd452a3b5 100644 /* Never use the same address on both ends of the link, even if the * buggy firmware told us to. Or, if device is assigned the well-known * buggy firmware MAC address, replace it with a random address, -@@ -307,6 +339,12 @@ static void qmi_wwan_unbind(struct usbnet *dev, struct usb_interface *intf) +@@ -414,6 +446,12 @@ static void qmi_wwan_unbind(struct usbne if (info->subdriver && info->subdriver->disconnect) info->subdriver->disconnect(info->control); @@ -92,6 +90,3 @@ index 9a5be8b85186..fc9dd452a3b5 100644 /* allow user to unbind using either control or data */ if (intf == info->control) other = info->data; --- -2.7.4 - diff --git a/target/linux/generic/patches-4.4/099-0007-qmi_wwan-add-support-for-Quectel-EC21-and-EC25.patch b/target/linux/generic/patches-4.4/099-0007-qmi_wwan-add-support-for-Quectel-EC21-and-EC25.patch index 3b8032776a..62ff1cd582 100644 --- a/target/linux/generic/patches-4.4/099-0007-qmi_wwan-add-support-for-Quectel-EC21-and-EC25.patch +++ b/target/linux/generic/patches-4.4/099-0007-qmi_wwan-add-support-for-Quectel-EC21-and-EC25.patch @@ -23,8 +23,6 @@ Signed-off-by: David S. Miller drivers/net/usb/qmi_wwan.c | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) -diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c -index 9d1fce8a6e84..3ff76c6db4f6 100644 --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c @@ -59,6 +59,10 @@ enum qmi_wwan_flags { @@ -38,7 +36,7 @@ index 9d1fce8a6e84..3ff76c6db4f6 100644 static void qmi_wwan_netdev_setup(struct net_device *net) { struct usbnet *dev = netdev_priv(net); -@@ -411,9 +415,14 @@ static int qmi_wwan_bind(struct usbnet *dev, struct usb_interface *intf) +@@ -411,9 +415,14 @@ static int qmi_wwan_bind(struct usbnet * * clearing out state the clients might need. * * MDM9x30 is the first QMI chipset with USB3 support. Abuse @@ -55,7 +53,7 @@ index 9d1fce8a6e84..3ff76c6db4f6 100644 qmi_wwan_manage_power(dev, 1); qmi_wwan_change_dtr(dev, true); } -@@ -526,6 +535,16 @@ static const struct driver_info qmi_wwan_info = { +@@ -526,6 +535,16 @@ static const struct driver_info qmi_wwan .rx_fixup = qmi_wwan_rx_fixup, }; @@ -72,7 +70,7 @@ index 9d1fce8a6e84..3ff76c6db4f6 100644 #define HUAWEI_VENDOR_ID 0x12D1 /* map QMI/wwan function by a fixed interface number */ -@@ -533,6 +552,11 @@ static const struct driver_info qmi_wwan_info = { +@@ -533,6 +552,11 @@ static const struct driver_info qmi_wwan USB_DEVICE_INTERFACE_NUMBER(vend, prod, num), \ .driver_info = (unsigned long)&qmi_wwan_info @@ -84,7 +82,7 @@ index 9d1fce8a6e84..3ff76c6db4f6 100644 /* Gobi 1000 QMI/wwan interface number is 3 according to qcserial */ #define QMI_GOBI1K_DEVICE(vend, prod) \ QMI_FIXED_INTF(vend, prod, 3) -@@ -895,6 +919,8 @@ static const struct usb_device_id products[] = { +@@ -908,6 +932,8 @@ static const struct usb_device_id produc {QMI_FIXED_INTF(0x03f0, 0x4e1d, 8)}, /* HP lt4111 LTE/EV-DO/HSPA+ Gobi 4G Module */ {QMI_FIXED_INTF(0x22de, 0x9061, 3)}, /* WeTelecom WPD-600N */ {QMI_FIXED_INTF(0x1e0e, 0x9001, 5)}, /* SIMCom 7230E */ @@ -93,6 +91,3 @@ index 9d1fce8a6e84..3ff76c6db4f6 100644 /* 4. Gobi 1000 devices */ {QMI_GOBI1K_DEVICE(0x05c6, 0x9212)}, /* Acer Gobi Modem Device */ --- -2.7.4 -