From mboxrd@z Thu Jan 1 00:00:00 1970 From: "De Lara Guarch, Pablo" Subject: Re: [PATCH 01/16] config: add Cavium CPT PMD skeleton Date: Tue, 19 Jun 2018 13:39:58 +0000 Message-ID: References: <1528476325-15585-1-git-send-email-anoob.joseph@caviumnetworks.com> <1528476325-15585-2-git-send-email-anoob.joseph@caviumnetworks.com> <20180614025638.GA16602@jerin> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Cc: Akhil Goyal , Thomas Monjalon , Nithin Dabilpuram , Ankur Dwivedi , Murthy NSSR , Narayana Prasad , "Ragothaman Jayaraman" , Srisivasubramanian Srinivasan , "dev@dpdk.org" To: Jerin Jacob , Anoob Joseph Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 374864C57 for ; Tue, 19 Jun 2018 15:40:13 +0200 (CEST) In-Reply-To: <20180614025638.GA16602@jerin> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Anoob, > -----Original Message----- > From: Jerin Jacob [mailto:jerin.jacob@caviumnetworks.com] > Sent: Thursday, June 14, 2018 3:57 AM > To: Anoob Joseph > Cc: Akhil Goyal ; De Lara Guarch, Pablo > ; Thomas Monjalon > ; Nithin Dabilpuram ; > Ankur Dwivedi ; Murthy NSSR > ; Narayana Prasad > ; Ragothaman Jayaraman > ; Srisivasubramanian Srinivasan > ; dev@dpdk.org > Subject: Re: [PATCH 01/16] config: add Cavium CPT PMD skeleton >=20 > -----Original Message----- > > Date: Fri, 8 Jun 2018 22:15:10 +0530 > > From: Anoob Joseph > > To: Akhil Goyal , Pablo de Lara > > , Thomas Monjalon > > > > Cc: Nithin Dabilpuram , Ankur Dwivedi > > , Jerin Jacob > > , Murthy NSSR > > , Narayana Prasad > > , Ragothaman Jayaraman > > , Srisivasubramanian Srinivasan > > , dev@dpdk.org > > Subject: [PATCH 01/16] config: add Cavium CPT PMD skeleton > > X-Mailer: git-send-email 2.7.4 > > > > From: Nithin Dabilpuram > > > > Add makefile and config file options. > > Also add version map file and maintainers file to claim > > responsibility. > > > > Signed-off-by: Ankur Dwivedi > > Signed-off-by: Murthy NSSR > > Signed-off-by: Nithin Dabilpuram > > Signed-off-by: Ragothaman Jayaraman > > > Signed-off-by: Srisivasubramanian Srinivasan > > > > --- > > MAINTAINERS | 7 ++++++ > > config/common_base | 8 ++++++ > > drivers/crypto/Makefile | 1 + > > drivers/crypto/cpt/Makefile | 40 > ++++++++++++++++++++++++++++++ > > drivers/crypto/cpt/rte_pmd_cpt_version.map | 4 +++ > > mk/rte.app.mk | 2 +- > > 6 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 > > drivers/crypto/cpt/Makefile create mode 100644 > > drivers/crypto/cpt/rte_pmd_cpt_version.map > > > > diff --git a/MAINTAINERS b/MAINTAINERS index 4667fa7..1b4a8eb 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -504,6 +504,13 @@ F: drivers/net/octeontx/ > > F: doc/guides/nics/octeontx.rst > > F: doc/guides/nics/features/octeontx.ini > > > > +Cavium CPT > > +M: Ankur Dwivedi > > +M: Nithin Dabilpuram > > +M: Murthy NSSR > > +F: drivers/crypto/cpt/ > > +F: doc/guides/cryptodevs/cpt.rst Add the documentation file line in the patch where you actually add it. >=20 > Move this under crypto drivers section if it is not already the case. >=20 > > + > > Chelsio cxgbe > > M: Rahul Lakkireddy > > F: drivers/net/cxgbe/ > > diff --git a/config/common_base b/config/common_base index > > 6b0d1cb..85e03a8 100644 > > --- a/config/common_base > > +++ b/config/common_base > > @@ -631,6 +631,14 @@ CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV=3Dn > > CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV=3Dn > > > > # > > +# Compile PMD for Cavium CPT Crypto device # > > +CONFIG_RTE_LIBRTE_PMD_CPT=3Dn >=20 > Please enable this option by default, If there are arm64 specific usage = then > please stub it out so that it can compile on all architectures. It will h= elp to verify > the API changes across the architecture by author.(i.e author should not = depend > arm64 box to verify the compilation changes) and enable distribution OS s= upport > like Ubuntu as they building with default arm64 config. Agreed. Actually, I thought this was disabled because of the dependency wit= h libcrypto (based on the Makefile below), but actually it is not needed. Also, move this where the other crypto drivers are. >=20 >=20 > > +CONFIG_RTE_LIBRTE_PMD_CPT_DEBUG_INIT=3Dn > > +CONFIG_RTE_LIBRTE_PMD_CPT_DEBUG_RX=3Dn > > +CONFIG_RTE_LIBRTE_PMD_CPT_DEBUG_TX=3Dn >=20 > This config option is not required when we are using dynamic debugging >=20 > > + > > +# > > # Compile raw device support > > # EXPERIMENTAL: API may change without prior notice # diff --git > > a/drivers/crypto/Makefile b/drivers/crypto/Makefile index > > 1d0c88e..a0515f3 100644 > > --- a/drivers/crypto/Makefile > > +++ b/drivers/crypto/Makefile > > @@ -22,5 +22,6 @@ ifeq ($(CONFIG_RTE_LIBRTE_DPAA_BUS),y) > > DIRS-$(CONFIG_RTE_LIBRTE_PMD_DPAA_SEC) +=3D dpaa_sec endif > > DIRS-$(CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO) +=3D virtio > > +DIRS-$(CONFIG_RTE_LIBRTE_PMD_CPT) +=3D cpt > > > > include $(RTE_SDK)/mk/rte.subdir.mk > > diff --git a/drivers/crypto/cpt/Makefile b/drivers/crypto/cpt/Makefile > > new file mode 100644 index 0000000..b2d950d > > --- /dev/null > > +++ b/drivers/crypto/cpt/Makefile > > @@ -0,0 +1,40 @@ > > + > > +include $(RTE_SDK)/mk/rte.vars.mk > > + > > +# library name > > +LIB =3D librte_pmd_cptvf.a > > + > > +# library version > > +LIBABIVER :=3D 1 > > + > > +# build flags > > +CFLAGS +=3D $(WERROR_FLAGS) > > + > > +# external library include paths > > +CFLAGS +=3D -I$(LIBCRYPTO_THUNDERX_PATH)/include > > +LDLIBS +=3D -L$(LIBCRYPTO_THUNDERX_PATH) -lcrypto >=20 > What is the external library dependency here? Does look like it is docume= nted in > doc patch. >=20 > If there is something, I think, better to change LIBCRYPTO_THUNDERX_PATH = to > LIBCRYPTO_OCTEONTX_PATH Is this needed? I don't see any dependency with libcrypto and I don't see t= his variable documented in the driver guide. >=20 > > +LDLIBS +=3D -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring LDLIBS +=3D > > +-lrte_cryptodev LDLIBS +=3D -lrte_pci -lrte_bus_pci > > + > > +VPATH +=3D $(RTE_SDK)/drivers/crypto/cpt/base > > + > > +CFLAGS +=3D -O3 > > +#CFLAGS +=3D -DAUTH_SOFT_COMPUTE_IPAD_OPAD #CFLAGS +=3D - > DCPT_DEBUG >=20 > Remove commented out stuff. >=20 > > + > > +SRCS-$(CONFIG_RTE_LIBRTE_PMD_CPT) +=3D > > + > > +# export include files > > +SYMLINK-y-include +=3D > > + > > +# versioning export map > > +EXPORT_MAP :=3D rte_pmd_cpt_version.map > > + > > +# library dependencies > > +DEPDIRS-$(CONFIG_RTE_LIBRTE_PMD_CPT) +=3D lib/librte_eal > > +DEPDIRS-$(CONFIG_RTE_LIBRTE_PMD_CPT) +=3D lib/librte_cryptodev > > +DEPDIRS-$(CONFIG_RTE_LIBRTE_PMD_CPT) +=3D lib/librte_mempool > > +lib/librte_mbuf > > +DEPDIRS-$(CONFIG_RTE_LIBRTE_PMD_CPT) +=3D lib/librte_malloc > > + > > +include $(RTE_SDK)/mk/rte.lib.mk > > diff --git a/drivers/crypto/cpt/rte_pmd_cpt_version.map > > b/drivers/crypto/cpt/rte_pmd_cpt_version.map > > new file mode 100644 > > index 0000000..9b9ab1a > > --- /dev/null > > +++ b/drivers/crypto/cpt/rte_pmd_cpt_version.map > > @@ -0,0 +1,4 @@ > > +DPDK_18.05 { > > + DPDK_18.08. > > + local: *; > > +}; > > diff --git a/mk/rte.app.mk b/mk/rte.app.mk index 1e32c83..158066d > > 100644 > > --- a/mk/rte.app.mk > > +++ b/mk/rte.app.mk > > @@ -209,7 +209,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_DPAA_SEC) +=3D > -lrte_pmd_dpaa_sec > > endif # CONFIG_RTE_LIBRTE_DPAA_BUS > > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO) +=3D > > -lrte_pmd_virtio_crypto endif # CONFIG_RTE_LIBRTE_CRYPTODEV > > - > > +_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_CPT) +=3D -lrte_pmd_cptvf This should be inside ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y). > > ifeq ($(CONFIG_RTE_LIBRTE_COMPRESSDEV),y) > > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_ISAL) +=3D -lrte_pmd_isal_comp > > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_ISAL) +=3D -lisal >=20 >=20 > You can add meson build as well here on the same patch. >=20 >=20 > > -- > > 1.9.3 > >