> -----Original Message----- > From: dev <dev-boun...@dpdk.org> On Behalf Of Lance Richardson > Sent: Friday, June 12, 2020 7:58 AM > To: dev@dpdk.org; Ajit Khaparde (ajit.khapa...@broadcom.com) > <ajit.khapa...@broadcom.com> > Subject: [dpdk-dev] [PATCH 3/3] net/bnxt: add ARM64 vector support > > Add bnxt vector PMD support using NEON SIMD instructions. > > Signed-off-by: Lance Richardson <lance.richard...@broadcom.com> > Reviewed-by: Ajit Kumar Khaparde <ajit.khapa...@broadcom.com> > --- > drivers/net/bnxt/Makefile | 3 + > drivers/net/bnxt/bnxt_ethdev.c | 10 +- > drivers/net/bnxt/bnxt_ring.c | 4 +- > drivers/net/bnxt/bnxt_rxq.h | 2 +- > drivers/net/bnxt/bnxt_rxr.c | 2 +- > drivers/net/bnxt/bnxt_rxr.h | 2 +- > drivers/net/bnxt/bnxt_rxtx_vec_common.h | 57 +++ > drivers/net/bnxt/bnxt_rxtx_vec_neon.c | 473 > ++++++++++++++++++++++++ > drivers/net/bnxt/bnxt_rxtx_vec_sse.c | 46 +-- > drivers/net/bnxt/bnxt_txr.h | 2 +- > drivers/net/bnxt/meson.build | 2 + > 11 files changed, 548 insertions(+), 55 deletions(-) create mode 100644 > drivers/net/bnxt/bnxt_rxtx_vec_common.h > create mode 100644 drivers/net/bnxt/bnxt_rxtx_vec_neon.c >
<snip> > diff --git a/drivers/net/bnxt/bnxt_rxtx_vec_neon.c > b/drivers/net/bnxt/bnxt_rxtx_vec_neon.c > new file mode 100644 > index 000000000..49620d03e > --- /dev/null > +++ b/drivers/net/bnxt/bnxt_rxtx_vec_neon.c > @@ -0,0 +1,473 @@ > +/* SPDX-License-Identifier: BSD-3-Clause */ > +/* Copyright(c) 2019-2020 Broadcom All rights reserved. */ > + > +#include <inttypes.h> > +#include <stdbool.h> > + > +#include <rte_bitmap.h> > +#include <rte_byteorder.h> > +#include <rte_malloc.h> > +#include <rte_memory.h> > +#if defined(RTE_ARCH_ARM64) > +#include <arm_neon.h> rte_vect.h includes compatibility improvement. It can replace arm_neon.h here. > +#else > +#error "bnxt vector pmd: unsupported target." > +#endif > + > +#include "bnxt.h" > +#include "bnxt_cpr.h" > +#include "bnxt_ring.h" > +#include "bnxt_rxr.h" > +#include "bnxt_rxq.h" > +#include "hsi_struct_def_dpdk.h" > +#include "bnxt_rxtx_vec_common.h" > + > +#include "bnxt_txq.h" > +#include "bnxt_txr.h" > + <snip> IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.