mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 14:23:38 +00:00
kernel: bump to 5.4.247, 6.1.34 (#11314)
Signed-off-by: aakkll <94471752+aakkll@users.noreply.github.com>
This commit is contained in:
parent
357222b386
commit
4f0462516a
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-5.4 = .246
|
LINUX_VERSION-5.4 = .247
|
||||||
LINUX_KERNEL_HASH-5.4.246 = 0938790a858fd0af6aa6b27a3bdf4c5d4a46aba60e6178156980d58bef7ed9ea
|
LINUX_KERNEL_HASH-5.4.247 = 33010d4f02314dd4eb51ab5d09f49ce970f2cfefe9f2133a2e085cac5dfffed7
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-6.1 = .33
|
LINUX_VERSION-6.1 = .34
|
||||||
LINUX_KERNEL_HASH-6.1.33 = b87d6ba8ea7328e8007a7ea9171d1aa0d540d95eacfcab09578e0a3b623dd2cd
|
LINUX_KERNEL_HASH-6.1.34 = b26f7cbcbf8031efc49f11f236f372fc34a4fd5fc6ad3151b893d1aa038ed603
|
||||||
|
@ -66,7 +66,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -5440,8 +5440,7 @@ static inline void skb_gro_reset_offset(
|
@@ -5442,8 +5442,7 @@ static inline void skb_gro_reset_offset(
|
||||||
NAPI_GRO_CB(skb)->frag0 = NULL;
|
NAPI_GRO_CB(skb)->frag0 = NULL;
|
||||||
NAPI_GRO_CB(skb)->frag0_len = 0;
|
NAPI_GRO_CB(skb)->frag0_len = 0;
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -844,6 +844,61 @@ typedef u16 (*select_queue_fallback_t)(s
|
@@ -847,6 +847,61 @@ typedef u16 (*select_queue_fallback_t)(s
|
||||||
struct sk_buff *skb,
|
struct sk_buff *skb,
|
||||||
struct net_device *sb_dev);
|
struct net_device *sb_dev);
|
||||||
|
|
||||||
@ -62,7 +62,7 @@
|
|||||||
enum tc_setup_type {
|
enum tc_setup_type {
|
||||||
TC_SETUP_QDISC_MQPRIO,
|
TC_SETUP_QDISC_MQPRIO,
|
||||||
TC_SETUP_CLSU32,
|
TC_SETUP_CLSU32,
|
||||||
@@ -1450,6 +1505,8 @@ struct net_device_ops {
|
@@ -1453,6 +1508,8 @@ struct net_device_ops {
|
||||||
u32 flags);
|
u32 flags);
|
||||||
int (*ndo_xsk_wakeup)(struct net_device *dev,
|
int (*ndo_xsk_wakeup)(struct net_device *dev,
|
||||||
u32 queue_id, u32 flags);
|
u32 queue_id, u32 flags);
|
||||||
|
@ -34,7 +34,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
#define NET_RX_SUCCESS 0 /* keep 'em coming, baby */
|
#define NET_RX_SUCCESS 0 /* keep 'em coming, baby */
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -10532,6 +10532,22 @@ void netdev_set_default_ethtool_ops(stru
|
@@ -10534,6 +10534,22 @@ void netdev_set_default_ethtool_ops(stru
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(netdev_set_default_ethtool_ops);
|
EXPORT_SYMBOL_GPL(netdev_set_default_ethtool_ops);
|
||||||
|
|
||||||
|
@ -1886,7 +1886,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
result->xdp_packets += packets;
|
result->xdp_packets += packets;
|
||||||
--- a/drivers/net/virtio_net.c
|
--- a/drivers/net/virtio_net.c
|
||||||
+++ b/drivers/net/virtio_net.c
|
+++ b/drivers/net/virtio_net.c
|
||||||
@@ -2105,18 +2105,18 @@ static void virtnet_stats(struct net_dev
|
@@ -2107,18 +2107,18 @@ static void virtnet_stats(struct net_dev
|
||||||
struct send_queue *sq = &vi->sq[i];
|
struct send_queue *sq = &vi->sq[i];
|
||||||
|
|
||||||
do {
|
do {
|
||||||
@ -1909,7 +1909,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
tot->rx_packets += rpackets;
|
tot->rx_packets += rpackets;
|
||||||
tot->tx_packets += tpackets;
|
tot->tx_packets += tpackets;
|
||||||
@@ -2724,12 +2724,12 @@ static void virtnet_get_ethtool_stats(st
|
@@ -2726,12 +2726,12 @@ static void virtnet_get_ethtool_stats(st
|
||||||
|
|
||||||
stats_base = (u8 *)&rq->stats;
|
stats_base = (u8 *)&rq->stats;
|
||||||
do {
|
do {
|
||||||
@ -1924,7 +1924,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
idx += VIRTNET_RQ_STATS_LEN;
|
idx += VIRTNET_RQ_STATS_LEN;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2738,12 +2738,12 @@ static void virtnet_get_ethtool_stats(st
|
@@ -2740,12 +2740,12 @@ static void virtnet_get_ethtool_stats(st
|
||||||
|
|
||||||
stats_base = (u8 *)&sq->stats;
|
stats_base = (u8 *)&sq->stats;
|
||||||
do {
|
do {
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -1615,6 +1615,7 @@ enum netdev_priv_flags {
|
@@ -1618,6 +1618,7 @@ enum netdev_priv_flags {
|
||||||
IFF_FAILOVER_SLAVE = 1<<28,
|
IFF_FAILOVER_SLAVE = 1<<28,
|
||||||
IFF_L3MDEV_RX_HANDLER = 1<<29,
|
IFF_L3MDEV_RX_HANDLER = 1<<29,
|
||||||
IFF_LIVE_RENAME_OK = 1<<30,
|
IFF_LIVE_RENAME_OK = 1<<30,
|
||||||
@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
};
|
};
|
||||||
|
|
||||||
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
|
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
|
||||||
@@ -1647,6 +1648,7 @@ enum netdev_priv_flags {
|
@@ -1650,6 +1651,7 @@ enum netdev_priv_flags {
|
||||||
#define IFF_FAILOVER_SLAVE IFF_FAILOVER_SLAVE
|
#define IFF_FAILOVER_SLAVE IFF_FAILOVER_SLAVE
|
||||||
#define IFF_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
|
#define IFF_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
|
||||||
#define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK
|
#define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK
|
||||||
@ -31,7 +31,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/* Specifies the type of the struct net_device::ml_priv pointer */
|
/* Specifies the type of the struct net_device::ml_priv pointer */
|
||||||
enum netdev_ml_priv_type {
|
enum netdev_ml_priv_type {
|
||||||
@@ -1955,6 +1957,11 @@ struct net_device {
|
@@ -1958,6 +1960,11 @@ struct net_device {
|
||||||
const struct tlsdev_ops *tlsdev_ops;
|
const struct tlsdev_ops *tlsdev_ops;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -43,7 +43,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
const struct header_ops *header_ops;
|
const struct header_ops *header_ops;
|
||||||
|
|
||||||
unsigned int flags;
|
unsigned int flags;
|
||||||
@@ -2037,6 +2044,10 @@ struct net_device {
|
@@ -2040,6 +2047,10 @@ struct net_device {
|
||||||
struct mpls_dev __rcu *mpls_ptr;
|
struct mpls_dev __rcu *mpls_ptr;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -115,7 +115,7 @@ Signed-off-by: Zhi Chen <zhichen@codeaurora.org>
|
|||||||
depends on NETFILTER_ADVANCED
|
depends on NETFILTER_ADVANCED
|
||||||
--- a/net/netfilter/nf_conntrack_core.c
|
--- a/net/netfilter/nf_conntrack_core.c
|
||||||
+++ b/net/netfilter/nf_conntrack_core.c
|
+++ b/net/netfilter/nf_conntrack_core.c
|
||||||
@@ -2572,6 +2572,9 @@ int nf_conntrack_init_net(struct net *ne
|
@@ -2575,6 +2575,9 @@ int nf_conntrack_init_net(struct net *ne
|
||||||
nf_conntrack_helper_pernet_init(net);
|
nf_conntrack_helper_pernet_init(net);
|
||||||
nf_conntrack_proto_pernet_init(net);
|
nf_conntrack_proto_pernet_init(net);
|
||||||
|
|
||||||
|
@ -99,7 +99,7 @@
|
|||||||
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
||||||
if (!dev->eth_mangle_tx ||
|
if (!dev->eth_mangle_tx ||
|
||||||
(skb = dev->eth_mangle_tx(dev, skb)) != NULL)
|
(skb = dev->eth_mangle_tx(dev, skb)) != NULL)
|
||||||
@@ -4719,6 +4727,11 @@ void netdev_rx_handler_unregister(struct
|
@@ -4721,6 +4729,11 @@ void netdev_rx_handler_unregister(struct
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
||||||
|
|
||||||
@ -111,7 +111,7 @@
|
|||||||
/*
|
/*
|
||||||
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
||||||
* the special handling of PFMEMALLOC skbs.
|
* the special handling of PFMEMALLOC skbs.
|
||||||
@@ -4769,6 +4782,10 @@ static int __netif_receive_skb_core(stru
|
@@ -4771,6 +4784,10 @@ static int __netif_receive_skb_core(stru
|
||||||
int ret = NET_RX_DROP;
|
int ret = NET_RX_DROP;
|
||||||
__be16 type;
|
__be16 type;
|
||||||
|
|
||||||
@ -122,7 +122,7 @@
|
|||||||
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
||||||
|
|
||||||
trace_netif_receive_skb(skb);
|
trace_netif_receive_skb(skb);
|
||||||
@@ -4808,6 +4825,16 @@ another_round:
|
@@ -4810,6 +4827,16 @@ another_round:
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
|
|||||||
|
|
||||||
--- a/net/netfilter/nf_conntrack_core.c
|
--- a/net/netfilter/nf_conntrack_core.c
|
||||||
+++ b/net/netfilter/nf_conntrack_core.c
|
+++ b/net/netfilter/nf_conntrack_core.c
|
||||||
@@ -2702,7 +2702,7 @@ int nf_conntrack_init_start(void)
|
@@ -2705,7 +2705,7 @@ int nf_conntrack_init_start(void)
|
||||||
|
|
||||||
if (!nf_conntrack_htable_size) {
|
if (!nf_conntrack_htable_size) {
|
||||||
nf_conntrack_htable_size
|
nf_conntrack_htable_size
|
||||||
|
@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -1704,6 +1704,7 @@ enum netdev_priv_flags {
|
@@ -1707,6 +1707,7 @@ enum netdev_priv_flags {
|
||||||
IFF_LIVE_RENAME_OK = 1<<30,
|
IFF_LIVE_RENAME_OK = 1<<30,
|
||||||
IFF_TX_SKB_NO_LINEAR = BIT_ULL(31),
|
IFF_TX_SKB_NO_LINEAR = BIT_ULL(31),
|
||||||
IFF_CHANGE_PROTO_DOWN = BIT_ULL(32),
|
IFF_CHANGE_PROTO_DOWN = BIT_ULL(32),
|
||||||
@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
};
|
};
|
||||||
|
|
||||||
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
|
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
|
||||||
@@ -1738,6 +1739,7 @@ enum netdev_priv_flags {
|
@@ -1741,6 +1742,7 @@ enum netdev_priv_flags {
|
||||||
#define IFF_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
|
#define IFF_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
|
||||||
#define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK
|
#define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK
|
||||||
#define IFF_TX_SKB_NO_LINEAR IFF_TX_SKB_NO_LINEAR
|
#define IFF_TX_SKB_NO_LINEAR IFF_TX_SKB_NO_LINEAR
|
||||||
@ -35,7 +35,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/* Specifies the type of the struct net_device::ml_priv pointer */
|
/* Specifies the type of the struct net_device::ml_priv pointer */
|
||||||
enum netdev_ml_priv_type {
|
enum netdev_ml_priv_type {
|
||||||
@@ -2106,6 +2108,11 @@ struct net_device {
|
@@ -2109,6 +2111,11 @@ struct net_device {
|
||||||
const struct tlsdev_ops *tlsdev_ops;
|
const struct tlsdev_ops *tlsdev_ops;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
const struct header_ops *header_ops;
|
const struct header_ops *header_ops;
|
||||||
|
|
||||||
unsigned char operstate;
|
unsigned char operstate;
|
||||||
@@ -2181,6 +2188,10 @@ struct net_device {
|
@@ -2184,6 +2191,10 @@ struct net_device {
|
||||||
struct mctp_dev __rcu *mctp_ptr;
|
struct mctp_dev __rcu *mctp_ptr;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
// Lantech 8330-262D-E can operate at 2500base-X, but incorrectly report
|
// Lantech 8330-262D-E can operate at 2500base-X, but incorrectly report
|
||||||
// 2500MBd NRZ in their EEPROM
|
// 2500MBd NRZ in their EEPROM
|
||||||
SFP_QUIRK_M("Lantech", "8330-262D-E", sfp_quirk_2500basex),
|
SFP_QUIRK_M("Lantech", "8330-262D-E", sfp_quirk_2500basex),
|
||||||
@@ -2334,7 +2337,8 @@ static void sfp_sm_main(struct sfp *sfp,
|
@@ -2339,7 +2342,8 @@ static void sfp_sm_main(struct sfp *sfp,
|
||||||
* or t_start_up, so assume there is a fault.
|
* or t_start_up, so assume there is a fault.
|
||||||
*/
|
*/
|
||||||
sfp_sm_fault(sfp, SFP_S_INIT_TX_FAULT,
|
sfp_sm_fault(sfp, SFP_S_INIT_TX_FAULT,
|
||||||
@ -46,7 +46,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
} else if (event == SFP_E_TIMEOUT || event == SFP_E_TX_CLEAR) {
|
} else if (event == SFP_E_TIMEOUT || event == SFP_E_TX_CLEAR) {
|
||||||
init_done:
|
init_done:
|
||||||
/* Create mdiobus and start trying for PHY */
|
/* Create mdiobus and start trying for PHY */
|
||||||
@@ -2563,10 +2567,12 @@ static void sfp_check_state(struct sfp *
|
@@ -2568,10 +2572,12 @@ static void sfp_check_state(struct sfp *
|
||||||
mutex_lock(&sfp->st_mutex);
|
mutex_lock(&sfp->st_mutex);
|
||||||
state = sfp_get_state(sfp);
|
state = sfp_get_state(sfp);
|
||||||
changed = state ^ sfp->state;
|
changed = state ^ sfp->state;
|
||||||
|
@ -123,7 +123,7 @@ Signed-off-by: Zhi Chen <zhichen@codeaurora.org>
|
|||||||
depends on NETFILTER_ADVANCED
|
depends on NETFILTER_ADVANCED
|
||||||
--- a/net/netfilter/nf_conntrack_core.c
|
--- a/net/netfilter/nf_conntrack_core.c
|
||||||
+++ b/net/netfilter/nf_conntrack_core.c
|
+++ b/net/netfilter/nf_conntrack_core.c
|
||||||
@@ -2808,6 +2808,10 @@ int nf_conntrack_init_net(struct net *ne
|
@@ -2811,6 +2811,10 @@ int nf_conntrack_init_net(struct net *ne
|
||||||
nf_conntrack_ecache_pernet_init(net);
|
nf_conntrack_ecache_pernet_init(net);
|
||||||
nf_conntrack_proto_pernet_init(net);
|
nf_conntrack_proto_pernet_init(net);
|
||||||
|
|
||||||
|
@ -111,7 +111,7 @@
|
|||||||
|
|
||||||
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
||||||
if (dev->eth_mangle_tx && !(skb = dev->eth_mangle_tx(dev, skb)))
|
if (dev->eth_mangle_tx && !(skb = dev->eth_mangle_tx(dev, skb)))
|
||||||
@@ -5247,6 +5255,11 @@ void netdev_rx_handler_unregister(struct
|
@@ -5249,6 +5257,11 @@ void netdev_rx_handler_unregister(struct
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
||||||
|
|
||||||
@ -123,7 +123,7 @@
|
|||||||
/*
|
/*
|
||||||
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
||||||
* the special handling of PFMEMALLOC skbs.
|
* the special handling of PFMEMALLOC skbs.
|
||||||
@@ -5295,6 +5308,10 @@ static int __netif_receive_skb_core(stru
|
@@ -5297,6 +5310,10 @@ static int __netif_receive_skb_core(stru
|
||||||
int ret = NET_RX_DROP;
|
int ret = NET_RX_DROP;
|
||||||
__be16 type;
|
__be16 type;
|
||||||
|
|
||||||
@ -134,7 +134,7 @@
|
|||||||
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
||||||
|
|
||||||
trace_netif_receive_skb(skb);
|
trace_netif_receive_skb(skb);
|
||||||
@@ -5332,6 +5349,15 @@ another_round:
|
@@ -5334,6 +5351,15 @@ another_round:
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -992,6 +992,13 @@ struct devlink;
|
@@ -995,6 +995,13 @@ struct devlink;
|
||||||
struct tlsdev_ops;
|
struct tlsdev_ops;
|
||||||
|
|
||||||
|
|
||||||
@ -37,7 +37,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
/*
|
/*
|
||||||
* This structure defines the management hooks for network devices.
|
* This structure defines the management hooks for network devices.
|
||||||
* The following hooks can be defined; unless noted otherwise, they are
|
* The following hooks can be defined; unless noted otherwise, they are
|
||||||
@@ -1224,6 +1231,10 @@ struct tlsdev_ops;
|
@@ -1227,6 +1234,10 @@ struct tlsdev_ops;
|
||||||
* int (*ndo_bridge_dellink)(struct net_device *dev, struct nlmsghdr *nlh,
|
* int (*ndo_bridge_dellink)(struct net_device *dev, struct nlmsghdr *nlh,
|
||||||
* u16 flags);
|
* u16 flags);
|
||||||
*
|
*
|
||||||
@ -48,7 +48,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
* int (*ndo_change_carrier)(struct net_device *dev, bool new_carrier);
|
* int (*ndo_change_carrier)(struct net_device *dev, bool new_carrier);
|
||||||
* Called to change device carrier. Soft-devices (like dummy, team, etc)
|
* Called to change device carrier. Soft-devices (like dummy, team, etc)
|
||||||
* which do not represent real hardware may define this to allow their
|
* which do not represent real hardware may define this to allow their
|
||||||
@@ -1471,6 +1482,8 @@ struct net_device_ops {
|
@@ -1474,6 +1485,8 @@ struct net_device_ops {
|
||||||
int (*ndo_bridge_dellink)(struct net_device *dev,
|
int (*ndo_bridge_dellink)(struct net_device *dev,
|
||||||
struct nlmsghdr *nlh,
|
struct nlmsghdr *nlh,
|
||||||
u16 flags);
|
u16 flags);
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -993,6 +993,7 @@ struct tlsdev_ops;
|
@@ -996,6 +996,7 @@ struct tlsdev_ops;
|
||||||
|
|
||||||
|
|
||||||
struct flow_offload;
|
struct flow_offload;
|
||||||
@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
enum flow_offload_type {
|
enum flow_offload_type {
|
||||||
FLOW_OFFLOAD_ADD = 0,
|
FLOW_OFFLOAD_ADD = 0,
|
||||||
@@ -1231,8 +1232,15 @@ enum flow_offload_type {
|
@@ -1234,8 +1235,15 @@ enum flow_offload_type {
|
||||||
* int (*ndo_bridge_dellink)(struct net_device *dev, struct nlmsghdr *nlh,
|
* int (*ndo_bridge_dellink)(struct net_device *dev, struct nlmsghdr *nlh,
|
||||||
* u16 flags);
|
* u16 flags);
|
||||||
*
|
*
|
||||||
@ -40,7 +40,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
* Adds/deletes flow entry to/from net device flowtable.
|
* Adds/deletes flow entry to/from net device flowtable.
|
||||||
*
|
*
|
||||||
* int (*ndo_change_carrier)(struct net_device *dev, bool new_carrier);
|
* int (*ndo_change_carrier)(struct net_device *dev, bool new_carrier);
|
||||||
@@ -1482,8 +1490,11 @@ struct net_device_ops {
|
@@ -1485,8 +1493,11 @@ struct net_device_ops {
|
||||||
int (*ndo_bridge_dellink)(struct net_device *dev,
|
int (*ndo_bridge_dellink)(struct net_device *dev,
|
||||||
struct nlmsghdr *nlh,
|
struct nlmsghdr *nlh,
|
||||||
u16 flags);
|
u16 flags);
|
||||||
|
@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -1997,6 +1997,8 @@ struct net_device {
|
@@ -2000,6 +2000,8 @@ struct net_device {
|
||||||
struct netdev_hw_addr_list mc;
|
struct netdev_hw_addr_list mc;
|
||||||
struct netdev_hw_addr_list dev_addrs;
|
struct netdev_hw_addr_list dev_addrs;
|
||||||
|
|
||||||
@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
__wsum csum;
|
__wsum csum;
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -5506,6 +5506,9 @@ static enum gro_result dev_gro_receive(s
|
@@ -5508,6 +5508,9 @@ static enum gro_result dev_gro_receive(s
|
||||||
int same_flow;
|
int same_flow;
|
||||||
int grow;
|
int grow;
|
||||||
|
|
||||||
@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (netif_elide_gro(skb->dev))
|
if (netif_elide_gro(skb->dev))
|
||||||
goto normal;
|
goto normal;
|
||||||
|
|
||||||
@@ -7308,6 +7311,48 @@ static void __netdev_adjacent_dev_unlink
|
@@ -7310,6 +7313,48 @@ static void __netdev_adjacent_dev_unlink
|
||||||
&upper_dev->adj_list.lower);
|
&upper_dev->adj_list.lower);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
static int __netdev_upper_dev_link(struct net_device *dev,
|
static int __netdev_upper_dev_link(struct net_device *dev,
|
||||||
struct net_device *upper_dev, bool master,
|
struct net_device *upper_dev, bool master,
|
||||||
void *upper_priv, void *upper_info,
|
void *upper_priv, void *upper_info,
|
||||||
@@ -7358,6 +7403,7 @@ static int __netdev_upper_dev_link(struc
|
@@ -7360,6 +7405,7 @@ static int __netdev_upper_dev_link(struc
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
ret = notifier_to_errno(ret);
|
ret = notifier_to_errno(ret);
|
||||||
@@ -7451,6 +7497,7 @@ void netdev_upper_dev_unlink(struct net_
|
@@ -7453,6 +7499,7 @@ void netdev_upper_dev_unlink(struct net_
|
||||||
|
|
||||||
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
||||||
|
|
||||||
@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
|
|
||||||
@@ -8181,6 +8228,7 @@ int dev_set_mac_address(struct net_devic
|
@@ -8183,6 +8230,7 @@ int dev_set_mac_address(struct net_devic
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
dev->addr_assign_type = NET_ADDR_SET;
|
dev->addr_assign_type = NET_ADDR_SET;
|
||||||
|
@ -50,7 +50,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
};
|
};
|
||||||
|
|
||||||
enum gro_result {
|
enum gro_result {
|
||||||
@@ -2167,6 +2170,7 @@ struct net_device {
|
@@ -2170,6 +2173,7 @@ struct net_device {
|
||||||
struct lock_class_key addr_list_lock_key;
|
struct lock_class_key addr_list_lock_key;
|
||||||
bool proto_down;
|
bool proto_down;
|
||||||
unsigned wol_enabled:1;
|
unsigned wol_enabled:1;
|
||||||
@ -58,7 +58,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
};
|
};
|
||||||
#define to_net_dev(d) container_of(d, struct net_device, dev)
|
#define to_net_dev(d) container_of(d, struct net_device, dev)
|
||||||
|
|
||||||
@@ -2347,6 +2351,26 @@ void netif_napi_add(struct net_device *d
|
@@ -2350,6 +2354,26 @@ void netif_napi_add(struct net_device *d
|
||||||
int (*poll)(struct napi_struct *, int), int weight);
|
int (*poll)(struct napi_struct *, int), int weight);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
static int netif_rx_internal(struct sk_buff *skb);
|
static int netif_rx_internal(struct sk_buff *skb);
|
||||||
static int call_netdevice_notifiers_info(unsigned long val,
|
static int call_netdevice_notifiers_info(unsigned long val,
|
||||||
@@ -5948,6 +5949,11 @@ void __napi_schedule(struct napi_struct
|
@@ -5950,6 +5951,11 @@ void __napi_schedule(struct napi_struct
|
||||||
{
|
{
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
local_irq_save(flags);
|
local_irq_save(flags);
|
||||||
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
||||||
local_irq_restore(flags);
|
local_irq_restore(flags);
|
||||||
@@ -5999,6 +6005,10 @@ EXPORT_SYMBOL(napi_schedule_prep);
|
@@ -6001,6 +6007,10 @@ EXPORT_SYMBOL(napi_schedule_prep);
|
||||||
*/
|
*/
|
||||||
void __napi_schedule_irqoff(struct napi_struct *n)
|
void __napi_schedule_irqoff(struct napi_struct *n)
|
||||||
{
|
{
|
||||||
@ -118,7 +118,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!IS_ENABLED(CONFIG_PREEMPT_RT))
|
if (!IS_ENABLED(CONFIG_PREEMPT_RT))
|
||||||
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
||||||
else
|
else
|
||||||
@@ -6263,9 +6273,89 @@ static void init_gro_hash(struct napi_st
|
@@ -6265,9 +6275,89 @@ static void init_gro_hash(struct napi_st
|
||||||
napi->gro_bitmask = 0;
|
napi->gro_bitmask = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -208,7 +208,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
INIT_LIST_HEAD(&napi->poll_list);
|
INIT_LIST_HEAD(&napi->poll_list);
|
||||||
hrtimer_init(&napi->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED);
|
hrtimer_init(&napi->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED);
|
||||||
napi->timer.function = napi_watchdog;
|
napi->timer.function = napi_watchdog;
|
||||||
@@ -6282,6 +6372,7 @@ void netif_napi_add(struct net_device *d
|
@@ -6284,6 +6374,7 @@ void netif_napi_add(struct net_device *d
|
||||||
#ifdef CONFIG_NETPOLL
|
#ifdef CONFIG_NETPOLL
|
||||||
napi->poll_owner = -1;
|
napi->poll_owner = -1;
|
||||||
#endif
|
#endif
|
||||||
@ -216,7 +216,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
set_bit(NAPI_STATE_SCHED, &napi->state);
|
set_bit(NAPI_STATE_SCHED, &napi->state);
|
||||||
set_bit(NAPI_STATE_NPSVC, &napi->state);
|
set_bit(NAPI_STATE_NPSVC, &napi->state);
|
||||||
list_add_rcu(&napi->dev_list, &dev->napi_list);
|
list_add_rcu(&napi->dev_list, &dev->napi_list);
|
||||||
@@ -6322,6 +6413,7 @@ static void flush_gro_hash(struct napi_s
|
@@ -6324,6 +6415,7 @@ static void flush_gro_hash(struct napi_s
|
||||||
void netif_napi_del(struct napi_struct *napi)
|
void netif_napi_del(struct napi_struct *napi)
|
||||||
{
|
{
|
||||||
might_sleep();
|
might_sleep();
|
||||||
@ -224,7 +224,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (napi_hash_del(napi))
|
if (napi_hash_del(napi))
|
||||||
synchronize_net();
|
synchronize_net();
|
||||||
list_del_init(&napi->dev_list);
|
list_del_init(&napi->dev_list);
|
||||||
@@ -6334,50 +6426,18 @@ EXPORT_SYMBOL(netif_napi_del);
|
@@ -6336,50 +6428,18 @@ EXPORT_SYMBOL(netif_napi_del);
|
||||||
|
|
||||||
static int napi_poll(struct napi_struct *n, struct list_head *repoll)
|
static int napi_poll(struct napi_struct *n, struct list_head *repoll)
|
||||||
{
|
{
|
||||||
@ -279,7 +279,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/* Some drivers may have called napi_schedule
|
/* Some drivers may have called napi_schedule
|
||||||
* prior to exhausting their budget.
|
* prior to exhausting their budget.
|
||||||
@@ -10349,6 +10409,10 @@ static int __init net_dev_init(void)
|
@@ -10351,6 +10411,10 @@ static int __init net_dev_init(void)
|
||||||
sd->backlog.weight = weight_p;
|
sd->backlog.weight = weight_p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -2133,6 +2133,8 @@ struct net_device {
|
@@ -2136,6 +2136,8 @@ struct net_device {
|
||||||
struct netdev_hw_addr_list mc;
|
struct netdev_hw_addr_list mc;
|
||||||
struct netdev_hw_addr_list dev_addrs;
|
struct netdev_hw_addr_list dev_addrs;
|
||||||
|
|
||||||
@ -44,7 +44,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -7606,6 +7606,48 @@ static void __netdev_adjacent_dev_unlink
|
@@ -7608,6 +7608,48 @@ static void __netdev_adjacent_dev_unlink
|
||||||
&upper_dev->adj_list.lower);
|
&upper_dev->adj_list.lower);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,7 +93,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
static int __netdev_upper_dev_link(struct net_device *dev,
|
static int __netdev_upper_dev_link(struct net_device *dev,
|
||||||
struct net_device *upper_dev, bool master,
|
struct net_device *upper_dev, bool master,
|
||||||
void *upper_priv, void *upper_info,
|
void *upper_priv, void *upper_info,
|
||||||
@@ -7657,6 +7699,7 @@ static int __netdev_upper_dev_link(struc
|
@@ -7659,6 +7701,7 @@ static int __netdev_upper_dev_link(struc
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
ret = notifier_to_errno(ret);
|
ret = notifier_to_errno(ret);
|
||||||
@@ -7753,6 +7796,7 @@ static void __netdev_upper_dev_unlink(st
|
@@ -7755,6 +7798,7 @@ static void __netdev_upper_dev_unlink(st
|
||||||
|
|
||||||
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
||||||
|
|
||||||
@ -109,7 +109,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
|
|
||||||
@@ -8805,6 +8849,7 @@ int dev_set_mac_address(struct net_devic
|
@@ -8807,6 +8851,7 @@ int dev_set_mac_address(struct net_devic
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
dev->addr_assign_type = NET_ADDR_SET;
|
dev->addr_assign_type = NET_ADDR_SET;
|
||||||
|
@ -17,7 +17,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -2168,7 +2168,7 @@ struct net_device {
|
@@ -2171,7 +2171,7 @@ struct net_device {
|
||||||
#if IS_ENABLED(CONFIG_AX25)
|
#if IS_ENABLED(CONFIG_AX25)
|
||||||
void *ax25_ptr;
|
void *ax25_ptr;
|
||||||
#endif
|
#endif
|
||||||
|
@ -24,7 +24,7 @@ Reviewed-by: Grant Grundler <grundler@chromium.org>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -785,6 +785,16 @@ struct xps_map {
|
@@ -788,6 +788,16 @@ struct xps_map {
|
||||||
#define XPS_MIN_MAP_ALLOC ((L1_CACHE_ALIGN(offsetof(struct xps_map, queues[1])) \
|
#define XPS_MIN_MAP_ALLOC ((L1_CACHE_ALIGN(offsetof(struct xps_map, queues[1])) \
|
||||||
- sizeof(struct xps_map)) / sizeof(u16))
|
- sizeof(struct xps_map)) / sizeof(u16))
|
||||||
|
|
||||||
@ -41,7 +41,7 @@ Reviewed-by: Grant Grundler <grundler@chromium.org>
|
|||||||
/*
|
/*
|
||||||
* This structure holds all XPS maps for device. Maps are indexed by CPU.
|
* This structure holds all XPS maps for device. Maps are indexed by CPU.
|
||||||
*/
|
*/
|
||||||
@@ -1443,6 +1453,9 @@ struct net_device_ops {
|
@@ -1446,6 +1456,9 @@ struct net_device_ops {
|
||||||
const struct sk_buff *skb,
|
const struct sk_buff *skb,
|
||||||
u16 rxq_index,
|
u16 rxq_index,
|
||||||
u32 flow_id);
|
u32 flow_id);
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
#endif
|
#endif
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -2662,6 +2662,8 @@ enum netdev_cmd {
|
@@ -2665,6 +2665,8 @@ enum netdev_cmd {
|
||||||
NETDEV_CVLAN_FILTER_DROP_INFO,
|
NETDEV_CVLAN_FILTER_DROP_INFO,
|
||||||
NETDEV_SVLAN_FILTER_PUSH_INFO,
|
NETDEV_SVLAN_FILTER_PUSH_INFO,
|
||||||
NETDEV_SVLAN_FILTER_DROP_INFO,
|
NETDEV_SVLAN_FILTER_DROP_INFO,
|
||||||
|
@ -106,7 +106,7 @@
|
|||||||
__be16 vlan_proto, u16 vlan_id)
|
__be16 vlan_proto, u16 vlan_id)
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -1656,6 +1656,20 @@ enum netdev_ml_priv_type {
|
@@ -1659,6 +1659,20 @@ enum netdev_ml_priv_type {
|
||||||
ML_PRIV_CAN,
|
ML_PRIV_CAN,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -127,7 +127,7 @@
|
|||||||
/**
|
/**
|
||||||
* struct net_device - The DEVICE structure.
|
* struct net_device - The DEVICE structure.
|
||||||
*
|
*
|
||||||
@@ -1966,6 +1980,7 @@ struct net_device {
|
@@ -1969,6 +1983,7 @@ struct net_device {
|
||||||
|
|
||||||
unsigned int flags;
|
unsigned int flags;
|
||||||
unsigned int priv_flags;
|
unsigned int priv_flags;
|
||||||
@ -135,7 +135,7 @@
|
|||||||
|
|
||||||
unsigned short gflags;
|
unsigned short gflags;
|
||||||
unsigned short padded;
|
unsigned short padded;
|
||||||
@@ -2649,6 +2664,10 @@ enum netdev_cmd {
|
@@ -2652,6 +2667,10 @@ enum netdev_cmd {
|
||||||
NETDEV_CVLAN_FILTER_DROP_INFO,
|
NETDEV_CVLAN_FILTER_DROP_INFO,
|
||||||
NETDEV_SVLAN_FILTER_PUSH_INFO,
|
NETDEV_SVLAN_FILTER_PUSH_INFO,
|
||||||
NETDEV_SVLAN_FILTER_DROP_INFO,
|
NETDEV_SVLAN_FILTER_DROP_INFO,
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
extern void br_fdb_unregister_notify(struct notifier_block *nb);
|
extern void br_fdb_unregister_notify(struct notifier_block *nb);
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -1662,12 +1662,18 @@ enum netdev_priv_qca_ecm_flags {
|
@@ -1665,12 +1665,18 @@ enum netdev_priv_qca_ecm_flags {
|
||||||
IFF_QCA_ECM_PPP_L2TPV2 = 1<<1,
|
IFF_QCA_ECM_PPP_L2TPV2 = 1<<1,
|
||||||
IFF_QCA_ECM_PPP_L2TPV3 = 1<<2,
|
IFF_QCA_ECM_PPP_L2TPV3 = 1<<2,
|
||||||
IFF_QCA_ECM_PPP_PPTP = 1<<3,
|
IFF_QCA_ECM_PPP_PPTP = 1<<3,
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/drivers/usb/serial/option.c
|
--- a/drivers/usb/serial/option.c
|
||||||
+++ b/drivers/usb/serial/option.c
|
+++ b/drivers/usb/serial/option.c
|
||||||
@@ -267,6 +267,7 @@
|
@@ -267,6 +267,7 @@ static void option_instat_callback(struc
|
||||||
#define QUECTEL_PRODUCT_EC200U 0x0901
|
#define QUECTEL_PRODUCT_EC200U 0x0901
|
||||||
#define QUECTEL_PRODUCT_EC200S_CN 0x6002
|
#define QUECTEL_PRODUCT_EC200S_CN 0x6002
|
||||||
#define QUECTEL_PRODUCT_EC200T 0x6026
|
#define QUECTEL_PRODUCT_EC200T 0x6026
|
||||||
@ -8,7 +8,7 @@
|
|||||||
#define QUECTEL_PRODUCT_RM500K 0x7001
|
#define QUECTEL_PRODUCT_RM500K 0x7001
|
||||||
|
|
||||||
#define CMOTECH_VENDOR_ID 0x16d8
|
#define CMOTECH_VENDOR_ID 0x16d8
|
||||||
@@ -1208,6 +1209,7 @@
|
@@ -1208,6 +1209,7 @@ static const struct usb_device_id option
|
||||||
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200U, 0xff, 0, 0) },
|
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200U, 0xff, 0, 0) },
|
||||||
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200S_CN, 0xff, 0, 0) },
|
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200S_CN, 0xff, 0, 0) },
|
||||||
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200T, 0xff, 0, 0) },
|
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200T, 0xff, 0, 0) },
|
||||||
@ -16,10 +16,9 @@
|
|||||||
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500K, 0xff, 0x00, 0x00) },
|
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500K, 0xff, 0x00, 0x00) },
|
||||||
|
|
||||||
{ USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_6001) },
|
{ USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_6001) },
|
||||||
|
|
||||||
--- a/drivers/usb/serial/usb_wwan.c
|
--- a/drivers/usb/serial/usb_wwan.c
|
||||||
+++ b/drivers/usb/serial/usb_wwan.c
|
+++ b/drivers/usb/serial/usb_wwan.c
|
||||||
@@ -478,6 +478,14 @@
|
@@ -478,6 +478,14 @@ static struct urb *usb_wwan_setup_urb(st
|
||||||
usb_sndbulkpipe(serial->dev, endpoint) | dir,
|
usb_sndbulkpipe(serial->dev, endpoint) | dir,
|
||||||
buf, len, callback, ctx);
|
buf, len, callback, ctx);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user