From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jijiang Liu Subject: [PATCH 2/5]librte_ether:extend data structures of MACVLAN filter Date: Tue, 23 Sep 2014 11:29:48 +0800 Message-ID: <1411442991-15386-3-git-send-email-jijiang.liu@intel.com> References: <1411442991-15386-1-git-send-email-jijiang.liu@intel.com> To: dev-VfR2kkLFssw@public.gmane.org Return-path: In-Reply-To: <1411442991-15386-1-git-send-email-jijiang.liu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Add new data definations for MACVLAN filter enhancement in rte_eth_ctrl.h file. Signed-off-by: Jijiang Liu Acked-by: Helin Zhang Acked-by: Jingjing Wu Acked-by: Changchun Ouyang --- 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