On 12/9/2019 9:46 PM, Alfredo Cardigliano wrote: > Add makefile and config file options to compile the Pensando ionic PMD. > Add feature and version map file. > Update maintainers file. > > Signed-off-by: Alfredo Cardigliano <cardigli...@ntop.org> > Reviewed-by: Shannon Nelson <snel...@pensando.io>
<...> > @@ -277,6 +277,11 @@ CONFIG_RTE_LIBRTE_E1000_DEBUG_TX=n > CONFIG_RTE_LIBRTE_E1000_DEBUG_TX_FREE=n > CONFIG_RTE_LIBRTE_E1000_PF_DISABLE_STRIP_CRC=n > > +# > +# Compile Pensando IONIC PMD driver > +# > +CONFIG_RTE_LIBRTE_IONIC_PMD=y > + Is the driver supported by BSD platform or i686, arm, PPC architectures? If not can you please disable the PMD on those config files? <...> > diff --git a/doc/guides/nics/ionic.rst b/doc/guides/nics/ionic.rst > new file mode 100644 > index 000000000..41eac0f6b > --- /dev/null > +++ b/doc/guides/nics/ionic.rst > @@ -0,0 +1,37 @@ > +.. SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0) > + Copyright(c) 2018-2019 Pensando Systems, Inc. All rights reserved. > + > +IONIC Driver > +============ > + > +The ionic driver provides support for Pensando server adapters. > +Please visit https://pensando.io for more information about the > +adapters. Thanks for providing the company link, that was useful. But also can you please provide a link that has the details of the device that 'ionic' driver is for. I can see some documentation related to Naples DSC-xx devices but I assume they are something else. Btw, related to the HW you are providing the driver for, is it publicly available now or are the documentation like specs/datasheets provided publicly? <...> > diff --git a/drivers/net/ionic/Makefile b/drivers/net/ionic/Makefile > new file mode 100644 > index 000000000..d2c2b53b3 > --- /dev/null > +++ b/drivers/net/ionic/Makefile > @@ -0,0 +1,38 @@ > +# SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0) > +# Copyright(c) 2018-2019 Pensando Systems, Inc. All rights reserved. > + > +include $(RTE_SDK)/mk/rte.vars.mk > + > +# > +# library name > +# > +LIB = librte_pmd_ionic.a > + > +CFLAGS += -O3 > +CFLAGS += $(WERROR_FLAGS) > + > +EXPORT_MAP := rte_pmd_ionic_version.map > + > +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y) > +# > +# CFLAGS for icc > +# > + > +else ifeq ($(CONFIG_RTE_TOOLCHAIN_CLANG),y) > +# > +# CFLAGS for clang > +# > + > +else > +# > +# CFLAGS for gcc > +# > + > +endif I would suggest only add these when you really have some CFLAGS to add. > + > +# > +# all source are stored in SRCS-y > +# > +SRCS-$(CONFIG_RTE_LIBRTE_IONIC_PMD) += The SHARED library build is failing because of "undefined reference" to some internal libraries. You need to add "LDLIBS" as you use them in patches, same thing for meson.