drivers/net: build i40e and mlx5 on Windows
Allows i40e and mlx5 PMDs to compile on Windows and disable other drivers. Disable few i40e warnings with Clang such as comparison of integers of different signs and macro redefinitions. Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com> Acked-by: Tal Shnaiderman <talshn@nvidia.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
This commit is contained in:
parent
edd66d57d5
commit
b9d60b5434
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2019 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files('rte_eth_af_xdp.c')
|
||||
|
||||
bpf_dep = dependency('libbpf', required: false)
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
headers = files('rte_pmd_ark.h')
|
||||
|
||||
sources = files('ark_ddm.c',
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Aquantia Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files(
|
||||
'atl_rxtx.c',
|
||||
'atl_ethdev.c',
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
dep = dependency('zlib', required: false)
|
||||
build = dep.found()
|
||||
reason = 'missing dependency, "zlib"'
|
||||
|
@ -2,6 +2,12 @@
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
# Copyright(c) 2020 Broadcom
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
headers = files('rte_pmd_bnxt.h')
|
||||
|
||||
includes += include_directories('tf_ulp')
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
name = 'bond' #, james bond :-)
|
||||
sources = files('rte_eth_bond_api.c', 'rte_eth_bond_pmd.c', 'rte_eth_bond_flow.c',
|
||||
'rte_eth_bond_args.c', 'rte_eth_bond_8023ad.c', 'rte_eth_bond_alb.c')
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files('cxgbe_ethdev.c',
|
||||
'cxgbe_main.c',
|
||||
'cxgbevf_ethdev.c',
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files('ena_ethdev.c',
|
||||
'base/ena_com.c',
|
||||
'base/ena_eth_com.c')
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Cisco Systems, Inc.
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files(
|
||||
'base/vnic_cq.c',
|
||||
'base/vnic_dev.c',
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
cflags += '-std=gnu99'
|
||||
cflags += '-D_DEFAULT_SOURCE'
|
||||
cflags += '-D_XOPEN_SOURCE=700'
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Huawei Technologies Co., Ltd
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -20,6 +20,7 @@
|
||||
#include <rte_io.h>
|
||||
|
||||
#include "../i40e_logs.h"
|
||||
#include "i40e_status.h"
|
||||
|
||||
#define INLINE inline
|
||||
#define STATIC static
|
||||
@ -67,6 +68,15 @@ typedef enum i40e_status_code i40e_status;
|
||||
#define false 0
|
||||
#define true 1
|
||||
|
||||
/* Avoid macro redefinition warning on Windows */
|
||||
#ifdef RTE_EXEC_ENV_WINDOWS
|
||||
#ifdef min
|
||||
#undef min
|
||||
#endif
|
||||
#ifdef max
|
||||
#undef max
|
||||
#endif
|
||||
#endif
|
||||
#define min(a,b) RTE_MIN(a,b)
|
||||
#define max(a,b) RTE_MAX(a,b)
|
||||
|
||||
|
@ -1505,7 +1505,8 @@ i40evf_handle_aq_msg(struct rte_eth_dev *dev)
|
||||
info.msg_len);
|
||||
else {
|
||||
/* read message and it's expected one */
|
||||
if (msg_opc == vf->pend_cmd) {
|
||||
if ((volatile uint32_t)msg_opc ==
|
||||
vf->pend_cmd) {
|
||||
vf->cmd_retval = msg_ret;
|
||||
/* prevent compiler reordering */
|
||||
rte_compiler_barrier();
|
||||
|
@ -354,9 +354,10 @@ i40e_hash_get_pattern_type(const struct rte_flow_item pattern[],
|
||||
}
|
||||
|
||||
/* Check the previous item allows this sub-item. */
|
||||
if (prev_item_type >= RTE_DIM(pattern_next_allow_items) ||
|
||||
if (prev_item_type >= (enum rte_flow_item_type)
|
||||
RTE_DIM(pattern_next_allow_items) ||
|
||||
!(pattern_next_allow_items[prev_item_type] &
|
||||
BIT_ULL(pattern->type)))
|
||||
BIT_ULL(pattern->type)))
|
||||
goto not_sup;
|
||||
|
||||
/* For VLAN item, it does no matter about to pattern type
|
||||
@ -372,7 +373,8 @@ i40e_hash_get_pattern_type(const struct rte_flow_item pattern[],
|
||||
}
|
||||
|
||||
prev_item_type = last_item_type;
|
||||
assert(last_item_type < RTE_DIM(pattern_item_header));
|
||||
assert(last_item_type < (enum rte_flow_item_type)
|
||||
RTE_DIM(pattern_item_header));
|
||||
item_hdr = pattern_item_header[last_item_type];
|
||||
assert(item_hdr);
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "i40e_rxtx.h"
|
||||
#include "i40e_rxtx_vec_common.h"
|
||||
|
||||
#include <x86intrin.h>
|
||||
#include <rte_vect.h>
|
||||
|
||||
#ifndef __INTEL_COMPILER
|
||||
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||
|
@ -554,7 +554,7 @@ i40e_node_add(struct rte_eth_dev *dev, uint32_t node_id,
|
||||
}
|
||||
/* check level */
|
||||
if (level_id != RTE_TM_NODE_LEVEL_ID_ANY &&
|
||||
level_id != parent_node_type + 1) {
|
||||
level_id != (uint32_t)parent_node_type + 1) {
|
||||
error->type = RTE_TM_ERROR_TYPE_NODE_PARAMS;
|
||||
error->message = "Wrong level";
|
||||
return -EINVAL;
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
cflags += ['-Wno-strict-aliasing']
|
||||
|
||||
includes += include_directories('../../common/iavf')
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2019-2020 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0)
|
||||
# Copyright(c) 2019 Pensando
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files(
|
||||
'ionic_mac_api.c',
|
||||
'ionic_rx_filter.c',
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2019 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
#
|
||||
# Add the experimenatal APIs called from this PMD
|
||||
# rte_eth_switch_domain_alloc()
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
cflags += ['-DRTE_LIBRTE_IXGBE_BYPASS']
|
||||
|
||||
subdir('base')
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
# this driver can be built if-and-only-if KNI library is buildable
|
||||
build = dpdk_conf.has('RTE_LIB_KNI')
|
||||
reason = 'missing dependency, DPDK KNI library'
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files('base/lio_23xx_vf.c',
|
||||
'base/lio_mbox.c',
|
||||
'lio_ethdev.c',
|
||||
|
@ -1,9 +1,6 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
drivers = ['af_packet',
|
||||
'af_xdp',
|
||||
|
@ -3,6 +3,12 @@
|
||||
# Copyright(c) 2018 Semihalf.
|
||||
# All rights reserved.
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
dep = dependency('libmusdk', required: false)
|
||||
if not dep.found()
|
||||
build = false
|
||||
|
@ -3,6 +3,12 @@
|
||||
# Copyright(c) 2018 Semihalf.
|
||||
# All rights reserved.
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
dep = dependency('libmusdk', required: false)
|
||||
if not dep.found()
|
||||
build = false
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Microsoft Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
build = dpdk_conf.has('RTE_BUS_VMBUS')
|
||||
reason = 'missing dependency, DPDK VMBus driver'
|
||||
sources = files('hn_ethdev.c', 'hn_rxtx.c', 'hn_rndis.c', 'hn_nvs.c', 'hn_vf.c')
|
||||
|
@ -3,6 +3,12 @@
|
||||
# Copyright(c) 2019 Netcope Technologies, a.s. <info@netcope.com>
|
||||
# All rights reserved.
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
dep = dependency('netcope-common', required: false)
|
||||
reason = 'missing dependency, "libnfb"'
|
||||
build = dep.found()
|
||||
|
@ -1,4 +1,10 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files('rte_eth_null.c')
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Cavium, Inc
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -2,6 +2,12 @@
|
||||
# Copyright(C) 2019 Marvell International Ltd.
|
||||
#
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
if not dpdk_conf.get('RTE_ARCH_64')
|
||||
build = false
|
||||
reason = 'only supported on 64-bit'
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
if not dpdk_conf.has('RTE_PORT_PCAP')
|
||||
build = false
|
||||
reason = 'missing dependency, "libpcap"'
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -1,5 +1,11 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources = files('rte_eth_ring.c')
|
||||
headers = files('rte_eth_ring.h')
|
||||
|
@ -6,6 +6,12 @@
|
||||
# This software was jointly developed between OKTET Labs (under contract
|
||||
# for Solarflare) and Solarflare Communications, Inc.
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
if (arch_subdir != 'x86' or not dpdk_conf.get('RTE_ARCH_64')) and (arch_subdir != 'arm' or not host_machine.cpu_family().startswith('aarch64'))
|
||||
build = false
|
||||
reason = 'only supported on x86_64 and aarch64'
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
dep = dependency('libsze2', required: false)
|
||||
build = dep.found()
|
||||
reason = 'missing dependency, "libsze2"'
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2017 Cavium, Inc
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2015-2020
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('base')
|
||||
objs = [base_objs]
|
||||
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
build = dpdk_conf.has('RTE_LIB_VHOST')
|
||||
reason = 'missing dependency, DPDK vhost library'
|
||||
sources = files('rte_eth_vhost.c')
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Intel Corporation
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources += files('virtio_ethdev.c',
|
||||
'virtio_pci.c',
|
||||
'virtio_rxtx.c',
|
||||
|
@ -1,6 +1,12 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
|
||||
|
||||
if is_windows
|
||||
build = false
|
||||
reason = 'not supported on Windows'
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
sources += files(
|
||||
'vmxnet3_ethdev.c',
|
||||
'vmxnet3_rxtx.c',
|
||||
|
Loading…
Reference in New Issue
Block a user