[dpdk-dev] [PATCH 2/5]librte_ether:extend data structures of MACVLAN filter
Jijiang Liu
jijiang.liu at intel.com
Tue Sep 23 05:29:48 CEST 2014
Add new data definations for MACVLAN filter enhancement in rte_eth_ctrl.h file.
Signed-off-by: Jijiang Liu <jijiang.liu at intel.com>
Acked-by: Helin Zhang <helin.zhang at intel.com>
Acked-by: Jingjing Wu <jingjing.wu at intel.com>
Acked-by: Changchun Ouyang <changchun.ouyang at intel.com>
---
lib/librte_ether/rte_eth_ctrl.h | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/lib/librte_ether/rte_eth_ctrl.h b/lib/librte_ether/rte_eth_ctrl.h
index 66745a6..0910376 100644
--- a/lib/librte_ether/rte_eth_ctrl.h
+++ b/lib/librte_ether/rte_eth_ctrl.h
@@ -53,6 +53,7 @@ enum rte_filter_type {
RTE_ETH_FILTER_NONE = 0,
RTE_ETH_FILTER_RSS,
RTE_ETH_FILTER_FDIR,
+ RTE_ETH_FILTER_MACVLAN,
RTE_ETH_FILTER_MAX,
};
@@ -72,6 +73,30 @@ enum rte_filter_op {
RTE_ETH_FILTER_OP_MAX,
};
+/* *** MACVLAN FILTER *** */
+
+/* MAC/VLAN filter type */
+#define RTE_MAC_PERFECT_MATCH 0x0001
+#define RTE_MACVLAN_PERFECT_MATCH 0x0002
+#define RTE_MAC_HASH_MATCH 0x0004
+#define RTE_MACVLAN_HASH_MATCH 0x0008
+#define RTE_MACVLAN_TO_QUEUE 0x0010
+
+/* MACVLAN filter type mask */
+#define RTE_MACVLAN_FILTER_MASK 0x000F
+
+
+/**
+ * MAC filter structure
+ */
+struct rte_eth_mac_filter {
+ uint8_t pf_vf_flag; /**< 0 for PF;1 for VF */
+ uint16_t id; /**< PF ID or VF ID */
+ uint16_t filter_type; /**< MAC/VLAN filter type */
+ uint16_t queue_id; /**< to queue ID */
+ struct ether_addr mac_addr;
+};
+
#ifdef __cplusplus
}
#endif
--
1.7.7.6
More information about the dev
mailing list