On 03/01/2016 06:46 PM, Jan Medala wrote: > This is a PMD for the Amazon ethernet ENA family. > The driver operates variety of ENA adapters through feature negotiation > with the adapter and upgradable commands set. > ENA driver handles PCI Physical and Virtual ENA functions. > > Signed-off-by: Evgeny Schemeilin <evgenys at amazon.com> > Signed-off-by: Jan Medala <jan at semihalf.com> > Signed-off-by: Jakub Palider <jpa at semihalf.com> > --- > config/common_linuxapp | 11 + > drivers/net/Makefile | 1 + > drivers/net/ena/Makefile | 65 ++ > drivers/net/ena/ena_ethdev.c | 1311 > +++++++++++++++++++++++++++++++ > drivers/net/ena/ena_ethdev.h | 155 ++++ > drivers/net/ena/ena_logs.h | 74 ++ > drivers/net/ena/ena_platform.h | 58 ++ > drivers/net/ena/rte_pmd_ena_version.map | 4 + > mk/rte.app.mk | 1 + > 9 files changed, 1680 insertions(+) > create mode 100644 drivers/net/ena/Makefile > create mode 100644 drivers/net/ena/ena_ethdev.c > create mode 100644 drivers/net/ena/ena_ethdev.h > create mode 100644 drivers/net/ena/ena_logs.h > create mode 100644 drivers/net/ena/ena_platform.h > create mode 100644 drivers/net/ena/rte_pmd_ena_version.map > [...] > diff --git a/drivers/net/ena/Makefile b/drivers/net/ena/Makefile > new file mode 100644 > index 0000000..0beb850 > --- /dev/null > +++ b/drivers/net/ena/Makefile > @@ -0,0 +1,65 @@ > +# [...] > +include $(RTE_SDK)/mk/rte.vars.mk > + > +# > +# library name > +# > +LIB = librte_pmd_ena.a > +CFLAGS += $(WERROR_FLAGS) -O2 > +INCLUDES :=-I$(SRCDIR) -I$(SRCDIR)/base/ena_defs -I$(SRCDIR)/base > + > +EXPORT_MAP := rte_pmd_ena_version.map > +LIBABIVER := 1 > + > +VPATH += $(SRCDIR)/base > +# > +# all source are stored in SRCS-y > +# > +SRCS-$(CONFIG_RTE_LIBRTE_ENA_PMD) += ena_ethdev.c > +SRCS-$(CONFIG_RTE_LIBRTE_ENA_PMD) += ena_com.c > +SRCS-$(CONFIG_RTE_LIBRTE_ENA_PMD) += ena_eth_com.c > + > +# this lib depends upon: > +DEPDIRS-$(CONFIG_RTE_LIBRTE_ENA_PMD) += lib/librte_eal lib/librte_ether > +DEPDIRS-$(CONFIG_RTE_LIBRTE_ENA_PMD) += lib/librte_mempool lib/librte_mbuf > +DEPDIRS-$(CONFIG_RTE_LIBRTE_ENA_PMD) += lib/librte_net lib/librte_malloc > + > +ifeq ($(CONFIG_RTE_EXEC_ENV),"cvos") > +CFLAGS += -Wno-old-style-definition > +endif
Hmm, what's this? There's no "cvos" exec env in DPDK that I know of, and while its of course quite harmless I dont think its entirely appropriate to have references to in-house projects and the like (assuming that's what it is) in an OSS project. [...] > diff --git a/drivers/net/ena/rte_pmd_ena_version.map > b/drivers/net/ena/rte_pmd_ena_version.map > new file mode 100644 > index 0000000..ef35398 > --- /dev/null > +++ b/drivers/net/ena/rte_pmd_ena_version.map > @@ -0,0 +1,4 @@ > +DPDK_2.0 { > + > + local: *; > +}; The symbol versions should reflect the actual DPDK version where introduced. Its fairly academical here since no actual symbols are exported but for correctness sake, it should say DPDK_16.04 as the version. - Panu -