[dpdk-dev] [PATCH 03/14] ethdev: remove legacy EtherType filter type support
Guo, Jia
jia.guo at intel.com
Wed Oct 21 07:38:25 CEST 2020
> -----Original Message-----
> From: Andrew Rybchenko <arybchenko at solarflare.com>
> Sent: Sunday, October 18, 2020 10:09 PM
> To: Lu, Wenzhuo <wenzhuo.lu at intel.com>; Xing, Beilei
> <beilei.xing at intel.com>; Iremonger, Bernard
> <bernard.iremonger at intel.com>; Ray Kinsella <mdr at ashroe.eu>; Neil
> Horman <nhorman at tuxdriver.com>; Ajit Khaparde
> <ajit.khaparde at broadcom.com>; Somnath Kotur
> <somnath.kotur at broadcom.com>; Guo, Jia <jia.guo at intel.com>; Wang,
> Haiyue <haiyue.wang at intel.com>; Ziyang Xuan
> <xuanziyang2 at huawei.com>; Xiaoyun Wang
> <cloud.wangxiaoyun at huawei.com>; Guoyang Zhou
> <zhouguoyang at huawei.com>; Rasesh Mody <rmody at marvell.com>;
> Shahed Shaikh <shshaikh at marvell.com>; Andrew Rybchenko
> <andrew.rybchenko at oktetlabs.ru>; Thomas Monjalon
> <thomas at monjalon.net>; Yigit, Ferruh <ferruh.yigit at intel.com>
> Cc: dev at dpdk.org
> Subject: [PATCH 03/14] ethdev: remove legacy EtherType filter type support
>
> RTE flow API should be used for filtering.
>
> Move corresponding definitions to ethdev internal driver API since it is used
> by drivers internally.
> Preserve RTE_ETH_FILTER_ETHERTYPE because of it as well.
>
> Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>
> ---
> app/test-pmd/cmdline.c | 115 -------------------
> doc/guides/rel_notes/deprecation.rst | 2 +-
> drivers/net/bnxt/bnxt_ethdev.c | 157 --------------------------
> drivers/net/e1000/igb_ethdev.c | 85 --------------
> drivers/net/hinic/hinic_pmd_ethdev.h | 1 +
> drivers/net/i40e/i40e_ethdev.c | 45 --------
> drivers/net/ixgbe/ixgbe_ethdev.c | 85 --------------
> drivers/net/qede/qede_filter.c | 1 -
> drivers/net/sfc/sfc_ethdev.c | 3 -
> lib/librte_ethdev/rte_eth_ctrl.h | 19 ----
> lib/librte_ethdev/rte_ethdev_driver.h | 23 ++++
> 11 files changed, 25 insertions(+), 511 deletions(-)
>
<...>
> #define RTE_FLEX_FILTER_MAXLEN128/**< bytes to use in flex filter. */
> #define RTE_FLEX_FILTER_MASK_SIZE\
> (RTE_ALIGN(RTE_FLEX_FILTER_MAXLEN, CHAR_BIT) / CHAR_BIT) diff --git
> a/lib/librte_ethdev/rte_ethdev_driver.h
> b/lib/librte_ethdev/rte_ethdev_driver.h
> index c63b9f7eb7..67a83dacc7 100644
> --- a/lib/librte_ethdev/rte_ethdev_driver.h
> +++ b/lib/librte_ethdev/rte_ethdev_driver.h
> @@ -1342,6 +1342,29 @@ int
> rte_eth_hairpin_queue_peer_unbind(uint16_t cur_port, uint16_t
> cur_queue,
> uint32_t direction);
>
> +
> +/*
s/*/**
> + * Legacy ethdev API used internally by drivers.
> + */
> +
I am not sure if this doc is need?
> +/**
> + * Define all structures for Ethertype Filter type.
> + */
> +
> +#define RTE_ETHTYPE_FLAGS_MAC 0x0001 /**< If set, compare mac */
> +#define RTE_ETHTYPE_FLAGS_DROP 0x0002 /**< If set, drop packet when
> match */
> +
> +/**
> + * A structure used to define the ethertype filter entry
> + * to support RTE_ETH_FILTER_ETHERTYPE data representation.
> + */
> +struct rte_eth_ethertype_filter {
> +struct rte_ether_addr mac_addr; /**< Mac address to match. */
> +uint16_t ether_type; /**< Ether type to match */
> +uint16_t flags; /**< Flags from RTE_ETHTYPE_FLAGS_* */
> +uint16_t queue; /**< Queue assigned to when match*/
> +};
> +
> #ifdef __cplusplus
> }
> #endif
> --
> 2.17.1
>
More information about the dev
mailing list