[dpdk-dev,v4,2/4] drivers/net: add drivers for Cavium NICs to meson build
Checks
Commit Message
Add Cavium octeontx and thunder nicvf to meson build infrastructure.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
---
drivers/net/meson.build | 3 ++-
drivers/net/octeontx/base/meson.build | 21 +++++++++++++++++++++
drivers/net/octeontx/meson.build | 13 +++++++++++++
drivers/net/thunderx/Makefile | 2 +-
drivers/net/thunderx/base/meson.build | 15 +++++++++++++++
drivers/net/thunderx/meson.build | 20 ++++++++++++++++++++
...cvf_version.map => rte_pmd_thunderx_version.map} | 0
7 files changed, 72 insertions(+), 2 deletions(-)
create mode 100644 drivers/net/octeontx/base/meson.build
create mode 100644 drivers/net/octeontx/meson.build
create mode 100644 drivers/net/thunderx/base/meson.build
create mode 100644 drivers/net/thunderx/meson.build
rename drivers/net/thunderx/{rte_pmd_thunderx_nicvf_version.map => rte_pmd_thunderx_version.map} (100%)
Comments
On Fri, Jan 19, 2018 at 11:45:19PM +0530, Pavan Nikhilesh wrote:
> Add Cavium octeontx and thunder nicvf to meson build infrastructure.
>
> Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
NOTE: the NIC drivers should be kept in alphebetical order, but I'll fix
that on apply of this set.
/Bruce
@@ -3,7 +3,8 @@
drivers = ['af_packet', 'bonding',
'e1000', 'fm10k', 'i40e', 'ixgbe',
- 'null', 'pcap', 'ring']
+ 'null', 'pcap', 'ring',
+ 'octeontx', 'thunderx']
std_deps = ['ethdev', 'kvargs'] # 'ethdev' also pulls in mbuf, net, eal etc
std_deps += ['bus_pci'] # very many PMDs depend on PCI, so make std
std_deps += ['bus_vdev'] # same with vdev bus
new file mode 100644
@@ -0,0 +1,21 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Cavium, Inc
+
+sources = [
+ 'octeontx_pkovf.c',
+ 'octeontx_pkivf.c',
+ 'octeontx_bgx.c'
+]
+
+depends = ['ethdev', 'mempool_octeontx']
+static_objs = []
+foreach d: depends
+ static_objs += [get_variable('static_rte_' + d)]
+endforeach
+
+base_lib = static_library('octeontx_base', sources,
+ c_args: cflags,
+ dependencies: static_objs,
+)
+
+base_objs = base_lib.extract_all_objects()
new file mode 100644
@@ -0,0 +1,13 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Cavium, Inc
+
+subdir('base')
+objs = [base_objs]
+
+sources = files('octeontx_rxtx.c',
+ 'octeontx_ethdev.c'
+ )
+
+deps += ['mempool_octeontx', 'eventdev']
+
+includes += include_directories('base')
@@ -16,7 +16,7 @@ LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
LDLIBS += -lrte_ethdev -lrte_net -lrte_kvargs
LDLIBS += -lrte_bus_pci
-EXPORT_MAP := rte_pmd_thunderx_nicvf_version.map
+EXPORT_MAP := rte_pmd_thunderx_version.map
LIBABIVER := 1
new file mode 100644
@@ -0,0 +1,15 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Cavium, Inc
+
+sources = [
+ 'nicvf_hw.c',
+ 'nicvf_mbox.c',
+ 'nicvf_bsvf.c'
+]
+
+base_lib = static_library('nicvf_base', sources,
+ c_args: cflags,
+ dependencies: static_rte_ethdev
+)
+
+base_objs = base_lib.extract_all_objects()
new file mode 100644
@@ -0,0 +1,20 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Cavium, Inc
+
+subdir('base')
+objs = [base_objs]
+
+sources = files('nicvf_rxtx.c',
+ 'nicvf_ethdev.c',
+ 'nicvf_svf.c'
+)
+
+if cc.has_argument('-fno-prefetch-loop-arrays')
+ cflags += '-fno-prefetch-loop-arrays'
+endif
+
+if cc.has_argument('-Wno-maybe-uninitialized')
+ cflags += '-Wno-maybe-uninitialized'
+endif
+
+includes += include_directories('base')
similarity index 100%
rename from drivers/net/thunderx/rte_pmd_thunderx_nicvf_version.map
rename to drivers/net/thunderx/rte_pmd_thunderx_version.map