diff options
author | David S. Miller <davem@davemloft.net> | 2015-07-31 15:45:37 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-07-31 15:45:37 -0700 |
commit | db316d57b63c07f2ebea596d7e21aa56549f54ab (patch) | |
tree | e5fe8108bf859f4f57c66a24eaebd8118dcf2778 /net/dsa/dsa_priv.h | |
parent | 0f7bffd9e512b77279bbce704fad3cb1d6887958 (diff) | |
parent | 04ff53f96a931751a70c2bb3926770900b5fbebe (diff) |
Merge branch 'dsa-netconsole'
Florian Fainelli says:
====================
net: GENET, SYSTEMPORT and DSA netconsole
This patch series adds support for netconsole in the GENET, SYSTEMPORT and DSA
drivers.
A small refactoring to the DSA transmit path is required to avoid duplicating
the dsa_netpoll_send_skb() into each and every tagging protocol supported.
Testing on e.g: mv643xx_eth and/or e1000e would be much appreciated!
Changes in v2:
- properly disable/enable interrupts in GENET and SYSTEMPORT
- pass the reallocated SKB back to dsa_slave_xmit() in case a tag protocol had to
alter the original SKB
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa/dsa_priv.h')
-rw-r--r-- | net/dsa/dsa_priv.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/net/dsa/dsa_priv.h b/net/dsa/dsa_priv.h index d5f1f9b862ea..311796c809af 100644 --- a/net/dsa/dsa_priv.h +++ b/net/dsa/dsa_priv.h @@ -13,9 +13,10 @@ #include <linux/phy.h> #include <linux/netdevice.h> +#include <linux/netpoll.h> struct dsa_device_ops { - netdev_tx_t (*xmit)(struct sk_buff *skb, struct net_device *dev); + struct sk_buff *(*xmit)(struct sk_buff *skb, struct net_device *dev); int (*rcv)(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, struct net_device *orig_dev); }; @@ -26,7 +27,7 @@ struct dsa_slave_priv { * switch port. */ struct net_device *dev; - netdev_tx_t (*xmit)(struct sk_buff *skb, + struct sk_buff * (*xmit)(struct sk_buff *skb, struct net_device *dev); /* @@ -47,6 +48,9 @@ struct dsa_slave_priv { int old_duplex; struct net_device *bridge_dev; +#ifdef CONFIG_NET_POLL_CONTROLLER + struct netpoll *netpoll; +#endif }; /* dsa.c */ |