[dpdk-dev] [PATCH v2 03/10] net/bnxt: implement vector mode driver

Ferruh Yigit ferruh.yigit at intel.com
Tue May 28 11:05:56 CEST 2019


On 5/24/2019 3:49 PM, Lance Richardson wrote:
> Introduce vector mode support for the bnxt pmd.
> 
> Signed-off-by: Lance Richardson <lance.richardson at broadcom.com>
> Signed-off-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
> ---
> v2:
> * Squashed with v1 patch 4 ("fix double counting VLAN tags").
> * Dropped two unnecessary coding style changes from bnxt_txr.h.
> 
>  config/common_base                   |   1 +
>  drivers/net/bnxt/Makefile            |   1 +
>  drivers/net/bnxt/bnxt_ethdev.c       |  95 +++++-
>  drivers/net/bnxt/bnxt_ring.h         |   3 +-
>  drivers/net/bnxt/bnxt_rxq.c          |   5 +
>  drivers/net/bnxt/bnxt_rxq.h          |   4 +
>  drivers/net/bnxt/bnxt_rxr.h          |   9 +-
>  drivers/net/bnxt/bnxt_rxtx_vec_sse.c | 481 +++++++++++++++++++++++++++
>  drivers/net/bnxt/bnxt_txr.h          |   5 +
>  drivers/net/bnxt/meson.build         |   5 +
>  10 files changed, 600 insertions(+), 9 deletions(-)
>  create mode 100644 drivers/net/bnxt/bnxt_rxtx_vec_sse.c
> 
> diff --git a/config/common_base b/config/common_base
> index 6b96e0e80..1bbb7c10b 100644
> --- a/config/common_base
> +++ b/config/common_base
> @@ -212,6 +212,7 @@ CONFIG_RTE_LIBRTE_BNX2X_DEBUG_PERIODIC=n
>  # Compile burst-oriented Broadcom BNXT PMD driver
>  #
>  CONFIG_RTE_LIBRTE_BNXT_PMD=y
> +CONFIG_RTE_LIBRTE_BNXT_INC_VECTOR=n

I think this compile flag can be omitted, it should be possible to detect if
vector PMD can be run dynamically. And indeed meson build is doing something
similar. Please check 'ice' driver for sample.

>  
>  #
>  # Compile burst-oriented Chelsio Terminator (CXGBE) PMD
> diff --git a/drivers/net/bnxt/Makefile b/drivers/net/bnxt/Makefile
> index 8be3cb0e4..9e006b5d1 100644
> --- a/drivers/net/bnxt/Makefile
> +++ b/drivers/net/bnxt/Makefile
> @@ -41,6 +41,7 @@ SRCS-$(CONFIG_RTE_LIBRTE_BNXT_PMD) += bnxt_vnic.c
>  SRCS-$(CONFIG_RTE_LIBRTE_BNXT_PMD) += bnxt_irq.c
>  SRCS-$(CONFIG_RTE_LIBRTE_BNXT_PMD) += bnxt_util.c
>  SRCS-$(CONFIG_RTE_LIBRTE_BNXT_PMD) += rte_pmd_bnxt.c
> +SRCS-$(CONFIG_RTE_LIBRTE_BNXT_INC_VECTOR) += bnxt_rxtx_vec_sse.c

You need a x86 protect for this, since DPDK supports multiple arch

<...>



More information about the dev mailing list