ethdev: remove legacy FDIR filter type support
[dpdk.git] / drivers / net / i40e / i40e_ethdev.h
index 1466998..ea59a3e 100644 (file)
@@ -288,11 +288,22 @@ struct rte_flow {
 struct i40e_adapter;
 struct rte_pci_driver;
 
+/**
+ * MAC filter type
+ */
+enum i40e_mac_filter_type {
+       I40E_MAC_PERFECT_MATCH = 1, /**< exact match of MAC addr. */
+       I40E_MACVLAN_PERFECT_MATCH, /**< exact match of MAC addr and VLAN ID. */
+       I40E_MAC_HASH_MATCH, /**< hash match of MAC addr. */
+       /** hash match of MAC addr and exact match of VLAN ID. */
+       I40E_MACVLAN_HASH_MATCH,
+};
+
 /**
  * MAC filter structure
  */
 struct i40e_mac_filter_info {
-       enum rte_mac_filter_type filter_type;
+       enum i40e_mac_filter_type filter_type;
        struct rte_ether_addr mac_addr;
 };
 
@@ -347,7 +358,7 @@ struct i40e_veb {
 /* i40e MACVLAN filter structure */
 struct i40e_macvlan_filter {
        struct rte_ether_addr macaddr;
-       enum rte_mac_filter_type filter_type;
+       enum i40e_mac_filter_type filter_type;
        uint16_t vlan_id;
 };
 
@@ -653,8 +664,7 @@ struct i40e_fdir_action {
 };
 
 /* A structure used to define the flow director filter entry by filter_ctrl API
- * It supports RTE_ETH_FILTER_FDIR with RTE_ETH_FILTER_ADD and
- * RTE_ETH_FILTER_DELETE operations.
+ * It supports RTE_ETH_FILTER_FDIR data representation.
  */
 struct i40e_fdir_filter_conf {
        uint32_t soft_id;
@@ -1209,6 +1219,7 @@ struct i40e_vf {
        bool promisc_unicast_enabled;
        bool promisc_multicast_enabled;
 
+       rte_spinlock_t cmd_send_lock;
        uint32_t version_major; /* Major version number */
        uint32_t version_minor; /* Minor version number */
        uint16_t promisc_flags; /* Promiscuous setting */
@@ -1357,17 +1368,12 @@ void i40e_fdir_info_get(struct rte_eth_dev *dev,
                        struct rte_eth_fdir_info *fdir);
 void i40e_fdir_stats_get(struct rte_eth_dev *dev,
                         struct rte_eth_fdir_stats *stat);
-int i40e_fdir_ctrl_func(struct rte_eth_dev *dev,
-                         enum rte_filter_op filter_op,
-                         void *arg);
 int i40e_select_filter_input_set(struct i40e_hw *hw,
                                 struct rte_eth_input_set_conf *conf,
                                 enum rte_filter_type filter);
 void i40e_fdir_filter_restore(struct i40e_pf *pf);
 int i40e_hash_filter_inset_select(struct i40e_hw *hw,
                             struct rte_eth_input_set_conf *conf);
-int i40e_fdir_filter_inset_select(struct i40e_pf *pf,
-                            struct rte_eth_input_set_conf *conf);
 int i40e_pf_host_send_msg_to_vf(struct i40e_pf_vf *vf, uint32_t opcode,
                                uint32_t retval, uint8_t *msg,
                                uint16_t msglen);
@@ -1395,9 +1401,6 @@ uint64_t i40e_get_default_input_set(uint16_t pctype);
 int i40e_ethertype_filter_set(struct i40e_pf *pf,
                              struct rte_eth_ethertype_filter *filter,
                              bool add);
-int i40e_add_del_fdir_filter(struct rte_eth_dev *dev,
-                            const struct rte_eth_fdir_filter *filter,
-                            bool add);
 struct rte_flow *
 i40e_fdir_entry_pool_get(struct i40e_fdir_info *fdir_info);
 void i40e_fdir_entry_pool_put(struct i40e_fdir_info *fdir_info,