Commit 6099e3de authored by Ben Hutchings's avatar Ben Hutchings Committed by David S. Miller

ethtool: Add Ethernet MAC-level filtering/steering

Signed-off-by: default avatarBen Hutchings <bhutchings@solarflare.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent c22ab781
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
#define _LINUX_ETHTOOL_H #define _LINUX_ETHTOOL_H
#include <linux/types.h> #include <linux/types.h>
#include <linux/if_ether.h>
/* This should work for both 32 and 64 bit userland. */ /* This should work for both 32 and 64 bit userland. */
struct ethtool_cmd { struct ethtool_cmd {
...@@ -391,6 +392,7 @@ struct ethtool_rx_flow_spec { ...@@ -391,6 +392,7 @@ struct ethtool_rx_flow_spec {
struct ethtool_ah_espip4_spec ah_ip4_spec; struct ethtool_ah_espip4_spec ah_ip4_spec;
struct ethtool_ah_espip4_spec esp_ip4_spec; struct ethtool_ah_espip4_spec esp_ip4_spec;
struct ethtool_usrip4_spec usr_ip4_spec; struct ethtool_usrip4_spec usr_ip4_spec;
struct ethhdr ether_spec;
__u8 hdata[72]; __u8 hdata[72];
} h_u, m_u; } h_u, m_u;
__u64 ring_cookie; __u64 ring_cookie;
...@@ -483,6 +485,7 @@ struct ethtool_rx_ntuple_flow_spec { ...@@ -483,6 +485,7 @@ struct ethtool_rx_ntuple_flow_spec {
struct ethtool_ah_espip4_spec ah_ip4_spec; struct ethtool_ah_espip4_spec ah_ip4_spec;
struct ethtool_ah_espip4_spec esp_ip4_spec; struct ethtool_ah_espip4_spec esp_ip4_spec;
struct ethtool_usrip4_spec usr_ip4_spec; struct ethtool_usrip4_spec usr_ip4_spec;
struct ethhdr ether_spec;
__u8 hdata[72]; __u8 hdata[72];
} h_u, m_u; } h_u, m_u;
...@@ -841,7 +844,7 @@ struct ethtool_ops { ...@@ -841,7 +844,7 @@ struct ethtool_ops {
#define WAKE_MAGIC (1 << 5) #define WAKE_MAGIC (1 << 5)
#define WAKE_MAGICSECURE (1 << 6) /* only meaningful if WAKE_MAGIC */ #define WAKE_MAGICSECURE (1 << 6) /* only meaningful if WAKE_MAGIC */
/* L3-L4 network traffic flow types */ /* L2-L4 network traffic flow types */
#define TCP_V4_FLOW 0x01 /* hash or spec (tcp_ip4_spec) */ #define TCP_V4_FLOW 0x01 /* hash or spec (tcp_ip4_spec) */
#define UDP_V4_FLOW 0x02 /* hash or spec (udp_ip4_spec) */ #define UDP_V4_FLOW 0x02 /* hash or spec (udp_ip4_spec) */
#define SCTP_V4_FLOW 0x03 /* hash or spec (sctp_ip4_spec) */ #define SCTP_V4_FLOW 0x03 /* hash or spec (sctp_ip4_spec) */
...@@ -857,6 +860,7 @@ struct ethtool_ops { ...@@ -857,6 +860,7 @@ struct ethtool_ops {
#define IP_USER_FLOW 0x0d /* spec only (usr_ip4_spec) */ #define IP_USER_FLOW 0x0d /* spec only (usr_ip4_spec) */
#define IPV4_FLOW 0x10 /* hash only */ #define IPV4_FLOW 0x10 /* hash only */
#define IPV6_FLOW 0x11 /* hash only */ #define IPV6_FLOW 0x11 /* hash only */
#define ETHER_FLOW 0x12 /* spec only (ether_spec) */
/* L3-L4 network traffic flow hash options */ /* L3-L4 network traffic flow hash options */
#define RXH_L2DA (1 << 1) #define RXH_L2DA (1 << 1)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment