[dpdk-dev] [PATCH v2 01/17] net/ionic: add skeleton
Ferruh Yigit
ferruh.yigit at intel.com
Mon Dec 2 17:06:52 CET 2019
On 10/15/2019 9:22 AM, 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 <cardigliano at ntop.org>
> Reviewed-by: Shannon Nelson <snelson at pensando.io>
> ---
> MAINTAINERS | 6 +++
> config/common_base | 5 ++
> doc/guides/nics/features/ionic.ini | 8 +++
> doc/guides/nics/index.rst | 1 +
> doc/guides/nics/ionic.rst | 35 +++++++++++++
> drivers/net/Makefile | 1 +
> drivers/net/ionic/Makefile | 58 +++++++++++++++++++++
> drivers/net/ionic/meson.build | 8 +++
> drivers/net/ionic/rte_pmd_ionic_version.map | 5 ++
> mk/rte.app.mk | 1 +
> 10 files changed, 128 insertions(+)
> create mode 100644 doc/guides/nics/features/ionic.ini
> create mode 100644 doc/guides/nics/ionic.rst
> create mode 100644 drivers/net/ionic/Makefile
> create mode 100644 drivers/net/ionic/meson.build
> create mode 100644 drivers/net/ionic/rte_pmd_ionic_version.map
Can you please add the new PMD support to the release notes (release notes of
20.02)?
<...>
> @@ -0,0 +1,35 @@
> +.. SPDX-License-Identifier: GPL-2.0
> + Copyright(c) 2018-2019 Pensando Systems, Inc. All rights reserved.
Why it is GPL-2.0 licensed?
What is the license of the PMD overall?
> +
> +IONIC Driver
> +============
> +
> +The ionic driver provides support for Pensando server adapters.
Can you please provide a link to the product page to get more detailed information?
<...>
> @@ -0,0 +1,58 @@
> +# SPDX-License-Identifier: BSD-3-Clause
> +# 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 += -DALLOW_EXPERIMENTAL_API
Is the allow exprerimental flag really required? If so can you please add the
experimental APIs used as a comment.
> +CFLAGS += -O3
> +CFLAGS += $(WERROR_FLAGS)
> +
> +EXPORT_MAP := rte_pmd_ionic_version.map
> +
> +LIBABIVER := 2
We are not using individual library versioning anymore, please drop this.
> +
> +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
> +#
> +# CFLAGS for icc
> +#
> +CFLAGS += -diag-disable 174 -diag-disable 593 -diag-disable 869
> +CFLAGS += -diag-disable 981 -diag-disable 2259 -diag-disable 3656
This makefile looks like copy/paste from somewhere, please don't add these flags
unless they really are needed.
> +
> +else ifeq ($(CONFIG_RTE_TOOLCHAIN_CLANG),y)
> +#
> +# CFLAGS for clang
> +#
> +CFLAGS += -Wno-unused-parameter -Wno-unused-value -Wno-strict-aliasing
> +CFLAGS += -Wno-format-extra-args
> +
> +else
> +#
> +# CFLAGS for gcc
> +#
> +ifeq ($(shell test $(GCC_VERSION) -ge 44 && echo 1), 1)
> +CFLAGS += -Wno-deprecated -Wno-unused-parameter -Wno-unused-value
> +CFLAGS += -Wno-strict-aliasing -Wno-format-extra-args
> +CFLAGS += -Wno-missing-field-initializers -Wno-pointer-arith
> +endif
> +
> +ifeq ($(shell test $(GCC_VERSION) -ge 70 && echo 1), 1)
> +CFLAGS += -Wno-implicit-fallthrough
> +endif
> +
> +endif
> +
> +LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
> +LDLIBS += -lrte_ethdev -lrte_net -lrte_kvargs -lrte_hash
> +LDLIBS += -lrte_bus_pci
Same here, please don't include anly library that is not really needed.
> +
> +#
> +# all source are stored in SRCS-y
> +#
> +SRCS-$(CONFIG_RTE_LIBRTE_IONIC_PMD) +=
> +
> +include $(RTE_SDK)/mk/rte.lib.mk
> diff --git a/drivers/net/ionic/meson.build b/drivers/net/ionic/meson.build
> new file mode 100644
> index 000000000..502076e3c
> --- /dev/null
> +++ b/drivers/net/ionic/meson.build
> @@ -0,0 +1,8 @@
> +# SPDX-License-Identifier: BSD-3-Clause
> +# Copyright(c) 2019 Pensando
> +
> +version = 1
Same here, can drop the version.
> +
> +sources = files(
> +)
> +
> diff --git a/drivers/net/ionic/rte_pmd_ionic_version.map b/drivers/net/ionic/rte_pmd_ionic_version.map
> new file mode 100644
> index 000000000..96f83bd6c
> --- /dev/null
> +++ b/drivers/net/ionic/rte_pmd_ionic_version.map
> @@ -0,0 +1,5 @@
> +DPDK_2.0 {
The prefix is the now ABI version, you can use 'DPDK_20.0' for it.
More information about the dev
mailing list