Compare commits

..

No commits in common. "imports/c8-beta/dpdk-19.11.2-1.el8" and "c8" have entirely different histories.

9 changed files with 186 additions and 2341 deletions

View File

@ -1 +1,2 @@
29e715804c5af6afc44ffeb128716628823c89d2 SOURCES/dpdk-19.11.2.tar.xz
061198752d3d8b64d33113b7c8c1e272c973403d SOURCES/dpdk-23.11.tar.xz
3cc45b133677fbff08e89e65a2120be52ebb27a5 SOURCES/pyelftools-0.27.tar.gz

3
.gitignore vendored
View File

@ -1 +1,2 @@
SOURCES/dpdk-19.11.2.tar.xz
SOURCES/dpdk-23.11.tar.xz
SOURCES/pyelftools-0.27.tar.gz

View File

@ -1,606 +0,0 @@
# -*- cfg-sha: fedc4fc78a46e35070ea61c62f51c1cb9283062b4bad46fb91f6c2eb9ec536c5
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2015 Cavium, Inc
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2017 Cavium, Inc
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2016 Intel Corporation
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2017 Intel Corporation
# String that appears before the version number
CONFIG_RTE_VER_PREFIX="DPDK"
# Version information completed when this file is processed for a build
CONFIG_RTE_VER_YEAR=19
CONFIG_RTE_VER_MONTH=11
CONFIG_RTE_VER_MINOR=2
CONFIG_RTE_VER_SUFFIX=""
CONFIG_RTE_VER_RELEASE=99
# RTE_EXEC_ENV values are the directories in mk/exec-env/
CONFIG_RTE_EXEC_ENV="linuxapp"
# RTE_ARCH values are architecture we compile for. directories in mk/arch/
CONFIG_RTE_ARCH="arm64"
# machine can define specific variables or action for a specific board
# RTE_MACHINE values are architecture we compile for. directories in mk/machine/
CONFIG_RTE_MACHINE="armv8a"
# The compiler we use.
# RTE_TOOLCHAIN values are architecture we compile for. directories in mk/toolchain/
CONFIG_RTE_TOOLCHAIN="gcc"
# Use intrinsics or assembly code for key routines
CONFIG_RTE_FORCE_INTRINSICS=y
# Machine forces strict alignment constraints.
CONFIG_RTE_ARCH_STRICT_ALIGN=n
# Enable link time optimization
CONFIG_RTE_ENABLE_LTO=n
# Compile to share library
CONFIG_RTE_BUILD_SHARED_LIB=y
# Use newest code breaking previous ABI
CONFIG_RTE_NEXT_ABI=n
# Machine's cache line size
CONFIG_RTE_CACHE_LINE_SIZE=128
# Memory model
CONFIG_RTE_USE_C11_MEM_MODEL=y
# Compile Environment Abstraction Layer
CONFIG_RTE_LIBRTE_EAL=y
CONFIG_RTE_MAX_LCORE=256
CONFIG_RTE_MAX_NUMA_NODES=8
CONFIG_RTE_MAX_HEAPS=32
CONFIG_RTE_MAX_MEMSEG_LISTS=64
# each memseg list will be limited to either RTE_MAX_MEMSEG_PER_LIST pages
# or RTE_MAX_MEM_MB_PER_LIST megabytes worth of memory, whichever is smaller
CONFIG_RTE_MAX_MEMSEG_PER_LIST=8192
CONFIG_RTE_MAX_MEM_MB_PER_LIST=32768
# a "type" is a combination of page size and NUMA node. total number of memseg
# lists per type will be limited to either RTE_MAX_MEMSEG_PER_TYPE pages (split
# over multiple lists of RTE_MAX_MEMSEG_PER_LIST pages), or
# RTE_MAX_MEM_MB_PER_TYPE megabytes of memory (split over multiple lists of
# RTE_MAX_MEM_MB_PER_LIST), whichever is smaller
CONFIG_RTE_MAX_MEMSEG_PER_TYPE=32768
CONFIG_RTE_MAX_MEM_MB_PER_TYPE=131072
# global maximum usable amount of VA, in megabytes
CONFIG_RTE_MAX_MEM_MB=524288
CONFIG_RTE_MAX_MEMZONE=2560
CONFIG_RTE_MAX_TAILQ=32
CONFIG_RTE_ENABLE_ASSERT=n
CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO
CONFIG_RTE_LOG_HISTORY=256
CONFIG_RTE_BACKTRACE=y
CONFIG_RTE_LIBEAL_USE_HPET=n
CONFIG_RTE_EAL_ALWAYS_PANIC_ON_ERROR=n
CONFIG_RTE_EAL_IGB_UIO=n
CONFIG_RTE_EAL_VFIO=y
CONFIG_RTE_MAX_VFIO_GROUPS=64
CONFIG_RTE_MAX_VFIO_CONTAINERS=64
CONFIG_RTE_MALLOC_DEBUG=n
CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=y
CONFIG_RTE_USE_LIBBSD=n
# Recognize/ignore architecture we compile for. AVX/AVX512 CPU flags for performance/power testing.
# AVX512 is marked as experimental for now, will enable it after enough
# field test and possible optimization.
CONFIG_RTE_ENABLE_AVX=y
CONFIG_RTE_ENABLE_AVX512=n
# Use ARM LSE ATOMIC instructions
CONFIG_RTE_ARM_FEATURE_ATOMICS=n
# Default driver path (or "" to disable)
CONFIG_RTE_EAL_PMD_PATH="/usr/lib64/dpdk-pmds"
# Compile Environment Abstraction Layer to support Vmware TSC map
CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=y
# Compile architecture we compile for. PCI library
CONFIG_RTE_LIBRTE_PCI=y
# Compile architecture we compile for. argument parser library
CONFIG_RTE_LIBRTE_KVARGS=y
# Compile generic ethernet library
CONFIG_RTE_LIBRTE_ETHER=y
CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n
CONFIG_RTE_MAX_ETHPORTS=32
CONFIG_RTE_MAX_QUEUES_PER_PORT=1024
CONFIG_RTE_LIBRTE_IEEE1588=n
CONFIG_RTE_ETHDEV_QUEUE_STAT_CNTRS=16
CONFIG_RTE_ETHDEV_RXTX_CALLBACKS=y
CONFIG_RTE_ETHDEV_PROFILE_WITH_VTUNE=n
# Turn off Tx preparation stage
# Warning: rte_eth_tx_prepare() can be safely disabled only if using a
# driver which do not implement any Tx preparation.
CONFIG_RTE_ETHDEV_TX_PREPARE_NOOP=n
# Common libraries, before Bus/PMDs
CONFIG_RTE_LIBRTE_COMMON_DPAAX=n
# Compile architecture we compile for. Intel FPGA bus
CONFIG_RTE_LIBRTE_IFPGA_BUS=n
# Compile PCI bus driver
CONFIG_RTE_LIBRTE_PCI_BUS=y
# Compile architecture we compile for. vdev bus
CONFIG_RTE_LIBRTE_VDEV_BUS=y
# Compile ARK PMD
CONFIG_RTE_LIBRTE_ARK_PMD=n
CONFIG_RTE_LIBRTE_ARK_PAD_TX=y
CONFIG_RTE_LIBRTE_ARK_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_STATS=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_TRACE=n
# Compile Aquantia Atlantic PMD driver
CONFIG_RTE_LIBRTE_ATLANTIC_PMD=n
# Compile AMD PMD
CONFIG_RTE_LIBRTE_AXGBE_PMD=n
CONFIG_RTE_LIBRTE_AXGBE_PMD_DEBUG=n
# Compile burst-oriented Broadcom PMD driver
CONFIG_RTE_LIBRTE_BNX2X_PMD=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_RX=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_TX=n
CONFIG_RTE_LIBRTE_BNX2X_MF_SUPPORT=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_PERIODIC=n
# Compile burst-oriented Broadcom BNXT PMD driver
CONFIG_RTE_LIBRTE_BNXT_PMD=n
# Compile burst-oriented Chelsio Terminator (CXGBE) PMD
CONFIG_RTE_LIBRTE_CXGBE_PMD=n
# Compile burst-oriented NXP PFE PMD driver
CONFIG_RTE_LIBRTE_PFE_PMD=n
# NXP DPAA Bus
CONFIG_RTE_LIBRTE_DPAA_BUS=n
CONFIG_RTE_LIBRTE_DPAA_MEMPOOL=n
CONFIG_RTE_LIBRTE_DPAA_PMD=n
CONFIG_RTE_LIBRTE_DPAA_HWDEBUG=n
# Compile NXP DPAA2 FSL-MC Bus
CONFIG_RTE_LIBRTE_FSLMC_BUS=n
# Compile Support Libraries for NXP DPAA2
CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL=n
CONFIG_RTE_LIBRTE_DPAA2_USE_PHYS_IOVA=y
# Compile burst-oriented NXP DPAA2 PMD driver
CONFIG_RTE_LIBRTE_DPAA2_PMD=n
CONFIG_RTE_LIBRTE_DPAA2_DEBUG_DRIVER=n
# Compile NXP ENETC PMD Driver
CONFIG_RTE_LIBRTE_ENETC_PMD=n
# Compile burst-oriented Amazon ENA PMD driver
CONFIG_RTE_LIBRTE_ENA_PMD=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_ENA_COM_DEBUG=n
# Compile burst-oriented Cisco ENIC PMD driver
CONFIG_RTE_LIBRTE_ENIC_PMD=n
# Compile burst-oriented IGB & EM PMD drivers
CONFIG_RTE_LIBRTE_EM_PMD=n
CONFIG_RTE_LIBRTE_IGB_PMD=y
CONFIG_RTE_LIBRTE_E1000_DEBUG_RX=n
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 burst-oriented HINIC PMD driver
CONFIG_RTE_LIBRTE_HINIC_PMD=n
# Compile burst-oriented HNS3 PMD driver
CONFIG_RTE_LIBRTE_HNS3_PMD=n
# Compile burst-oriented IXGBE PMD driver
CONFIG_RTE_LIBRTE_IXGBE_PMD=y
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
CONFIG_RTE_IXGBE_INC_VECTOR=y
CONFIG_RTE_LIBRTE_IXGBE_BYPASS=n
# Compile burst-oriented I40E PMD driver
CONFIG_RTE_LIBRTE_I40E_PMD=y
CONFIG_RTE_LIBRTE_I40E_DEBUG_RX=n
CONFIG_RTE_LIBRTE_I40E_DEBUG_TX=n
CONFIG_RTE_LIBRTE_I40E_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC=y
CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y
CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n
CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF=64
CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM=4
# Compile burst-oriented FM10K PMD
CONFIG_RTE_LIBRTE_FM10K_PMD=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_RX=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE=y
CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y
# Compile burst-oriented ICE PMD driver
CONFIG_RTE_LIBRTE_ICE_PMD=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_ICE_RX_ALLOW_BULK_ALLOC=y
CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC=n
# Compile burst-oriented IAVF PMD driver
CONFIG_RTE_LIBRTE_IAVF_PMD=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_RX=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_DUMP_DESC=n
CONFIG_RTE_LIBRTE_IAVF_16BYTE_RX_DESC=n
# Compile burst-oriented IPN3KE PMD driver
CONFIG_RTE_LIBRTE_IPN3KE_PMD=n
# Compile burst-oriented Mellanox ConnectX-3 (MLX4) PMD
CONFIG_RTE_LIBRTE_MLX4_PMD=n
CONFIG_RTE_LIBRTE_MLX4_DEBUG=n
# Compile burst-oriented Mellanox ConnectX-4, ConnectX-5,
# ConnectX-6 & BlueField (MLX5) PMD
CONFIG_RTE_LIBRTE_MLX5_PMD=n
CONFIG_RTE_LIBRTE_MLX5_DEBUG=n
# Linking method for mlx4/5 dependency on ibverbs and related libraries
# Default linking is dynamic by linker.
# Other options are: dynamic by dlopen at run-time, or statically embedded.
CONFIG_RTE_IBVERBS_LINK_DLOPEN=n
CONFIG_RTE_IBVERBS_LINK_STATIC=n
# Compile burst-oriented Netronome NFP PMD driver
CONFIG_RTE_LIBRTE_NFP_PMD=n
CONFIG_RTE_LIBRTE_NFP_DEBUG_TX=n
CONFIG_RTE_LIBRTE_NFP_DEBUG_RX=n
# QLogic 10G/25G/40G/50G/100G PMD
CONFIG_RTE_LIBRTE_QEDE_PMD=n
CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
#Provides abs path/name of architecture we compile for. firmware file.
#Empty string denotes driver will use default firmware
CONFIG_RTE_LIBRTE_QEDE_FW=""
# Compile burst-oriented Solarflare libefx-based PMD
CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n
CONFIG_RTE_LIBRTE_SFC_EFX_DEBUG=n
# Compile software PMD backed by SZEDATA2 device
CONFIG_RTE_LIBRTE_PMD_SZEDATA2=n
# Compile software PMD backed by NFB device
CONFIG_RTE_LIBRTE_NFB_PMD=n
# Compile burst-oriented Cavium Thunderx NICVF PMD driver
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_PMD=n
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_RX=n
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX=n
# Compile burst-oriented Cavium LiquidIO PMD driver
CONFIG_RTE_LIBRTE_LIO_PMD=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_RX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_TX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_MBOX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_REGS=n
# Compile burst-oriented Cavium OCTEONTX network PMD driver
CONFIG_RTE_LIBRTE_OCTEONTX_PMD=n
# Compile burst-oriented Marvell OCTEON TX2 network PMD driver
CONFIG_RTE_LIBRTE_OCTEONTX2_PMD=n
# Compile WRS accelerated virtual port (AVP) guest PMD driver
CONFIG_RTE_LIBRTE_AVP_PMD=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_RX=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_TX=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_BUFFERS=n
# Compile burst-oriented VIRTIO PMD driver
CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n
# Compile virtio device emulation inside virtio PMD driver
CONFIG_RTE_VIRTIO_USER=n
# Compile burst-oriented VMXNET3 PMD driver
CONFIG_RTE_LIBRTE_VMXNET3_PMD=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n
# Compile software PMD backed by AF_PACKET sockets (Linux only)
CONFIG_RTE_LIBRTE_PMD_AF_PACKET=n
# Compile software PMD backed by AF_XDP sockets (Linux only)
CONFIG_RTE_LIBRTE_PMD_AF_XDP=n
# Compile Memory Interface PMD driver (Linux only)
CONFIG_RTE_LIBRTE_PMD_MEMIF=n
# Compile link bonding PMD library
CONFIG_RTE_LIBRTE_PMD_BOND=n
CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB=n
CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB_L1=n
# Compile fail-safe PMD
CONFIG_RTE_LIBRTE_PMD_FAILSAFE=y
# Compile Marvell PMD driver
CONFIG_RTE_LIBRTE_MVPP2_PMD=n
# Compile Marvell MVNETA PMD driver
CONFIG_RTE_LIBRTE_MVNETA_PMD=n
# Compile support for VMBus library
CONFIG_RTE_LIBRTE_VMBUS=n
# Compile native PMD for Hyper-V/Azure
CONFIG_RTE_LIBRTE_NETVSC_PMD=n
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_RX=n
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_TX=n
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_DUMP=n
# Compile virtual device driver for NetVSC on Hyper-V/Azure
CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD=n
# Compile null PMD
CONFIG_RTE_LIBRTE_PMD_NULL=n
# Compile software PMD backed by PCAP files
CONFIG_RTE_LIBRTE_PMD_PCAP=n
# Compile example software rings based PMD
CONFIG_RTE_LIBRTE_PMD_RING=y
CONFIG_RTE_PMD_RING_MAX_RX_RINGS=16
CONFIG_RTE_PMD_RING_MAX_TX_RINGS=16
# Compile SOFTNIC PMD
CONFIG_RTE_LIBRTE_PMD_SOFTNIC=n
# Compile architecture we compile for. TAP PMD
# It is enabled by default for Linux only.
CONFIG_RTE_LIBRTE_PMD_TAP=y
# Do prefetch of packet data within PMD driver receive function
CONFIG_RTE_PMD_PACKET_PREFETCH=y
# Compile generic wireless base band device library
# EXPERIMENTAL: API may change without prior notice
CONFIG_RTE_LIBRTE_BBDEV=n
CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
CONFIG_RTE_BBDEV_MAX_DEVS=128
CONFIG_RTE_BBDEV_OFFLOAD_COST=y
CONFIG_RTE_BBDEV_SDK_AVX2=n
CONFIG_RTE_BBDEV_SDK_AVX512=n
# Compile PMD for NULL bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=n
# Compile PMD for turbo software bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
# Compile PMD for Intel FPGA LTE FEC bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_FPGA_LTE_FEC=n
# Compile generic crypto device library
CONFIG_RTE_LIBRTE_CRYPTODEV=n
CONFIG_RTE_CRYPTO_MAX_DEVS=64
# Compile PMD for ARMv8 Crypto device
CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO=n
CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG=n
# Compile NXP CAAM JR crypto Driver
CONFIG_RTE_LIBRTE_PMD_CAAM_JR=n
CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE=n
# Compile NXP DPAA2 crypto sec driver for CAAM HW
CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC=n
# NXP DPAA caam - crypto driver
CONFIG_RTE_LIBRTE_PMD_DPAA_SEC=n
CONFIG_RTE_LIBRTE_DPAA_MAX_CRYPTODEV=4
# Compile PMD for Cavium OCTEON TX crypto device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO=n
# Compile PMD for Marvell OCTEON TX2 crypto device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_CRYPTO=n
# Compile PMD for QuickAssist based devices - see docs for details
CONFIG_RTE_LIBRTE_PMD_QAT=n
CONFIG_RTE_LIBRTE_PMD_QAT_SYM=n
CONFIG_RTE_LIBRTE_PMD_QAT_ASYM=n
# Max. number of QuickAssist devices, which can be detected and attached
CONFIG_RTE_PMD_QAT_MAX_PCI_DEVICES=48
CONFIG_RTE_PMD_QAT_COMP_IM_BUFFER_SIZE=65536
# Compile PMD for virtio crypto devices
CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO=n
# Number of maximum virtio crypto devices
CONFIG_RTE_MAX_VIRTIO_CRYPTO=32
# Compile PMD for AESNI backed device
CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n
# Compile PMD for Software backed device
CONFIG_RTE_LIBRTE_PMD_OPENSSL=n
# Compile PMD for AESNI GCM device
CONFIG_RTE_LIBRTE_PMD_AESNI_GCM=n
# Compile PMD for SNOW 3G device
CONFIG_RTE_LIBRTE_PMD_SNOW3G=n
CONFIG_RTE_LIBRTE_PMD_SNOW3G_DEBUG=n
# Compile PMD for KASUMI device
CONFIG_RTE_LIBRTE_PMD_KASUMI=n
# Compile PMD for ZUC device
CONFIG_RTE_LIBRTE_PMD_ZUC=n
# Compile PMD for Crypto Scheduler device
CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER=n
# Compile PMD for NULL Crypto device
CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO=n
# Compile PMD for AMD CCP crypto device
CONFIG_RTE_LIBRTE_PMD_CCP=n
# Compile PMD for Marvell Crypto device
CONFIG_RTE_LIBRTE_PMD_MVSAM_CRYPTO=n
# Compile PMD for NITROX crypto device
CONFIG_RTE_LIBRTE_PMD_NITROX=n
# Compile generic security library
CONFIG_RTE_LIBRTE_SECURITY=n
# Compile generic compression device library
CONFIG_RTE_LIBRTE_COMPRESSDEV=n
CONFIG_RTE_COMPRESS_MAX_DEVS=64
# Compile compressdev unit test
CONFIG_RTE_COMPRESSDEV_TEST=n
# Compile PMD for Octeontx ZIPVF compression device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF=n
# Compile PMD for ISA-L compression device
CONFIG_RTE_LIBRTE_PMD_ISAL=n
# Compile PMD for ZLIB compression device
CONFIG_RTE_LIBRTE_PMD_ZLIB=n
# Compile generic event device library
CONFIG_RTE_LIBRTE_EVENTDEV=n
CONFIG_RTE_LIBRTE_EVENTDEV_DEBUG=n
CONFIG_RTE_EVENT_MAX_DEVS=16
CONFIG_RTE_EVENT_MAX_QUEUES_PER_DEV=64
CONFIG_RTE_EVENT_TIMER_ADAPTER_NUM_MAX=32
CONFIG_RTE_EVENT_ETH_INTR_RING_SIZE=1024
CONFIG_RTE_EVENT_CRYPTO_ADAPTER_MAX_INSTANCE=32
CONFIG_RTE_EVENT_ETH_TX_ADAPTER_MAX_INSTANCE=32
# Compile PMD for skeleton event device
CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV=n
CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG=n
# Compile PMD for software event device
CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV=n
# Compile PMD for distributed software event device
CONFIG_RTE_LIBRTE_PMD_DSW_EVENTDEV=n
# Compile PMD for octeontx sso event device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=n
# Compile PMD for octeontx2 sso event device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_EVENTDEV=n
# Compile PMD for OPDL event device
CONFIG_RTE_LIBRTE_PMD_OPDL_EVENTDEV=n
# Compile PMD for NXP DPAA event device
CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV=n
# Compile PMD for NXP DPAA2 event device
CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV=n
# Compile raw device support
# EXPERIMENTAL: API may change without prior notice
CONFIG_RTE_LIBRTE_RAWDEV=n
CONFIG_RTE_RAWDEV_MAX_DEVS=64
CONFIG_RTE_LIBRTE_PMD_SKELETON_RAWDEV=n
# Compile PMD for NXP DPAA2 CMDIF raw device
CONFIG_RTE_LIBRTE_PMD_DPAA2_CMDIF_RAWDEV=n
# Compile PMD for NXP DPAA2 QDMA raw device
CONFIG_RTE_LIBRTE_PMD_DPAA2_QDMA_RAWDEV=n
# Compile PMD for Intel FPGA raw device
CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=n
# Compile PMD for Intel IOAT raw device
CONFIG_RTE_LIBRTE_PMD_IOAT_RAWDEV=n
# Compile PMD for octeontx2 DMA raw device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_DMA_RAWDEV=n
# Compile PMD for NTB raw device
CONFIG_RTE_LIBRTE_PMD_NTB_RAWDEV=n
# Compile librte_ring
CONFIG_RTE_LIBRTE_RING=y
# Compile librte_stack
CONFIG_RTE_LIBRTE_STACK=y
# Compile librte_mempool
CONFIG_RTE_LIBRTE_MEMPOOL=y
CONFIG_RTE_MEMPOOL_CACHE_MAX_SIZE=512
CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=n
# Compile Mempool drivers
CONFIG_RTE_DRIVER_MEMPOOL_BUCKET=y
CONFIG_RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB=64
CONFIG_RTE_DRIVER_MEMPOOL_RING=y
CONFIG_RTE_DRIVER_MEMPOOL_STACK=y
# Compile PMD for octeontx fpa mempool device
CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL=n
# Compile PMD for octeontx2 npa mempool device
CONFIG_RTE_LIBRTE_OCTEONTX2_MEMPOOL=n
# Compile librte_mbuf
CONFIG_RTE_LIBRTE_MBUF=y
CONFIG_RTE_LIBRTE_MBUF_DEBUG=n
CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS="ring_mp_mc"
CONFIG_RTE_MBUF_REFCNT_ATOMIC=y
CONFIG_RTE_PKTMBUF_HEADROOM=128
# Compile librte_timer
CONFIG_RTE_LIBRTE_TIMER=n
CONFIG_RTE_LIBRTE_TIMER_DEBUG=n
# Compile librte_cfgfile
CONFIG_RTE_LIBRTE_CFGFILE=n
# Compile librte_cmdline
CONFIG_RTE_LIBRTE_CMDLINE=y
CONFIG_RTE_LIBRTE_CMDLINE_DEBUG=n
# Compile librte_hash
CONFIG_RTE_LIBRTE_HASH=y
CONFIG_RTE_LIBRTE_HASH_DEBUG=n
# Compile librte_efd
CONFIG_RTE_LIBRTE_EFD=n
# Compile librte_member
CONFIG_RTE_LIBRTE_MEMBER=y
# Compile librte_jobstats
CONFIG_RTE_LIBRTE_JOBSTATS=n
# Compile architecture we compile for. device metrics library
CONFIG_RTE_LIBRTE_METRICS=y
# Compile architecture we compile for. bitrate statistics library
CONFIG_RTE_LIBRTE_BITRATE=y
# Compile architecture we compile for. latency statistics library
CONFIG_RTE_LIBRTE_LATENCY_STATS=y
# Compile librte_telemetry
CONFIG_RTE_LIBRTE_TELEMETRY=n
# Compile librte_rcu
CONFIG_RTE_LIBRTE_RCU=n
CONFIG_RTE_LIBRTE_RCU_DEBUG=n
# Compile librte_rib
CONFIG_RTE_LIBRTE_RIB=n
# Compile librte_fib
CONFIG_RTE_LIBRTE_FIB=n
CONFIG_RTE_LIBRTE_FIB_DEBUG=n
# Compile librte_lpm
CONFIG_RTE_LIBRTE_LPM=n
CONFIG_RTE_LIBRTE_LPM_DEBUG=n
# Compile librte_acl
CONFIG_RTE_LIBRTE_ACL=n
CONFIG_RTE_LIBRTE_ACL_DEBUG=n
# Compile librte_power
CONFIG_RTE_LIBRTE_POWER=n
CONFIG_RTE_LIBRTE_POWER_DEBUG=n
CONFIG_RTE_MAX_LCORE_FREQS=64
# Compile librte_net
CONFIG_RTE_LIBRTE_NET=y
# Compile librte_ip_frag
CONFIG_RTE_LIBRTE_IP_FRAG=y
CONFIG_RTE_LIBRTE_IP_FRAG_DEBUG=n
CONFIG_RTE_LIBRTE_IP_FRAG_MAX_FRAG=4
CONFIG_RTE_LIBRTE_IP_FRAG_TBL_STAT=n
# Compile GRO library
CONFIG_RTE_LIBRTE_GRO=y
# Compile GSO library
CONFIG_RTE_LIBRTE_GSO=y
# Compile librte_meter
CONFIG_RTE_LIBRTE_METER=y
# Compile librte_classify
CONFIG_RTE_LIBRTE_FLOW_CLASSIFY=n
# Compile librte_sched
CONFIG_RTE_LIBRTE_SCHED=n
CONFIG_RTE_SCHED_DEBUG=n
CONFIG_RTE_SCHED_RED=n
CONFIG_RTE_SCHED_COLLECT_STATS=n
CONFIG_RTE_SCHED_SUBPORT_TC_OV=n
CONFIG_RTE_SCHED_PORT_N_GRINDERS=8
CONFIG_RTE_SCHED_VECTOR=n
# Compile architecture we compile for. distributor library
CONFIG_RTE_LIBRTE_DISTRIBUTOR=n
# Compile architecture we compile for. reorder library
CONFIG_RTE_LIBRTE_REORDER=n
# Compile librte_port
CONFIG_RTE_LIBRTE_PORT=n
CONFIG_RTE_PORT_STATS_COLLECT=n
CONFIG_RTE_PORT_PCAP=n
# Compile librte_table
CONFIG_RTE_LIBRTE_TABLE=n
CONFIG_RTE_TABLE_STATS_COLLECT=n
# Compile librte_pipeline
CONFIG_RTE_LIBRTE_PIPELINE=n
CONFIG_RTE_PIPELINE_STATS_COLLECT=n
# Compile librte_kni
CONFIG_RTE_LIBRTE_KNI=n
CONFIG_RTE_LIBRTE_PMD_KNI=n
CONFIG_RTE_KNI_KMOD=n
CONFIG_RTE_KNI_PREEMPT_DEFAULT=y
# Compile architecture we compile for. pdump library
CONFIG_RTE_LIBRTE_PDUMP=y
# Compile vhost user library
CONFIG_RTE_LIBRTE_VHOST=y
CONFIG_RTE_LIBRTE_VHOST_NUMA=y
CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
# Compile vhost PMD
# To compile, CONFIG_RTE_LIBRTE_VHOST should be enabled.
CONFIG_RTE_LIBRTE_PMD_VHOST=y
# Compile IFC driver
# To compile, CONFIG_RTE_LIBRTE_VHOST and CONFIG_RTE_EAL_VFIO
# should be enabled.
CONFIG_RTE_LIBRTE_IFC_PMD=n
# Compile librte_bpf
CONFIG_RTE_LIBRTE_BPF=n
# allow load BPF from ELF files (requires libelf)
CONFIG_RTE_LIBRTE_BPF_ELF=n
# Compile librte_ipsec
CONFIG_RTE_LIBRTE_IPSEC=n
# Compile architecture we compile for. test application
CONFIG_RTE_APP_TEST=y
CONFIG_RTE_APP_TEST_RESOURCE_TAR=n
# Compile architecture we compile for. procinfo application
CONFIG_RTE_PROC_INFO=n
# Compile architecture we compile for. PMD test application
CONFIG_RTE_TEST_PMD=y
CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n
CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n
# Compile architecture we compile for. bbdev test application
CONFIG_RTE_TEST_BBDEV=n
# Compile architecture we compile for. compression performance application
CONFIG_RTE_APP_COMPRESS_PERF=n
# Compile architecture we compile for. crypto performance application
CONFIG_RTE_APP_CRYPTO_PERF=n
# Compile architecture we compile for. eventdev application
CONFIG_RTE_APP_EVENTDEV=n
CONFIG_RTE_EXEC_ENV_LINUX=y
CONFIG_RTE_EXEC_ENV_LINUXAPP=y
CONFIG_RTE_LIBRTE_VHOST_POSTCOPY=n
# Common libraries, before Bus/PMDs
# NXP DPAA BUS and drivers
# NXP FSLMC BUS and DPAA2 drivers
# NXP ENETC PMD Driver
# HINIC PMD driver
# Hisilicon HNS3 PMD driver
# Compile PMD for Intel FPGA raw device
# To compile, CONFIG_RTE_EAL_VFIO should be enabled.
CONFIG_RTE_ARCH_ARM64=y
CONFIG_RTE_ARCH_64=y
# Maximum available cache line size in arm64 implementations.
# Setting to maximum available cache line size in generic config
# to address minimum DMA alignment across all arm64 implementations.
# Accelarate rte_memcpy. Be sure to run unit test (memcpy_perf_autotest)
# to determine architecture we compile for. best threshold in code. Refer to notes in source file
# (lib/librte_eal/common/include/arch/arm/rte_memcpy_64.h) for more info.
CONFIG_RTE_ARCH_ARM64_MEMCPY=n
#CONFIG_RTE_ARM64_MEMCPY_ALIGNED_THRESHOLD=2048
#CONFIG_RTE_ARM64_MEMCPY_UNALIGNED_THRESHOLD=512
# Leave below RTE_ARM64_MEMCPY_xxx options commented out, unless there're
# strong reasons.
#CONFIG_RTE_ARM64_MEMCPY_SKIP_GCC_VER_CHECK=n
#CONFIG_RTE_ARM64_MEMCPY_ALIGN_MASK=0xF
#CONFIG_RTE_ARM64_MEMCPY_STRICT_ALIGN=n
# NXP PFE PMD Driver
CONFIG_RTE_TOOLCHAIN_GCC=y

View File

@ -1,104 +0,0 @@
# Copyright (C) 2017, Red Hat, Inc.
#
# Core configuration file library.
# Configurations are determined by sha values. The way to determine is by
# the special text:
# $FILE_COMMENT_TYPE -*- cfg-sha: $SHA256 -*-
export LC_ALL=C
# check required binaries
__check_reqd_binaries() {
local BIN __binaries=("egrep" "sort" "sha256sum" "sed")
for BIN in $__binaries; do
if ! type -P $BIN >/dev/null 2>&1; then
echo "Binary $BIN not found. Please install."
exit 1
fi
done
}
# Calculates a sha from a file
# The algorithm for generating a sha from a config is thus:
#
# 1. Remove all comment lines and blank lines
# 2. Sort the content
# 3. generate the sha-256 sum
#
# From a script perspective, this means:
# egrep -v ^\# %file% | egrep -v ^$ | sort -u | sha256sum
#
# Params:
# $1 = output variable
# $2 = file to use to calculate the shasum
# $3 = file comment type (defaults to # if unspecified)
calc_sha() {
__check_reqd_binaries
if [ "$1" == "" ]; then
echo "Please pass in a storage variable."
return 1
fi
local __resultvar=$1
__retval=1
shift
local __file=$1
local cmnt=${2:-#}
if [ -f "$__file" ]; then
local __shasum=$(egrep -v ^"$cmnt" "$__file" | egrep -v ^$ | sort -u | sha256sum -t | cut -d" " -f1)
eval $__resultvar="'$__shasum'"
__retval=0
fi
return $__retval
}
# Retrieves a sha stored in a file
# Param:
# $1 = output variable
# $2 = file to use to calculate the shasum
# $3 = file comment type (defaults to # if unspecified)
retr_sha() {
__check_reqd_binaries
if [ "$1" == "" ]; then
echo "Please pass in a storage variable."
return 1
fi
local __resultvar=$1
__retval=1
shift
local __file=$1
local cmnt=${2:-#}
if [ -f "$__file" ]; then
if grep -q "$cmnt -\*- cfg-sha:" "$__file"; then
local __shasum=$(grep "$cmnt -\*- cfg-sha:" "$__file" | sed -e "s@$cmnt -\*- cfg-sha: @@" | cut -d" " -f1)
eval $__resultvar="'$__shasum'"
__retval=0
fi
fi
return $__retval
}
# Set a config value
# set_conf dpdk_build_tree parameter value
# dpdk_build_tree is the directory where the .config lives
# parameter is the config parameter
# value is the value to set for the config parameter
set_conf() {
c="$1/.config"
shift
if grep -q "$1" "$c"; then
sed -i "s:^$1=.*$:$1=$2:g" $c
else
echo $1=$2 >> "$c"
fi
}

View File

@ -1,237 +0,0 @@
#!/bin/bash
source configlib.sh
# Generates arch configurations in the current directory based on
# 1. an dpdk.spec file
# 2. an expanded dpdk tree
if (( $# != 2 )); then
echo "$0: dpdk.spec dpdk_tree" >&2
exit 1
fi
DPDKSPEC="$1"
DPDKDIR="$2"
# accumulate all arch + name triples
DPDK_CONF_MACH_ARCH=()
for arch in $(grep %define\ machine_arch "$DPDKSPEC" | sed 's@%define machine_arch @@')
do
DPDK_CONF_MACH_ARCH+=($arch)
done
DPDK_CONF_MACH_TMPL=()
for tmpl in $(grep %define\ machine_tmpl "$DPDKSPEC" | sed 's@%define machine_tmpl @@')
do
DPDK_CONF_MACH_TMPL+=($tmpl)
done
DPDK_CONF_MACH=()
for mach in $(grep %define\ machine\ "$DPDKSPEC" | sed 's@%define machine @@')
do
DPDK_CONF_MACH+=($mach)
done
DPDK_TARGETS=()
for ((i=0; i < ${#DPDK_CONF_MACH[@]}; i++));
do
DPDK_TARGETS+=("${DPDK_CONF_MACH_ARCH[$i]}-${DPDK_CONF_MACH_TMPL[$i]}-linuxapp-gcc")
echo "DPDK-target: ${DPDK_TARGETS[$i]}"
done
OUTPUT_DIR=$(pwd)
pushd "$DPDKDIR"
for ((i=0; i < ${#DPDK_TARGETS[@]}; i++));
do
echo "For ${DPDK_TARGETS[$i]}:"
echo " a. Generating initial config"
echo " make V=1 T=${DPDK_TARGETS[$i]} O=${DPDK_TARGETS[$i]}"
make V=1 T=${DPDK_TARGETS[$i]} O=${DPDK_TARGETS[$i]} -j8 config
ORIG_SHA=""
OUTDIR="${DPDK_TARGETS[$i]}"
echo " b. calculating and applying sha"
calc_sha ORIG_SHA "${OUTDIR}/.config"
if [ "$ORIG_SHA" == "" ]; then
echo "ERROR: Unable to get sha for arch ${DPDK_TARGETS[$i]}"
exit 1
fi
echo "# -*- cfg-sha: ${ORIG_SHA}" > ${OUTDIR}/.config.new
cat "${OUTDIR}/.config" >> "${OUTDIR}/.config.new"
cp "${OUTDIR}/.config" "${OUTDIR}/.config.orig"
mv -f "${OUTDIR}/.config.new" "${OUTDIR}/.config"
echo " c. setting initial configurations"
# these are the original setconf values from dpdk.spec
set_conf "${OUTDIR}" CONFIG_RTE_MACHINE "\\\"${DPDK_CONF_MACH[$i]}\\\""
# Enable automatic driver loading from this path
set_conf "${OUTDIR}" CONFIG_RTE_EAL_PMD_PATH '"/usr/lib64/dpdk-pmds"'
# Disable DPDK libraries not needed
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_TIMER n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_CFGFILE n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_JOBSTATS n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_LPM n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_ACL n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_POWER n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_SCHED n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_DISTRIBUTOR n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_REORDER n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PORT n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_TABLE n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PIPELINE n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_KNI n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_CRYPTODEV n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_SECURITY n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_FLOW_CLASSIFY n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_BBDEV n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_COMPRESSDEV n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_BPF n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_DPAA_MEMPOOL n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_OCTEONTX2_MEMPOOL n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_CFGFILE n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_EFD n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_FLOW_CLASSIFY n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_RCU n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_RIB n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_FIB n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_IPSEC n
# Disable all eventdevs
for eventdev in $(grep _EVENTDEV= "${OUTDIR}/.config" | sed 's@=\(y\|n\)@@g')
do
set_conf "${OUTDIR}" $eventdev n
done
# Disable all rawdevs
for rawdev in $(grep _RAWDEV= "${OUTDIR}/.config" | sed 's@=\(y\|n\)@@g')
do
set_conf "${OUTDIR}" $rawdev n
done
# Disable virtio user
set_conf "${OUTDIR}" CONFIG_RTE_VIRTIO_USER n
# Enable vhost numa as libnuma dep is ok
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VHOST_NUMA y
# start by disabling ALL PMDs
for pmd in $(grep _PMD= "${OUTDIR}/.config" | sed 's@=\(y\|n\)@@g')
do
set_conf "${OUTDIR}" $pmd n
done
# PMDs which have their own naming scheme
# the default for this was 'n' at one point. Make sure we keep it
# as such
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_QAT n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_VHOST n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_KNI n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_NULL n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_PCAP n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_BOND n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_AF_PACKET n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_SOFTNIC n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_DPAA_SEC n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_COMMON_DPAAX n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_CAAM_JR n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_MEMIF n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_BBDEV_FPGA_LTE_FEC n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_CRYPTO n
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_NITROX n
# whitelist of enabled PMDs
# Soft PMDs to enable
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_RING y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_VHOST y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VIRTIO_PMD y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_TAP y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_FAILSAFE y
# start by disabling all buses
for bus in $(grep _BUS= "${OUTDIR}/.config" | sed 's@=\(y\|n\)@@g')
do
set_conf "${OUTDIR}" $bus n
done
# blacklist buses that don't conform to std naming
# May override VMBUS later in arch specific section
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VMBUS n
# whitelist buses
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PCI_BUS y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VDEV_BUS y
# Disable some other miscellanous items related to test apps
set_conf "${OUTDIR}" CONFIG_RTE_TEST_BBDEV n
set_conf "${OUTDIR}" CONFIG_RTE_APP_CRYPTO_PERF n
set_conf "${OUTDIR}" CONFIG_RTE_APP_COMPRESS_PERF n
set_conf "${OUTDIR}" CONFIG_RTE_PROC_INFO n
# Disable kernel modules
set_conf "${OUTDIR}" CONFIG_RTE_EAL_IGB_UIO n
set_conf "${OUTDIR}" CONFIG_RTE_KNI_KMOD n
# Disable experimental stuff
set_conf "${OUTDIR}" CONFIG_RTE_NEXT_ABI n
# Build DPDK as shared library
set_conf "${OUTDIR}" CONFIG_RTE_BUILD_SHARED_LIB y
# Compile the PMD test application
set_conf "${OUTDIR}" CONFIG_RTE_TEST_PMD y
# Arch specific
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_I40E_PMD y
case "${DPDK_CONF_MACH_ARCH[i]}" in
x86_64)
# Hw PMD
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_BNXT_PMD y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_ENIC_PMD y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_MLX4_PMD y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_MLX5_PMD y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_NFP_PMD y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_QEDE_PMD y
# Sw PMD
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_NETVSC_PMD y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD y
# Bus
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VMBUS y
;&
arm64)
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_IXGBE_PMD y
set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_IGB_PMD y
;;
esac
cp "${OUTDIR}/.config" "${OUTPUT_DIR}/${DPDK_TARGETS[$i]}-config"
done
popd >/dev/null
echo -n "For each arch ( "
for ((i=0; i < ${#DPDK_CONF_MACH_ARCH[@]}; i++));
do
echo -n "${DPDK_CONF_MACH_ARCH[i]} "
done
echo "):"
echo "1. ensure you enable the requisite hw"

View File

@ -1,592 +0,0 @@
# -*- cfg-sha: 46dcea384e8aae2041f0f78fedef7f7da8906ed14c1ce3812b7e02ed4f2a3baf
# SPDX-License-Identifier: BSD-3-Clause
# Copyright (C) IBM Corporation 2014.
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2016 Intel Corporation
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2017 Intel Corporation
# String that appears before the version number
CONFIG_RTE_VER_PREFIX="DPDK"
# Version information completed when this file is processed for a build
CONFIG_RTE_VER_YEAR=19
CONFIG_RTE_VER_MONTH=11
CONFIG_RTE_VER_MINOR=2
CONFIG_RTE_VER_SUFFIX=""
CONFIG_RTE_VER_RELEASE=99
# RTE_EXEC_ENV values are the directories in mk/exec-env/
CONFIG_RTE_EXEC_ENV="linuxapp"
# RTE_ARCH values are architecture we compile for. directories in mk/arch/
CONFIG_RTE_ARCH="ppc_64"
# machine can define specific variables or action for a specific board
# RTE_MACHINE values are architecture we compile for. directories in mk/machine/
CONFIG_RTE_MACHINE="power8"
# The compiler we use.
# RTE_TOOLCHAIN values are architecture we compile for. directories in mk/toolchain/
CONFIG_RTE_TOOLCHAIN="gcc"
# Use intrinsics or assembly code for key routines
CONFIG_RTE_FORCE_INTRINSICS=n
# Machine forces strict alignment constraints.
CONFIG_RTE_ARCH_STRICT_ALIGN=n
# Enable link time optimization
CONFIG_RTE_ENABLE_LTO=n
# Compile to share library
CONFIG_RTE_BUILD_SHARED_LIB=y
# Use newest code breaking previous ABI
CONFIG_RTE_NEXT_ABI=n
# Machine's cache line size
CONFIG_RTE_CACHE_LINE_SIZE=128
# Memory model
CONFIG_RTE_USE_C11_MEM_MODEL=n
# Compile Environment Abstraction Layer
CONFIG_RTE_LIBRTE_EAL=y
CONFIG_RTE_MAX_LCORE=1536
CONFIG_RTE_MAX_NUMA_NODES=32
CONFIG_RTE_MAX_HEAPS=32
CONFIG_RTE_MAX_MEMSEG_LISTS=64
# each memseg list will be limited to either RTE_MAX_MEMSEG_PER_LIST pages
# or RTE_MAX_MEM_MB_PER_LIST megabytes worth of memory, whichever is smaller
CONFIG_RTE_MAX_MEMSEG_PER_LIST=8192
CONFIG_RTE_MAX_MEM_MB_PER_LIST=32768
# a "type" is a combination of page size and NUMA node. total number of memseg
# lists per type will be limited to either RTE_MAX_MEMSEG_PER_TYPE pages (split
# over multiple lists of RTE_MAX_MEMSEG_PER_LIST pages), or
# RTE_MAX_MEM_MB_PER_TYPE megabytes of memory (split over multiple lists of
# RTE_MAX_MEM_MB_PER_LIST), whichever is smaller
CONFIG_RTE_MAX_MEMSEG_PER_TYPE=32768
CONFIG_RTE_MAX_MEM_MB_PER_TYPE=131072
# global maximum usable amount of VA, in megabytes
CONFIG_RTE_MAX_MEM_MB=524288
CONFIG_RTE_MAX_MEMZONE=2560
CONFIG_RTE_MAX_TAILQ=32
CONFIG_RTE_ENABLE_ASSERT=n
CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO
CONFIG_RTE_LOG_HISTORY=256
CONFIG_RTE_BACKTRACE=y
CONFIG_RTE_LIBEAL_USE_HPET=n
CONFIG_RTE_EAL_ALWAYS_PANIC_ON_ERROR=n
CONFIG_RTE_EAL_IGB_UIO=n
CONFIG_RTE_EAL_VFIO=y
CONFIG_RTE_MAX_VFIO_GROUPS=64
CONFIG_RTE_MAX_VFIO_CONTAINERS=64
CONFIG_RTE_MALLOC_DEBUG=n
CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=y
CONFIG_RTE_USE_LIBBSD=n
# Recognize/ignore architecture we compile for. AVX/AVX512 CPU flags for performance/power testing.
# AVX512 is marked as experimental for now, will enable it after enough
# field test and possible optimization.
CONFIG_RTE_ENABLE_AVX=y
CONFIG_RTE_ENABLE_AVX512=n
# Use ARM LSE ATOMIC instructions
CONFIG_RTE_ARM_FEATURE_ATOMICS=n
# Default driver path (or "" to disable)
CONFIG_RTE_EAL_PMD_PATH="/usr/lib64/dpdk-pmds"
# Compile Environment Abstraction Layer to support Vmware TSC map
CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=n
# Compile architecture we compile for. PCI library
CONFIG_RTE_LIBRTE_PCI=y
# Compile architecture we compile for. argument parser library
CONFIG_RTE_LIBRTE_KVARGS=y
# Compile generic ethernet library
CONFIG_RTE_LIBRTE_ETHER=y
CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n
CONFIG_RTE_MAX_ETHPORTS=32
CONFIG_RTE_MAX_QUEUES_PER_PORT=1024
CONFIG_RTE_LIBRTE_IEEE1588=n
CONFIG_RTE_ETHDEV_QUEUE_STAT_CNTRS=16
CONFIG_RTE_ETHDEV_RXTX_CALLBACKS=y
CONFIG_RTE_ETHDEV_PROFILE_WITH_VTUNE=n
# Turn off Tx preparation stage
# Warning: rte_eth_tx_prepare() can be safely disabled only if using a
# driver which do not implement any Tx preparation.
CONFIG_RTE_ETHDEV_TX_PREPARE_NOOP=n
# Common libraries, before Bus/PMDs
CONFIG_RTE_LIBRTE_COMMON_DPAAX=n
# Compile architecture we compile for. Intel FPGA bus
CONFIG_RTE_LIBRTE_IFPGA_BUS=n
# Compile PCI bus driver
CONFIG_RTE_LIBRTE_PCI_BUS=y
# Compile architecture we compile for. vdev bus
CONFIG_RTE_LIBRTE_VDEV_BUS=y
# Compile ARK PMD
CONFIG_RTE_LIBRTE_ARK_PMD=n
CONFIG_RTE_LIBRTE_ARK_PAD_TX=y
CONFIG_RTE_LIBRTE_ARK_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_STATS=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_TRACE=n
# Compile Aquantia Atlantic PMD driver
CONFIG_RTE_LIBRTE_ATLANTIC_PMD=n
# Compile AMD PMD
CONFIG_RTE_LIBRTE_AXGBE_PMD=n
CONFIG_RTE_LIBRTE_AXGBE_PMD_DEBUG=n
# Compile burst-oriented Broadcom PMD driver
CONFIG_RTE_LIBRTE_BNX2X_PMD=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_RX=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_TX=n
CONFIG_RTE_LIBRTE_BNX2X_MF_SUPPORT=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_PERIODIC=n
# Compile burst-oriented Broadcom BNXT PMD driver
CONFIG_RTE_LIBRTE_BNXT_PMD=n
# Compile burst-oriented Chelsio Terminator (CXGBE) PMD
CONFIG_RTE_LIBRTE_CXGBE_PMD=n
# Compile burst-oriented NXP PFE PMD driver
CONFIG_RTE_LIBRTE_PFE_PMD=n
# NXP DPAA Bus
CONFIG_RTE_LIBRTE_DPAA_BUS=n
CONFIG_RTE_LIBRTE_DPAA_MEMPOOL=n
CONFIG_RTE_LIBRTE_DPAA_PMD=n
CONFIG_RTE_LIBRTE_DPAA_HWDEBUG=n
# Compile NXP DPAA2 FSL-MC Bus
CONFIG_RTE_LIBRTE_FSLMC_BUS=n
# Compile Support Libraries for NXP DPAA2
CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL=n
CONFIG_RTE_LIBRTE_DPAA2_USE_PHYS_IOVA=y
# Compile burst-oriented NXP DPAA2 PMD driver
CONFIG_RTE_LIBRTE_DPAA2_PMD=n
CONFIG_RTE_LIBRTE_DPAA2_DEBUG_DRIVER=n
# Compile NXP ENETC PMD Driver
CONFIG_RTE_LIBRTE_ENETC_PMD=n
# Compile burst-oriented Amazon ENA PMD driver
CONFIG_RTE_LIBRTE_ENA_PMD=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_ENA_COM_DEBUG=n
# Compile burst-oriented Cisco ENIC PMD driver
CONFIG_RTE_LIBRTE_ENIC_PMD=n
# Compile burst-oriented IGB & EM PMD drivers
CONFIG_RTE_LIBRTE_EM_PMD=n
CONFIG_RTE_LIBRTE_IGB_PMD=n
CONFIG_RTE_LIBRTE_E1000_DEBUG_RX=n
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 burst-oriented HINIC PMD driver
CONFIG_RTE_LIBRTE_HINIC_PMD=n
# Compile burst-oriented HNS3 PMD driver
CONFIG_RTE_LIBRTE_HNS3_PMD=n
# Compile burst-oriented IXGBE PMD driver
CONFIG_RTE_LIBRTE_IXGBE_PMD=n
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
CONFIG_RTE_IXGBE_INC_VECTOR=y
CONFIG_RTE_LIBRTE_IXGBE_BYPASS=n
# Compile burst-oriented I40E PMD driver
CONFIG_RTE_LIBRTE_I40E_PMD=y
CONFIG_RTE_LIBRTE_I40E_DEBUG_RX=n
CONFIG_RTE_LIBRTE_I40E_DEBUG_TX=n
CONFIG_RTE_LIBRTE_I40E_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC=y
CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y
CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n
CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF=64
CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM=4
# Compile burst-oriented FM10K PMD
CONFIG_RTE_LIBRTE_FM10K_PMD=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_RX=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE=y
CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y
# Compile burst-oriented ICE PMD driver
CONFIG_RTE_LIBRTE_ICE_PMD=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_ICE_RX_ALLOW_BULK_ALLOC=y
CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC=n
# Compile burst-oriented IAVF PMD driver
CONFIG_RTE_LIBRTE_IAVF_PMD=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_RX=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_DUMP_DESC=n
CONFIG_RTE_LIBRTE_IAVF_16BYTE_RX_DESC=n
# Compile burst-oriented IPN3KE PMD driver
CONFIG_RTE_LIBRTE_IPN3KE_PMD=n
# Compile burst-oriented Mellanox ConnectX-3 (MLX4) PMD
CONFIG_RTE_LIBRTE_MLX4_PMD=n
CONFIG_RTE_LIBRTE_MLX4_DEBUG=n
# Compile burst-oriented Mellanox ConnectX-4, ConnectX-5,
# ConnectX-6 & BlueField (MLX5) PMD
CONFIG_RTE_LIBRTE_MLX5_PMD=n
CONFIG_RTE_LIBRTE_MLX5_DEBUG=n
# Linking method for mlx4/5 dependency on ibverbs and related libraries
# Default linking is dynamic by linker.
# Other options are: dynamic by dlopen at run-time, or statically embedded.
CONFIG_RTE_IBVERBS_LINK_DLOPEN=n
CONFIG_RTE_IBVERBS_LINK_STATIC=n
# Compile burst-oriented Netronome NFP PMD driver
CONFIG_RTE_LIBRTE_NFP_PMD=n
CONFIG_RTE_LIBRTE_NFP_DEBUG_TX=n
CONFIG_RTE_LIBRTE_NFP_DEBUG_RX=n
# QLogic 10G/25G/40G/50G/100G PMD
CONFIG_RTE_LIBRTE_QEDE_PMD=n
CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
#Provides abs path/name of architecture we compile for. firmware file.
#Empty string denotes driver will use default firmware
CONFIG_RTE_LIBRTE_QEDE_FW=""
# Compile burst-oriented Solarflare libefx-based PMD
CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n
CONFIG_RTE_LIBRTE_SFC_EFX_DEBUG=n
# Compile software PMD backed by SZEDATA2 device
CONFIG_RTE_LIBRTE_PMD_SZEDATA2=n
# Compile software PMD backed by NFB device
CONFIG_RTE_LIBRTE_NFB_PMD=n
# Compile burst-oriented Cavium Thunderx NICVF PMD driver
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_PMD=n
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_RX=n
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX=n
# Compile burst-oriented Cavium LiquidIO PMD driver
CONFIG_RTE_LIBRTE_LIO_PMD=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_RX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_TX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_MBOX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_REGS=n
# Compile burst-oriented Cavium OCTEONTX network PMD driver
CONFIG_RTE_LIBRTE_OCTEONTX_PMD=n
# Compile burst-oriented Marvell OCTEON TX2 network PMD driver
CONFIG_RTE_LIBRTE_OCTEONTX2_PMD=n
# Compile WRS accelerated virtual port (AVP) guest PMD driver
CONFIG_RTE_LIBRTE_AVP_PMD=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_RX=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_TX=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_BUFFERS=n
# Compile burst-oriented VIRTIO PMD driver
CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n
# Compile virtio device emulation inside virtio PMD driver
CONFIG_RTE_VIRTIO_USER=n
# Compile burst-oriented VMXNET3 PMD driver
CONFIG_RTE_LIBRTE_VMXNET3_PMD=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n
# Compile software PMD backed by AF_PACKET sockets (Linux only)
CONFIG_RTE_LIBRTE_PMD_AF_PACKET=n
# Compile software PMD backed by AF_XDP sockets (Linux only)
CONFIG_RTE_LIBRTE_PMD_AF_XDP=n
# Compile Memory Interface PMD driver (Linux only)
CONFIG_RTE_LIBRTE_PMD_MEMIF=n
# Compile link bonding PMD library
CONFIG_RTE_LIBRTE_PMD_BOND=n
CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB=n
CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB_L1=n
# Compile fail-safe PMD
CONFIG_RTE_LIBRTE_PMD_FAILSAFE=y
# Compile Marvell PMD driver
CONFIG_RTE_LIBRTE_MVPP2_PMD=n
# Compile Marvell MVNETA PMD driver
CONFIG_RTE_LIBRTE_MVNETA_PMD=n
# Compile support for VMBus library
CONFIG_RTE_LIBRTE_VMBUS=n
# Compile native PMD for Hyper-V/Azure
CONFIG_RTE_LIBRTE_NETVSC_PMD=n
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_RX=n
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_TX=n
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_DUMP=n
# Compile virtual device driver for NetVSC on Hyper-V/Azure
CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD=n
# Compile null PMD
CONFIG_RTE_LIBRTE_PMD_NULL=n
# Compile software PMD backed by PCAP files
CONFIG_RTE_LIBRTE_PMD_PCAP=n
# Compile example software rings based PMD
CONFIG_RTE_LIBRTE_PMD_RING=y
CONFIG_RTE_PMD_RING_MAX_RX_RINGS=16
CONFIG_RTE_PMD_RING_MAX_TX_RINGS=16
# Compile SOFTNIC PMD
CONFIG_RTE_LIBRTE_PMD_SOFTNIC=n
# Compile architecture we compile for. TAP PMD
# It is enabled by default for Linux only.
CONFIG_RTE_LIBRTE_PMD_TAP=y
# Do prefetch of packet data within PMD driver receive function
CONFIG_RTE_PMD_PACKET_PREFETCH=y
# Compile generic wireless base band device library
# EXPERIMENTAL: API may change without prior notice
CONFIG_RTE_LIBRTE_BBDEV=n
CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
CONFIG_RTE_BBDEV_MAX_DEVS=128
CONFIG_RTE_BBDEV_OFFLOAD_COST=y
CONFIG_RTE_BBDEV_SDK_AVX2=n
CONFIG_RTE_BBDEV_SDK_AVX512=n
# Compile PMD for NULL bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=n
# Compile PMD for turbo software bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
# Compile PMD for Intel FPGA LTE FEC bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_FPGA_LTE_FEC=n
# Compile generic crypto device library
CONFIG_RTE_LIBRTE_CRYPTODEV=n
CONFIG_RTE_CRYPTO_MAX_DEVS=64
# Compile PMD for ARMv8 Crypto device
CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO=n
CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG=n
# Compile NXP CAAM JR crypto Driver
CONFIG_RTE_LIBRTE_PMD_CAAM_JR=n
CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE=n
# Compile NXP DPAA2 crypto sec driver for CAAM HW
CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC=n
# NXP DPAA caam - crypto driver
CONFIG_RTE_LIBRTE_PMD_DPAA_SEC=n
CONFIG_RTE_LIBRTE_DPAA_MAX_CRYPTODEV=4
# Compile PMD for Cavium OCTEON TX crypto device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO=n
# Compile PMD for Marvell OCTEON TX2 crypto device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_CRYPTO=n
# Compile PMD for QuickAssist based devices - see docs for details
CONFIG_RTE_LIBRTE_PMD_QAT=n
CONFIG_RTE_LIBRTE_PMD_QAT_SYM=n
CONFIG_RTE_LIBRTE_PMD_QAT_ASYM=n
# Max. number of QuickAssist devices, which can be detected and attached
CONFIG_RTE_PMD_QAT_MAX_PCI_DEVICES=48
CONFIG_RTE_PMD_QAT_COMP_IM_BUFFER_SIZE=65536
# Compile PMD for virtio crypto devices
CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO=n
# Number of maximum virtio crypto devices
CONFIG_RTE_MAX_VIRTIO_CRYPTO=32
# Compile PMD for AESNI backed device
CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n
# Compile PMD for Software backed device
CONFIG_RTE_LIBRTE_PMD_OPENSSL=n
# Compile PMD for AESNI GCM device
CONFIG_RTE_LIBRTE_PMD_AESNI_GCM=n
# Compile PMD for SNOW 3G device
CONFIG_RTE_LIBRTE_PMD_SNOW3G=n
CONFIG_RTE_LIBRTE_PMD_SNOW3G_DEBUG=n
# Compile PMD for KASUMI device
CONFIG_RTE_LIBRTE_PMD_KASUMI=n
# Compile PMD for ZUC device
CONFIG_RTE_LIBRTE_PMD_ZUC=n
# Compile PMD for Crypto Scheduler device
CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER=n
# Compile PMD for NULL Crypto device
CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO=n
# Compile PMD for AMD CCP crypto device
CONFIG_RTE_LIBRTE_PMD_CCP=n
# Compile PMD for Marvell Crypto device
CONFIG_RTE_LIBRTE_PMD_MVSAM_CRYPTO=n
# Compile PMD for NITROX crypto device
CONFIG_RTE_LIBRTE_PMD_NITROX=n
# Compile generic security library
CONFIG_RTE_LIBRTE_SECURITY=n
# Compile generic compression device library
CONFIG_RTE_LIBRTE_COMPRESSDEV=n
CONFIG_RTE_COMPRESS_MAX_DEVS=64
# Compile compressdev unit test
CONFIG_RTE_COMPRESSDEV_TEST=n
# Compile PMD for Octeontx ZIPVF compression device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF=n
# Compile PMD for ISA-L compression device
CONFIG_RTE_LIBRTE_PMD_ISAL=n
# Compile PMD for ZLIB compression device
CONFIG_RTE_LIBRTE_PMD_ZLIB=n
# Compile generic event device library
CONFIG_RTE_LIBRTE_EVENTDEV=n
CONFIG_RTE_LIBRTE_EVENTDEV_DEBUG=n
CONFIG_RTE_EVENT_MAX_DEVS=16
CONFIG_RTE_EVENT_MAX_QUEUES_PER_DEV=64
CONFIG_RTE_EVENT_TIMER_ADAPTER_NUM_MAX=32
CONFIG_RTE_EVENT_ETH_INTR_RING_SIZE=1024
CONFIG_RTE_EVENT_CRYPTO_ADAPTER_MAX_INSTANCE=32
CONFIG_RTE_EVENT_ETH_TX_ADAPTER_MAX_INSTANCE=32
# Compile PMD for skeleton event device
CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV=n
CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG=n
# Compile PMD for software event device
CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV=n
# Compile PMD for distributed software event device
CONFIG_RTE_LIBRTE_PMD_DSW_EVENTDEV=n
# Compile PMD for octeontx sso event device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=n
# Compile PMD for octeontx2 sso event device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_EVENTDEV=n
# Compile PMD for OPDL event device
CONFIG_RTE_LIBRTE_PMD_OPDL_EVENTDEV=n
# Compile PMD for NXP DPAA event device
CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV=n
# Compile PMD for NXP DPAA2 event device
CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV=n
# Compile raw device support
# EXPERIMENTAL: API may change without prior notice
CONFIG_RTE_LIBRTE_RAWDEV=n
CONFIG_RTE_RAWDEV_MAX_DEVS=64
CONFIG_RTE_LIBRTE_PMD_SKELETON_RAWDEV=n
# Compile PMD for NXP DPAA2 CMDIF raw device
CONFIG_RTE_LIBRTE_PMD_DPAA2_CMDIF_RAWDEV=n
# Compile PMD for NXP DPAA2 QDMA raw device
CONFIG_RTE_LIBRTE_PMD_DPAA2_QDMA_RAWDEV=n
# Compile PMD for Intel FPGA raw device
CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=n
# Compile PMD for Intel IOAT raw device
CONFIG_RTE_LIBRTE_PMD_IOAT_RAWDEV=n
# Compile PMD for octeontx2 DMA raw device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_DMA_RAWDEV=n
# Compile PMD for NTB raw device
CONFIG_RTE_LIBRTE_PMD_NTB_RAWDEV=n
# Compile librte_ring
CONFIG_RTE_LIBRTE_RING=y
# Compile librte_stack
CONFIG_RTE_LIBRTE_STACK=y
# Compile librte_mempool
CONFIG_RTE_LIBRTE_MEMPOOL=y
CONFIG_RTE_MEMPOOL_CACHE_MAX_SIZE=512
CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=n
# Compile Mempool drivers
CONFIG_RTE_DRIVER_MEMPOOL_BUCKET=y
CONFIG_RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB=64
CONFIG_RTE_DRIVER_MEMPOOL_RING=y
CONFIG_RTE_DRIVER_MEMPOOL_STACK=y
# Compile PMD for octeontx fpa mempool device
CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL=n
# Compile PMD for octeontx2 npa mempool device
CONFIG_RTE_LIBRTE_OCTEONTX2_MEMPOOL=n
# Compile librte_mbuf
CONFIG_RTE_LIBRTE_MBUF=y
CONFIG_RTE_LIBRTE_MBUF_DEBUG=n
CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS="ring_mp_mc"
CONFIG_RTE_MBUF_REFCNT_ATOMIC=y
CONFIG_RTE_PKTMBUF_HEADROOM=128
# Compile librte_timer
CONFIG_RTE_LIBRTE_TIMER=n
CONFIG_RTE_LIBRTE_TIMER_DEBUG=n
# Compile librte_cfgfile
CONFIG_RTE_LIBRTE_CFGFILE=n
# Compile librte_cmdline
CONFIG_RTE_LIBRTE_CMDLINE=y
CONFIG_RTE_LIBRTE_CMDLINE_DEBUG=n
# Compile librte_hash
CONFIG_RTE_LIBRTE_HASH=y
CONFIG_RTE_LIBRTE_HASH_DEBUG=n
# Compile librte_efd
CONFIG_RTE_LIBRTE_EFD=n
# Compile librte_member
CONFIG_RTE_LIBRTE_MEMBER=y
# Compile librte_jobstats
CONFIG_RTE_LIBRTE_JOBSTATS=n
# Compile architecture we compile for. device metrics library
CONFIG_RTE_LIBRTE_METRICS=y
# Compile architecture we compile for. bitrate statistics library
CONFIG_RTE_LIBRTE_BITRATE=y
# Compile architecture we compile for. latency statistics library
CONFIG_RTE_LIBRTE_LATENCY_STATS=y
# Compile librte_telemetry
CONFIG_RTE_LIBRTE_TELEMETRY=n
# Compile librte_rcu
CONFIG_RTE_LIBRTE_RCU=n
CONFIG_RTE_LIBRTE_RCU_DEBUG=n
# Compile librte_rib
CONFIG_RTE_LIBRTE_RIB=n
# Compile librte_fib
CONFIG_RTE_LIBRTE_FIB=n
CONFIG_RTE_LIBRTE_FIB_DEBUG=n
# Compile librte_lpm
CONFIG_RTE_LIBRTE_LPM=n
CONFIG_RTE_LIBRTE_LPM_DEBUG=n
# Compile librte_acl
CONFIG_RTE_LIBRTE_ACL=n
CONFIG_RTE_LIBRTE_ACL_DEBUG=n
# Compile librte_power
CONFIG_RTE_LIBRTE_POWER=n
CONFIG_RTE_LIBRTE_POWER_DEBUG=n
CONFIG_RTE_MAX_LCORE_FREQS=64
# Compile librte_net
CONFIG_RTE_LIBRTE_NET=y
# Compile librte_ip_frag
CONFIG_RTE_LIBRTE_IP_FRAG=y
CONFIG_RTE_LIBRTE_IP_FRAG_DEBUG=n
CONFIG_RTE_LIBRTE_IP_FRAG_MAX_FRAG=4
CONFIG_RTE_LIBRTE_IP_FRAG_TBL_STAT=n
# Compile GRO library
CONFIG_RTE_LIBRTE_GRO=y
# Compile GSO library
CONFIG_RTE_LIBRTE_GSO=y
# Compile librte_meter
CONFIG_RTE_LIBRTE_METER=y
# Compile librte_classify
CONFIG_RTE_LIBRTE_FLOW_CLASSIFY=n
# Compile librte_sched
CONFIG_RTE_LIBRTE_SCHED=n
CONFIG_RTE_SCHED_DEBUG=n
CONFIG_RTE_SCHED_RED=n
CONFIG_RTE_SCHED_COLLECT_STATS=n
CONFIG_RTE_SCHED_SUBPORT_TC_OV=n
CONFIG_RTE_SCHED_PORT_N_GRINDERS=8
CONFIG_RTE_SCHED_VECTOR=n
# Compile architecture we compile for. distributor library
CONFIG_RTE_LIBRTE_DISTRIBUTOR=n
# Compile architecture we compile for. reorder library
CONFIG_RTE_LIBRTE_REORDER=n
# Compile librte_port
CONFIG_RTE_LIBRTE_PORT=n
CONFIG_RTE_PORT_STATS_COLLECT=n
CONFIG_RTE_PORT_PCAP=n
# Compile librte_table
CONFIG_RTE_LIBRTE_TABLE=n
CONFIG_RTE_TABLE_STATS_COLLECT=n
# Compile librte_pipeline
CONFIG_RTE_LIBRTE_PIPELINE=n
CONFIG_RTE_PIPELINE_STATS_COLLECT=n
# Compile librte_kni
CONFIG_RTE_LIBRTE_KNI=n
CONFIG_RTE_LIBRTE_PMD_KNI=n
CONFIG_RTE_KNI_KMOD=n
CONFIG_RTE_KNI_PREEMPT_DEFAULT=y
# Compile architecture we compile for. pdump library
CONFIG_RTE_LIBRTE_PDUMP=y
# Compile vhost user library
CONFIG_RTE_LIBRTE_VHOST=y
CONFIG_RTE_LIBRTE_VHOST_NUMA=y
CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
# Compile vhost PMD
# To compile, CONFIG_RTE_LIBRTE_VHOST should be enabled.
CONFIG_RTE_LIBRTE_PMD_VHOST=y
# Compile IFC driver
# To compile, CONFIG_RTE_LIBRTE_VHOST and CONFIG_RTE_EAL_VFIO
# should be enabled.
CONFIG_RTE_LIBRTE_IFC_PMD=n
# Compile librte_bpf
CONFIG_RTE_LIBRTE_BPF=n
# allow load BPF from ELF files (requires libelf)
CONFIG_RTE_LIBRTE_BPF_ELF=n
# Compile librte_ipsec
CONFIG_RTE_LIBRTE_IPSEC=n
# Compile architecture we compile for. test application
CONFIG_RTE_APP_TEST=y
CONFIG_RTE_APP_TEST_RESOURCE_TAR=n
# Compile architecture we compile for. procinfo application
CONFIG_RTE_PROC_INFO=n
# Compile architecture we compile for. PMD test application
CONFIG_RTE_TEST_PMD=y
CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n
CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n
# Compile architecture we compile for. bbdev test application
CONFIG_RTE_TEST_BBDEV=n
# Compile architecture we compile for. compression performance application
CONFIG_RTE_APP_COMPRESS_PERF=n
# Compile architecture we compile for. crypto performance application
CONFIG_RTE_APP_CRYPTO_PERF=n
# Compile architecture we compile for. eventdev application
CONFIG_RTE_APP_EVENTDEV=n
CONFIG_RTE_EXEC_ENV_LINUX=y
CONFIG_RTE_EXEC_ENV_LINUXAPP=y
CONFIG_RTE_LIBRTE_VHOST_POSTCOPY=n
# Common libraries, before Bus/PMDs
# NXP DPAA BUS and drivers
# NXP FSLMC BUS and DPAA2 drivers
# NXP ENETC PMD Driver
# HINIC PMD driver
# Hisilicon HNS3 PMD driver
# Compile PMD for Intel FPGA raw device
# To compile, CONFIG_RTE_EAL_VFIO should be enabled.
CONFIG_RTE_ARCH_PPC_64=y
CONFIG_RTE_ARCH_64=y
CONFIG_RTE_TOOLCHAIN_GCC=y
# Note: Power doesn't have this support
# Note: Initially, all of architecture we compile for. PMD drivers compilation are turned off on Power
# Will turn on them only after architecture we compile for. successful testing on Power

View File

@ -1,48 +0,0 @@
#!/bin/bash
# Copyright (C) 2017, Red Hat, Inc.
#
# set_config.sh will copy a configuration from $1 to $2, in the process
# checking that the sha header for $1 matches the header in $2
source configlib.sh
if (( $# < 2 )); then
echo "$0: source dest [comment-marker]"
exit 1
fi
if [ ! -f "$1" ]; then
echo "Source file $1 must exist."
exit 1
fi
src_file=$1
shift
if [ ! -f "$1" ]; then
echo "Dest file $1 must exist."
exit 1
fi
dst_file=$1
shift
comment_sep=${1:-#}
export LANG=en_US.utf8
DEST_FILE_SHA=""
SRC_FILE_SHA=""
calc_sha DEST_FILE_SHA "$dst_file" "$comment_sep" || echo "Failed to calc sha"
retr_sha SRC_FILE_SHA "$src_file" "$comment_sep" || echo "Failed to retrieve sha"
if [ "$DEST_FILE_SHA" != "$SRC_FILE_SHA" ]; then
echo "ERROR: The requisite starting sha from $dst_file does not match the"
echo " specified sha in $src_file."
echo "[ $DEST_FILE_SHA ] vs [ $SRC_FILE_SHA ]"
exit 1
fi
mv "$dst_file" "$dst_file".OLD
cp "$src_file" "$dst_file"
echo "copied 1 config file."
exit 0

View File

@ -1,590 +0,0 @@
# -*- cfg-sha: fa840957ea3dbcff81dd55098161c11d90c3cad399b89e6089f793e7362a5c48
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2014 Intel Corporation
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2016 Intel Corporation
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2017 Intel Corporation
# String that appears before the version number
CONFIG_RTE_VER_PREFIX="DPDK"
# Version information completed when this file is processed for a build
CONFIG_RTE_VER_YEAR=19
CONFIG_RTE_VER_MONTH=11
CONFIG_RTE_VER_MINOR=2
CONFIG_RTE_VER_SUFFIX=""
CONFIG_RTE_VER_RELEASE=99
# RTE_EXEC_ENV values are the directories in mk/exec-env/
CONFIG_RTE_EXEC_ENV="linuxapp"
# RTE_ARCH values are architecture we compile for. directories in mk/arch/
CONFIG_RTE_ARCH="x86_64"
# machine can define specific variables or action for a specific board
# RTE_MACHINE values are architecture we compile for. directories in mk/machine/
CONFIG_RTE_MACHINE="default"
# The compiler we use.
# RTE_TOOLCHAIN values are architecture we compile for. directories in mk/toolchain/
CONFIG_RTE_TOOLCHAIN="gcc"
# Use intrinsics or assembly code for key routines
CONFIG_RTE_FORCE_INTRINSICS=n
# Machine forces strict alignment constraints.
CONFIG_RTE_ARCH_STRICT_ALIGN=n
# Enable link time optimization
CONFIG_RTE_ENABLE_LTO=n
# Compile to share library
CONFIG_RTE_BUILD_SHARED_LIB=y
# Use newest code breaking previous ABI
CONFIG_RTE_NEXT_ABI=n
# Machine's cache line size
CONFIG_RTE_CACHE_LINE_SIZE=64
# Memory model
CONFIG_RTE_USE_C11_MEM_MODEL=n
# Compile Environment Abstraction Layer
CONFIG_RTE_LIBRTE_EAL=y
CONFIG_RTE_MAX_LCORE=128
CONFIG_RTE_MAX_NUMA_NODES=8
CONFIG_RTE_MAX_HEAPS=32
CONFIG_RTE_MAX_MEMSEG_LISTS=64
# each memseg list will be limited to either RTE_MAX_MEMSEG_PER_LIST pages
# or RTE_MAX_MEM_MB_PER_LIST megabytes worth of memory, whichever is smaller
CONFIG_RTE_MAX_MEMSEG_PER_LIST=8192
CONFIG_RTE_MAX_MEM_MB_PER_LIST=32768
# a "type" is a combination of page size and NUMA node. total number of memseg
# lists per type will be limited to either RTE_MAX_MEMSEG_PER_TYPE pages (split
# over multiple lists of RTE_MAX_MEMSEG_PER_LIST pages), or
# RTE_MAX_MEM_MB_PER_TYPE megabytes of memory (split over multiple lists of
# RTE_MAX_MEM_MB_PER_LIST), whichever is smaller
CONFIG_RTE_MAX_MEMSEG_PER_TYPE=32768
CONFIG_RTE_MAX_MEM_MB_PER_TYPE=131072
# global maximum usable amount of VA, in megabytes
CONFIG_RTE_MAX_MEM_MB=524288
CONFIG_RTE_MAX_MEMZONE=2560
CONFIG_RTE_MAX_TAILQ=32
CONFIG_RTE_ENABLE_ASSERT=n
CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO
CONFIG_RTE_LOG_HISTORY=256
CONFIG_RTE_BACKTRACE=y
CONFIG_RTE_LIBEAL_USE_HPET=n
CONFIG_RTE_EAL_ALWAYS_PANIC_ON_ERROR=n
CONFIG_RTE_EAL_IGB_UIO=n
CONFIG_RTE_EAL_VFIO=y
CONFIG_RTE_MAX_VFIO_GROUPS=64
CONFIG_RTE_MAX_VFIO_CONTAINERS=64
CONFIG_RTE_MALLOC_DEBUG=n
CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=y
CONFIG_RTE_USE_LIBBSD=n
# Recognize/ignore architecture we compile for. AVX/AVX512 CPU flags for performance/power testing.
# AVX512 is marked as experimental for now, will enable it after enough
# field test and possible optimization.
CONFIG_RTE_ENABLE_AVX=y
CONFIG_RTE_ENABLE_AVX512=n
# Use ARM LSE ATOMIC instructions
CONFIG_RTE_ARM_FEATURE_ATOMICS=n
# Default driver path (or "" to disable)
CONFIG_RTE_EAL_PMD_PATH="/usr/lib64/dpdk-pmds"
# Compile Environment Abstraction Layer to support Vmware TSC map
CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=y
# Compile architecture we compile for. PCI library
CONFIG_RTE_LIBRTE_PCI=y
# Compile architecture we compile for. argument parser library
CONFIG_RTE_LIBRTE_KVARGS=y
# Compile generic ethernet library
CONFIG_RTE_LIBRTE_ETHER=y
CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n
CONFIG_RTE_MAX_ETHPORTS=32
CONFIG_RTE_MAX_QUEUES_PER_PORT=1024
CONFIG_RTE_LIBRTE_IEEE1588=n
CONFIG_RTE_ETHDEV_QUEUE_STAT_CNTRS=16
CONFIG_RTE_ETHDEV_RXTX_CALLBACKS=y
CONFIG_RTE_ETHDEV_PROFILE_WITH_VTUNE=n
# Turn off Tx preparation stage
# Warning: rte_eth_tx_prepare() can be safely disabled only if using a
# driver which do not implement any Tx preparation.
CONFIG_RTE_ETHDEV_TX_PREPARE_NOOP=n
# Common libraries, before Bus/PMDs
CONFIG_RTE_LIBRTE_COMMON_DPAAX=n
# Compile architecture we compile for. Intel FPGA bus
CONFIG_RTE_LIBRTE_IFPGA_BUS=n
# Compile PCI bus driver
CONFIG_RTE_LIBRTE_PCI_BUS=y
# Compile architecture we compile for. vdev bus
CONFIG_RTE_LIBRTE_VDEV_BUS=y
# Compile ARK PMD
CONFIG_RTE_LIBRTE_ARK_PMD=n
CONFIG_RTE_LIBRTE_ARK_PAD_TX=y
CONFIG_RTE_LIBRTE_ARK_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_STATS=n
CONFIG_RTE_LIBRTE_ARK_DEBUG_TRACE=n
# Compile Aquantia Atlantic PMD driver
CONFIG_RTE_LIBRTE_ATLANTIC_PMD=n
# Compile AMD PMD
CONFIG_RTE_LIBRTE_AXGBE_PMD=n
CONFIG_RTE_LIBRTE_AXGBE_PMD_DEBUG=n
# Compile burst-oriented Broadcom PMD driver
CONFIG_RTE_LIBRTE_BNX2X_PMD=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_RX=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_TX=n
CONFIG_RTE_LIBRTE_BNX2X_MF_SUPPORT=n
CONFIG_RTE_LIBRTE_BNX2X_DEBUG_PERIODIC=n
# Compile burst-oriented Broadcom BNXT PMD driver
CONFIG_RTE_LIBRTE_BNXT_PMD=y
# Compile burst-oriented Chelsio Terminator (CXGBE) PMD
CONFIG_RTE_LIBRTE_CXGBE_PMD=n
# Compile burst-oriented NXP PFE PMD driver
CONFIG_RTE_LIBRTE_PFE_PMD=n
# NXP DPAA Bus
CONFIG_RTE_LIBRTE_DPAA_BUS=n
CONFIG_RTE_LIBRTE_DPAA_MEMPOOL=n
CONFIG_RTE_LIBRTE_DPAA_PMD=n
CONFIG_RTE_LIBRTE_DPAA_HWDEBUG=n
# Compile NXP DPAA2 FSL-MC Bus
CONFIG_RTE_LIBRTE_FSLMC_BUS=n
# Compile Support Libraries for NXP DPAA2
CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL=n
CONFIG_RTE_LIBRTE_DPAA2_USE_PHYS_IOVA=y
# Compile burst-oriented NXP DPAA2 PMD driver
CONFIG_RTE_LIBRTE_DPAA2_PMD=n
CONFIG_RTE_LIBRTE_DPAA2_DEBUG_DRIVER=n
# Compile NXP ENETC PMD Driver
CONFIG_RTE_LIBRTE_ENETC_PMD=n
# Compile burst-oriented Amazon ENA PMD driver
CONFIG_RTE_LIBRTE_ENA_PMD=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ENA_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_ENA_COM_DEBUG=n
# Compile burst-oriented Cisco ENIC PMD driver
CONFIG_RTE_LIBRTE_ENIC_PMD=y
# Compile burst-oriented IGB & EM PMD drivers
CONFIG_RTE_LIBRTE_EM_PMD=n
CONFIG_RTE_LIBRTE_IGB_PMD=y
CONFIG_RTE_LIBRTE_E1000_DEBUG_RX=n
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 burst-oriented HINIC PMD driver
CONFIG_RTE_LIBRTE_HINIC_PMD=n
# Compile burst-oriented HNS3 PMD driver
CONFIG_RTE_LIBRTE_HNS3_PMD=n
# Compile burst-oriented IXGBE PMD driver
CONFIG_RTE_LIBRTE_IXGBE_PMD=y
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
CONFIG_RTE_IXGBE_INC_VECTOR=y
CONFIG_RTE_LIBRTE_IXGBE_BYPASS=n
# Compile burst-oriented I40E PMD driver
CONFIG_RTE_LIBRTE_I40E_PMD=y
CONFIG_RTE_LIBRTE_I40E_DEBUG_RX=n
CONFIG_RTE_LIBRTE_I40E_DEBUG_TX=n
CONFIG_RTE_LIBRTE_I40E_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC=y
CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y
CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n
CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF=64
CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM=4
# Compile burst-oriented FM10K PMD
CONFIG_RTE_LIBRTE_FM10K_PMD=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_RX=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX=n
CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE=y
CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y
# Compile burst-oriented ICE PMD driver
CONFIG_RTE_LIBRTE_ICE_PMD=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_RX=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_ICE_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_ICE_RX_ALLOW_BULK_ALLOC=y
CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC=n
# Compile burst-oriented IAVF PMD driver
CONFIG_RTE_LIBRTE_IAVF_PMD=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX_FREE=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_RX=n
CONFIG_RTE_LIBRTE_IAVF_DEBUG_DUMP_DESC=n
CONFIG_RTE_LIBRTE_IAVF_16BYTE_RX_DESC=n
# Compile burst-oriented IPN3KE PMD driver
CONFIG_RTE_LIBRTE_IPN3KE_PMD=n
# Compile burst-oriented Mellanox ConnectX-3 (MLX4) PMD
CONFIG_RTE_LIBRTE_MLX4_PMD=y
CONFIG_RTE_LIBRTE_MLX4_DEBUG=n
# Compile burst-oriented Mellanox ConnectX-4, ConnectX-5,
# ConnectX-6 & BlueField (MLX5) PMD
CONFIG_RTE_LIBRTE_MLX5_PMD=y
CONFIG_RTE_LIBRTE_MLX5_DEBUG=n
# Linking method for mlx4/5 dependency on ibverbs and related libraries
# Default linking is dynamic by linker.
# Other options are: dynamic by dlopen at run-time, or statically embedded.
CONFIG_RTE_IBVERBS_LINK_DLOPEN=n
CONFIG_RTE_IBVERBS_LINK_STATIC=n
# Compile burst-oriented Netronome NFP PMD driver
CONFIG_RTE_LIBRTE_NFP_PMD=y
CONFIG_RTE_LIBRTE_NFP_DEBUG_TX=n
CONFIG_RTE_LIBRTE_NFP_DEBUG_RX=n
# QLogic 10G/25G/40G/50G/100G PMD
CONFIG_RTE_LIBRTE_QEDE_PMD=y
CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
#Provides abs path/name of architecture we compile for. firmware file.
#Empty string denotes driver will use default firmware
CONFIG_RTE_LIBRTE_QEDE_FW=""
# Compile burst-oriented Solarflare libefx-based PMD
CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n
CONFIG_RTE_LIBRTE_SFC_EFX_DEBUG=n
# Compile software PMD backed by SZEDATA2 device
CONFIG_RTE_LIBRTE_PMD_SZEDATA2=n
# Compile software PMD backed by NFB device
CONFIG_RTE_LIBRTE_NFB_PMD=n
# Compile burst-oriented Cavium Thunderx NICVF PMD driver
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_PMD=n
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_RX=n
CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX=n
# Compile burst-oriented Cavium LiquidIO PMD driver
CONFIG_RTE_LIBRTE_LIO_PMD=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_RX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_TX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_MBOX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_REGS=n
# Compile burst-oriented Cavium OCTEONTX network PMD driver
CONFIG_RTE_LIBRTE_OCTEONTX_PMD=n
# Compile burst-oriented Marvell OCTEON TX2 network PMD driver
CONFIG_RTE_LIBRTE_OCTEONTX2_PMD=n
# Compile WRS accelerated virtual port (AVP) guest PMD driver
CONFIG_RTE_LIBRTE_AVP_PMD=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_RX=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_TX=n
CONFIG_RTE_LIBRTE_AVP_DEBUG_BUFFERS=n
# Compile burst-oriented VIRTIO PMD driver
CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n
# Compile virtio device emulation inside virtio PMD driver
CONFIG_RTE_VIRTIO_USER=n
# Compile burst-oriented VMXNET3 PMD driver
CONFIG_RTE_LIBRTE_VMXNET3_PMD=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n
CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n
# Compile software PMD backed by AF_PACKET sockets (Linux only)
CONFIG_RTE_LIBRTE_PMD_AF_PACKET=n
# Compile software PMD backed by AF_XDP sockets (Linux only)
CONFIG_RTE_LIBRTE_PMD_AF_XDP=n
# Compile Memory Interface PMD driver (Linux only)
CONFIG_RTE_LIBRTE_PMD_MEMIF=n
# Compile link bonding PMD library
CONFIG_RTE_LIBRTE_PMD_BOND=n
CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB=n
CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB_L1=n
# Compile fail-safe PMD
CONFIG_RTE_LIBRTE_PMD_FAILSAFE=y
# Compile Marvell PMD driver
CONFIG_RTE_LIBRTE_MVPP2_PMD=n
# Compile Marvell MVNETA PMD driver
CONFIG_RTE_LIBRTE_MVNETA_PMD=n
# Compile support for VMBus library
CONFIG_RTE_LIBRTE_VMBUS=y
# Compile native PMD for Hyper-V/Azure
CONFIG_RTE_LIBRTE_NETVSC_PMD=y
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_RX=n
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_TX=n
CONFIG_RTE_LIBRTE_NETVSC_DEBUG_DUMP=n
# Compile virtual device driver for NetVSC on Hyper-V/Azure
CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD=y
# Compile null PMD
CONFIG_RTE_LIBRTE_PMD_NULL=n
# Compile software PMD backed by PCAP files
CONFIG_RTE_LIBRTE_PMD_PCAP=n
# Compile example software rings based PMD
CONFIG_RTE_LIBRTE_PMD_RING=y
CONFIG_RTE_PMD_RING_MAX_RX_RINGS=16
CONFIG_RTE_PMD_RING_MAX_TX_RINGS=16
# Compile SOFTNIC PMD
CONFIG_RTE_LIBRTE_PMD_SOFTNIC=n
# Compile architecture we compile for. TAP PMD
# It is enabled by default for Linux only.
CONFIG_RTE_LIBRTE_PMD_TAP=y
# Do prefetch of packet data within PMD driver receive function
CONFIG_RTE_PMD_PACKET_PREFETCH=y
# Compile generic wireless base band device library
# EXPERIMENTAL: API may change without prior notice
CONFIG_RTE_LIBRTE_BBDEV=n
CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
CONFIG_RTE_BBDEV_MAX_DEVS=128
CONFIG_RTE_BBDEV_OFFLOAD_COST=y
CONFIG_RTE_BBDEV_SDK_AVX2=n
CONFIG_RTE_BBDEV_SDK_AVX512=n
# Compile PMD for NULL bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=n
# Compile PMD for turbo software bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
# Compile PMD for Intel FPGA LTE FEC bbdev device
CONFIG_RTE_LIBRTE_PMD_BBDEV_FPGA_LTE_FEC=n
# Compile generic crypto device library
CONFIG_RTE_LIBRTE_CRYPTODEV=n
CONFIG_RTE_CRYPTO_MAX_DEVS=64
# Compile PMD for ARMv8 Crypto device
CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO=n
CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG=n
# Compile NXP CAAM JR crypto Driver
CONFIG_RTE_LIBRTE_PMD_CAAM_JR=n
CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE=n
# Compile NXP DPAA2 crypto sec driver for CAAM HW
CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC=n
# NXP DPAA caam - crypto driver
CONFIG_RTE_LIBRTE_PMD_DPAA_SEC=n
CONFIG_RTE_LIBRTE_DPAA_MAX_CRYPTODEV=4
# Compile PMD for Cavium OCTEON TX crypto device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO=n
# Compile PMD for Marvell OCTEON TX2 crypto device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_CRYPTO=n
# Compile PMD for QuickAssist based devices - see docs for details
CONFIG_RTE_LIBRTE_PMD_QAT=n
CONFIG_RTE_LIBRTE_PMD_QAT_SYM=n
CONFIG_RTE_LIBRTE_PMD_QAT_ASYM=n
# Max. number of QuickAssist devices, which can be detected and attached
CONFIG_RTE_PMD_QAT_MAX_PCI_DEVICES=48
CONFIG_RTE_PMD_QAT_COMP_IM_BUFFER_SIZE=65536
# Compile PMD for virtio crypto devices
CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO=n
# Number of maximum virtio crypto devices
CONFIG_RTE_MAX_VIRTIO_CRYPTO=32
# Compile PMD for AESNI backed device
CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n
# Compile PMD for Software backed device
CONFIG_RTE_LIBRTE_PMD_OPENSSL=n
# Compile PMD for AESNI GCM device
CONFIG_RTE_LIBRTE_PMD_AESNI_GCM=n
# Compile PMD for SNOW 3G device
CONFIG_RTE_LIBRTE_PMD_SNOW3G=n
CONFIG_RTE_LIBRTE_PMD_SNOW3G_DEBUG=n
# Compile PMD for KASUMI device
CONFIG_RTE_LIBRTE_PMD_KASUMI=n
# Compile PMD for ZUC device
CONFIG_RTE_LIBRTE_PMD_ZUC=n
# Compile PMD for Crypto Scheduler device
CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER=n
# Compile PMD for NULL Crypto device
CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO=n
# Compile PMD for AMD CCP crypto device
CONFIG_RTE_LIBRTE_PMD_CCP=n
# Compile PMD for Marvell Crypto device
CONFIG_RTE_LIBRTE_PMD_MVSAM_CRYPTO=n
# Compile PMD for NITROX crypto device
CONFIG_RTE_LIBRTE_PMD_NITROX=n
# Compile generic security library
CONFIG_RTE_LIBRTE_SECURITY=n
# Compile generic compression device library
CONFIG_RTE_LIBRTE_COMPRESSDEV=n
CONFIG_RTE_COMPRESS_MAX_DEVS=64
# Compile compressdev unit test
CONFIG_RTE_COMPRESSDEV_TEST=n
# Compile PMD for Octeontx ZIPVF compression device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF=n
# Compile PMD for ISA-L compression device
CONFIG_RTE_LIBRTE_PMD_ISAL=n
# Compile PMD for ZLIB compression device
CONFIG_RTE_LIBRTE_PMD_ZLIB=n
# Compile generic event device library
CONFIG_RTE_LIBRTE_EVENTDEV=n
CONFIG_RTE_LIBRTE_EVENTDEV_DEBUG=n
CONFIG_RTE_EVENT_MAX_DEVS=16
CONFIG_RTE_EVENT_MAX_QUEUES_PER_DEV=64
CONFIG_RTE_EVENT_TIMER_ADAPTER_NUM_MAX=32
CONFIG_RTE_EVENT_ETH_INTR_RING_SIZE=1024
CONFIG_RTE_EVENT_CRYPTO_ADAPTER_MAX_INSTANCE=32
CONFIG_RTE_EVENT_ETH_TX_ADAPTER_MAX_INSTANCE=32
# Compile PMD for skeleton event device
CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV=n
CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG=n
# Compile PMD for software event device
CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV=n
# Compile PMD for distributed software event device
CONFIG_RTE_LIBRTE_PMD_DSW_EVENTDEV=n
# Compile PMD for octeontx sso event device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=n
# Compile PMD for octeontx2 sso event device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_EVENTDEV=n
# Compile PMD for OPDL event device
CONFIG_RTE_LIBRTE_PMD_OPDL_EVENTDEV=n
# Compile PMD for NXP DPAA event device
CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV=n
# Compile PMD for NXP DPAA2 event device
CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV=n
# Compile raw device support
# EXPERIMENTAL: API may change without prior notice
CONFIG_RTE_LIBRTE_RAWDEV=n
CONFIG_RTE_RAWDEV_MAX_DEVS=64
CONFIG_RTE_LIBRTE_PMD_SKELETON_RAWDEV=n
# Compile PMD for NXP DPAA2 CMDIF raw device
CONFIG_RTE_LIBRTE_PMD_DPAA2_CMDIF_RAWDEV=n
# Compile PMD for NXP DPAA2 QDMA raw device
CONFIG_RTE_LIBRTE_PMD_DPAA2_QDMA_RAWDEV=n
# Compile PMD for Intel FPGA raw device
CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=n
# Compile PMD for Intel IOAT raw device
CONFIG_RTE_LIBRTE_PMD_IOAT_RAWDEV=n
# Compile PMD for octeontx2 DMA raw device
CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_DMA_RAWDEV=n
# Compile PMD for NTB raw device
CONFIG_RTE_LIBRTE_PMD_NTB_RAWDEV=n
# Compile librte_ring
CONFIG_RTE_LIBRTE_RING=y
# Compile librte_stack
CONFIG_RTE_LIBRTE_STACK=y
# Compile librte_mempool
CONFIG_RTE_LIBRTE_MEMPOOL=y
CONFIG_RTE_MEMPOOL_CACHE_MAX_SIZE=512
CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=n
# Compile Mempool drivers
CONFIG_RTE_DRIVER_MEMPOOL_BUCKET=y
CONFIG_RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB=64
CONFIG_RTE_DRIVER_MEMPOOL_RING=y
CONFIG_RTE_DRIVER_MEMPOOL_STACK=y
# Compile PMD for octeontx fpa mempool device
CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL=n
# Compile PMD for octeontx2 npa mempool device
CONFIG_RTE_LIBRTE_OCTEONTX2_MEMPOOL=n
# Compile librte_mbuf
CONFIG_RTE_LIBRTE_MBUF=y
CONFIG_RTE_LIBRTE_MBUF_DEBUG=n
CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS="ring_mp_mc"
CONFIG_RTE_MBUF_REFCNT_ATOMIC=y
CONFIG_RTE_PKTMBUF_HEADROOM=128
# Compile librte_timer
CONFIG_RTE_LIBRTE_TIMER=n
CONFIG_RTE_LIBRTE_TIMER_DEBUG=n
# Compile librte_cfgfile
CONFIG_RTE_LIBRTE_CFGFILE=n
# Compile librte_cmdline
CONFIG_RTE_LIBRTE_CMDLINE=y
CONFIG_RTE_LIBRTE_CMDLINE_DEBUG=n
# Compile librte_hash
CONFIG_RTE_LIBRTE_HASH=y
CONFIG_RTE_LIBRTE_HASH_DEBUG=n
# Compile librte_efd
CONFIG_RTE_LIBRTE_EFD=n
# Compile librte_member
CONFIG_RTE_LIBRTE_MEMBER=y
# Compile librte_jobstats
CONFIG_RTE_LIBRTE_JOBSTATS=n
# Compile architecture we compile for. device metrics library
CONFIG_RTE_LIBRTE_METRICS=y
# Compile architecture we compile for. bitrate statistics library
CONFIG_RTE_LIBRTE_BITRATE=y
# Compile architecture we compile for. latency statistics library
CONFIG_RTE_LIBRTE_LATENCY_STATS=y
# Compile librte_telemetry
CONFIG_RTE_LIBRTE_TELEMETRY=n
# Compile librte_rcu
CONFIG_RTE_LIBRTE_RCU=n
CONFIG_RTE_LIBRTE_RCU_DEBUG=n
# Compile librte_rib
CONFIG_RTE_LIBRTE_RIB=n
# Compile librte_fib
CONFIG_RTE_LIBRTE_FIB=n
CONFIG_RTE_LIBRTE_FIB_DEBUG=n
# Compile librte_lpm
CONFIG_RTE_LIBRTE_LPM=n
CONFIG_RTE_LIBRTE_LPM_DEBUG=n
# Compile librte_acl
CONFIG_RTE_LIBRTE_ACL=n
CONFIG_RTE_LIBRTE_ACL_DEBUG=n
# Compile librte_power
CONFIG_RTE_LIBRTE_POWER=n
CONFIG_RTE_LIBRTE_POWER_DEBUG=n
CONFIG_RTE_MAX_LCORE_FREQS=64
# Compile librte_net
CONFIG_RTE_LIBRTE_NET=y
# Compile librte_ip_frag
CONFIG_RTE_LIBRTE_IP_FRAG=y
CONFIG_RTE_LIBRTE_IP_FRAG_DEBUG=n
CONFIG_RTE_LIBRTE_IP_FRAG_MAX_FRAG=4
CONFIG_RTE_LIBRTE_IP_FRAG_TBL_STAT=n
# Compile GRO library
CONFIG_RTE_LIBRTE_GRO=y
# Compile GSO library
CONFIG_RTE_LIBRTE_GSO=y
# Compile librte_meter
CONFIG_RTE_LIBRTE_METER=y
# Compile librte_classify
CONFIG_RTE_LIBRTE_FLOW_CLASSIFY=n
# Compile librte_sched
CONFIG_RTE_LIBRTE_SCHED=n
CONFIG_RTE_SCHED_DEBUG=n
CONFIG_RTE_SCHED_RED=n
CONFIG_RTE_SCHED_COLLECT_STATS=n
CONFIG_RTE_SCHED_SUBPORT_TC_OV=n
CONFIG_RTE_SCHED_PORT_N_GRINDERS=8
CONFIG_RTE_SCHED_VECTOR=n
# Compile architecture we compile for. distributor library
CONFIG_RTE_LIBRTE_DISTRIBUTOR=n
# Compile architecture we compile for. reorder library
CONFIG_RTE_LIBRTE_REORDER=n
# Compile librte_port
CONFIG_RTE_LIBRTE_PORT=n
CONFIG_RTE_PORT_STATS_COLLECT=n
CONFIG_RTE_PORT_PCAP=n
# Compile librte_table
CONFIG_RTE_LIBRTE_TABLE=n
CONFIG_RTE_TABLE_STATS_COLLECT=n
# Compile librte_pipeline
CONFIG_RTE_LIBRTE_PIPELINE=n
CONFIG_RTE_PIPELINE_STATS_COLLECT=n
# Compile librte_kni
CONFIG_RTE_LIBRTE_KNI=n
CONFIG_RTE_LIBRTE_PMD_KNI=n
CONFIG_RTE_KNI_KMOD=n
CONFIG_RTE_KNI_PREEMPT_DEFAULT=y
# Compile architecture we compile for. pdump library
CONFIG_RTE_LIBRTE_PDUMP=y
# Compile vhost user library
CONFIG_RTE_LIBRTE_VHOST=y
CONFIG_RTE_LIBRTE_VHOST_NUMA=y
CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
# Compile vhost PMD
# To compile, CONFIG_RTE_LIBRTE_VHOST should be enabled.
CONFIG_RTE_LIBRTE_PMD_VHOST=y
# Compile IFC driver
# To compile, CONFIG_RTE_LIBRTE_VHOST and CONFIG_RTE_EAL_VFIO
# should be enabled.
CONFIG_RTE_LIBRTE_IFC_PMD=n
# Compile librte_bpf
CONFIG_RTE_LIBRTE_BPF=n
# allow load BPF from ELF files (requires libelf)
CONFIG_RTE_LIBRTE_BPF_ELF=n
# Compile librte_ipsec
CONFIG_RTE_LIBRTE_IPSEC=n
# Compile architecture we compile for. test application
CONFIG_RTE_APP_TEST=y
CONFIG_RTE_APP_TEST_RESOURCE_TAR=n
# Compile architecture we compile for. procinfo application
CONFIG_RTE_PROC_INFO=n
# Compile architecture we compile for. PMD test application
CONFIG_RTE_TEST_PMD=y
CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n
CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n
# Compile architecture we compile for. bbdev test application
CONFIG_RTE_TEST_BBDEV=n
# Compile architecture we compile for. compression performance application
CONFIG_RTE_APP_COMPRESS_PERF=n
# Compile architecture we compile for. crypto performance application
CONFIG_RTE_APP_CRYPTO_PERF=n
# Compile architecture we compile for. eventdev application
CONFIG_RTE_APP_EVENTDEV=n
CONFIG_RTE_EXEC_ENV_LINUX=y
CONFIG_RTE_EXEC_ENV_LINUXAPP=y
CONFIG_RTE_LIBRTE_VHOST_POSTCOPY=n
# Common libraries, before Bus/PMDs
# NXP DPAA BUS and drivers
# NXP FSLMC BUS and DPAA2 drivers
# NXP ENETC PMD Driver
# HINIC PMD driver
# Hisilicon HNS3 PMD driver
# Compile PMD for Intel FPGA raw device
# To compile, CONFIG_RTE_EAL_VFIO should be enabled.
CONFIG_RTE_ARCH_X86_64=y
CONFIG_RTE_ARCH_X86=y
CONFIG_RTE_ARCH_64=y
CONFIG_RTE_TOOLCHAIN_GCC=y

View File

@ -8,37 +8,29 @@
#% define date 20191128
#% define shortcommit0 %(c=%{commit0}; echo ${c:0:7})
%define ver 19.11.2
%define ver 23.11
%define rel 1
%define srcname dpdk-stable
%define srcname dpdk%(awk -F. '{ if (NF > 2) print "-stable" }' <<<%{version})
%define pyelftoolsver 0.27
Name: dpdk
Version: %{ver}
Release: %{rel}%{?commit0:.%{date}git%{shortcommit0}}%{?dist}
%if 0%{?fedora} || 0%{?rhel} > 8
Epoch: 2
%endif
URL: http://dpdk.org
%if 0%{?commit0:1}
Source: http://dpdk.org/browse/dpdk/snapshot/dpdk-%{commit0}.tar.xz
Source: https://dpdk.org/browse/dpdk/snapshot/dpdk-%{commit0}.tar.xz
%else
Source: http://fast.dpdk.org/rel/dpdk-%{ver}.tar.xz
Source: https://fast.dpdk.org/rel/dpdk-%{ver}.tar.xz
%endif
# Only needed for creating snapshot tarballs, not used in build itself
Source100: dpdk-snapshot.sh
Source500: configlib.sh
Source501: gen_config_group.sh
Source502: set_config.sh
# Important: source503 is used as the actual copy file
# @TODO: this causes a warning - fix it?
Source504: arm64-armv8a-linuxapp-gcc-config
Source505: ppc_64-power8-linuxapp-gcc-config
Source506: x86_64-native-linuxapp-gcc-config
# Patches only in dpdk package
Summary: Set of libraries and drivers for fast packet processing
#
@ -54,49 +46,26 @@ License: BSD and LGPLv2 and GPLv2
# needs extensive work to port it to other architectures.
ExclusiveArch: x86_64 aarch64 ppc64le
# machine_arch maps between rpm and dpdk arch name, often same as _target_cpu
# machine_tmpl is the config template machine name, often "native"
# machine is the actual machine name used in the dpdk make system
%ifarch x86_64
%define machine_arch x86_64
%define machine_tmpl native
%define machine default
%endif
%ifarch aarch64
%define machine_arch arm64
%define machine_tmpl armv8a
%define machine armv8a
%endif
%ifarch ppc64le
%define machine_arch ppc_64
%define machine_tmpl power8
%define machine power8
%endif
%define target %{machine_arch}-%{machine_tmpl}-linuxapp-gcc
%define sdkdir %{_datadir}/%{name}
%define docdir %{_docdir}/%{name}
%define incdir %{_includedir}/%{name}
%define pmddir %{_libdir}/%{name}-pmds
%define pmddir %{_libdir}/%{name}-pmds
%if 0%{?rhel} > 7 || 0%{?fedora}
%define _py python3
%define _py_exec %{?__python3}
%else
%define _py python
%define _py_exec %{?__python2}
%endif
%if 0%{?rhel} > 7
# Fix conflicts with README and MAINTAINERS (included in dpdk-doc < 18.11-2)
%if 0%{?rhel} && 0%{?rhel} < 9
# Fix conflicts with README and MAINTAINERS (included in dpdk-doc < 18.11-2),
# this affects only RHEL8.
Conflicts: dpdk-doc < 18.11-2
%endif
BuildRequires: gcc, kernel-headers, zlib-devel, numactl-devel
BuildRequires: doxygen, %{_py}-devel, %{_py}-sphinx
BuildRequires: meson
Source1: https://github.com/eliben/pyelftools/archive/refs/tags/v%{pyelftoolsver}.tar.gz#/pyelftools-%{pyelftoolsver}.tar.gz
%if 0%{?rhel} > 8 || 0%{?fedora}
BuildRequires: python3-pyelftools
%endif
BuildRequires: gcc, zlib-devel, numactl-devel, libarchive-devel
BuildRequires: doxygen, python3-sphinx
%ifarch x86_64
BuildRequires: rdma-core-devel >= 15 libmnl-devel
BuildRequires: rdma-core-devel >= 15
%endif
%description
@ -105,9 +74,9 @@ fast packet processing in the user space.
%package devel
Summary: Data Plane Development Kit development files
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
%ifarch x86_64
Requires: rdma-core-devel libmnl-devel
Requires: rdma-core-devel
%endif
%description devel
@ -124,8 +93,8 @@ API programming documentation for the Data Plane Development Kit.
%if %{with tools}
%package tools
Summary: Tools for setting up Data Plane Development Kit environment
Requires: %{name} = %{version}-%{release}
Requires: kmod pciutils findutils iproute %{_py_exec}
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: kmod pciutils findutils iproute python3
%description tools
%{summary}
@ -142,118 +111,143 @@ as L2 and L3 forwarding.
%endif
%prep
%autosetup -n %{srcname}-%{?commit0:%{commit0}}%{!?commit0:%{ver}} -p1
%if 0%{?rhel} && 0%{?rhel} < 9
%setup -q -a 1 -n %{srcname}-%{?commit0:%{commit0}}%{!?commit0:%{ver}}
%else
%setup -q -n %{srcname}-%{?commit0:%{commit0}}%{!?commit0:%{ver}}
%endif
%autopatch -p1
%build
# In case dpdk-devel is installed
unset RTE_SDK RTE_INCLUDE RTE_TARGET
# Avoid appending second -Wall to everything, it breaks upstream warning
# disablers in makefiles. Strip expclit -march= from optflags since they
# will only guarantee build failures, DPDK is picky with that.
# Note: _hardening_ldflags has to go on the extra cflags line because dpdk is
# astoundingly convoluted in how it processes its linker flags. Fixing it in
# dpdk is the preferred solution, but adjusting to allow a gcc option in the
# ldflags, even when gcc is used as the linker, requires large tree-wide changes
touch obj.o
gcc -### obj.o 2>&1 | awk '/.*collect2.*/ { print $0}' | sed -e 's/\S*\.res\S*//g' -e 's/-z \S*//g' -e 's/[^ ]*\.o//g' -e 's/ /\n/g' | sort -u > ./noopts.txt
gcc -### $RPM_LD_FLAGS obj.o 2>&1 | awk '/.*collect2.*/ {print $0}' | sed -e 's/\S*\.res\S*//g' -e 's/-z \S*//g' -e 's/[^ ]*\.o//g' -e 's/ /\n/g' | sort -u > ./opts.txt
EXTRA_RPM_LDFLAGS=$(comm -13 ./noopts.txt ./opts.txt)
rm -f obj.o
export EXTRA_CFLAGS="$(echo %{optflags} | sed -e 's:-Wall::g' -e 's:-march=[[:alnum:]]* ::g') -Wformat -fPIC %{_hardening_ldflags}"
export EXTRA_LDFLAGS=$(echo %{__global_ldflags} | sed -e's/-Wl,//g' -e's/-spec.*//')
export HOST_EXTRA_CFLAGS="$EXTRA_CFLAGS $EXTRA_RPM_LDFLAGS"
export EXTRA_HOST_LDFLAGS="$EXTRA_RPM_LDFLAGS $(echo %{__global_ldflags} | sed -e's/-spec.*//')"
# DPDK defaults to using builder-specific compiler flags. However,
# the config has been changed by specifying CONFIG_RTE_MACHINE=default
# in order to build for a more generic host. NOTE: It is possible that
# the compiler flags used still won't work for all Fedora-supported
# machines, but runtime checks in DPDK will catch those situations.
make V=1 O=%{target} T=%{target} %{?_smp_mflags} config
cp -f %{SOURCE500} %{SOURCE502} "%{_sourcedir}/%{target}-config" .
%{SOURCE502} %{target}-config "%{target}/.config"
make V=1 O=%{target} %{?_smp_mflags}
# Creating PDF's has excessive build-requirements, html docs suffice fine
make V=1 O=%{target} %{?_smp_mflags} doc-api-html doc-guides-html
%if %{with examples}
make V=1 O=%{target}/examples T=%{target} %{?_smp_mflags} examples
%if 0%{?rhel} && 0%{?rhel} < 9
export PYTHONPATH=$(pwd)/pyelftools-%{pyelftoolsver}
%endif
ENABLED_APPS=(
test-pmd
test-bbdev
)
for app in "${ENABLED_APPS[@]}"; do
enable_apps="${enable_apps:+$enable_apps,}"$app
done
ENABLED_DRIVERS=(
bus/pci
bus/vdev
mempool/ring
net/failsafe
net/i40e
net/ring
net/vhost
net/virtio
net/tap
)
%ifarch x86_64
ENABLED_DRIVERS+=(
baseband/acc
bus/auxiliary
bus/vmbus
common/iavf
common/mlx5
common/nfp
net/bnxt
net/enic
net/iavf
net/ice
net/mlx5
net/netvsc
net/nfp
net/qede
net/vdev_netvsc
)
%endif
%ifarch aarch64 x86_64
ENABLED_DRIVERS+=(
net/e1000
net/ixgbe
)
%endif
for driver in "${ENABLED_DRIVERS[@]}"; do
enable_drivers="${enable_drivers:+$enable_drivers,}"$driver
done
# If doing any updates, this must be aligned with:
# https://access.redhat.com/articles/3538141
ENABLED_LIBS=(
bbdev
bitratestats
bpf
cmdline
cryptodev
dmadev
gro
gso
hash
ip_frag
latencystats
member
meter
metrics
pcapng
pdump
security
stack
vhost
)
for lib in "${ENABLED_LIBS[@]}"; do
enable_libs="${enable_libs:+$enable_libs,}"$lib
done
ln -s /usr/bin/true mandb
export PATH=$(pwd):$PATH
%meson --includedir=include/dpdk \
--default-library=shared \
-Ddeveloper_mode=disabled \
-Denable_libs="$enable_libs" \
-Ddrivers_install_subdir=dpdk-pmds \
-Denable_apps="$enable_apps" \
-Denable_docs=true \
-Denable_drivers="$enable_drivers" \
-Dplatform=generic \
-Dmax_ethports=32 \
-Dmax_numa_nodes=8 \
-Dtests=false
# Check drivers and libraries
for driver in "${ENABLED_DRIVERS[@]}"; do
config_token="RTE_$(echo "$driver" | tr [a-z/] [A-Z_])"
! grep -Fqw "$config_token" */rte_build_config.h || continue
echo "!!! Could not find $driver in rte_build_config.h, please check dependencies. !!!"
false
done
for lib in "${ENABLED_LIBS[@]}"; do
config_token="RTE_LIB_$(echo "$lib" | tr [a-z/] [A-Z_])"
! grep -Fqw "$config_token" */rte_build_config.h || continue
echo "!!! Could not find $lib in rte_build_config.h, please check dependencies. !!!"
false
done
%meson_build
%install
# In case dpdk-devel is installed
unset RTE_SDK RTE_INCLUDE RTE_TARGET
%meson_install
%make_install O=%{target} prefix=%{_usr} libdir=%{_libdir}
# Replace /usr/bin/env python with the correct python binary
find %{buildroot}%{sdkdir}/ -name "*.py" -exec \
sed -i -e 's|#!\s*/usr/bin/env python|#!%{_py_exec}|' {} +
# Create a driver directory with symlinks to all pmds
mkdir -p %{buildroot}/%{pmddir}
for f in %{buildroot}/%{_libdir}/*_pmd_*.so.*; do
bn=$(basename ${f})
ln -s ../${bn} %{buildroot}%{pmddir}/${bn}
done
%if ! %{with tools}
rm -rf %{buildroot}%{sdkdir}/usertools
rm -rf %{buildroot}%{_sbindir}/dpdk-devbind
%endif
rm -f %{buildroot}%{sdkdir}/usertools/dpdk-pmdinfo.py
rm -f %{buildroot}%{sdkdir}/usertools/dpdk-setup.sh
rm -f %{buildroot}%{sdkdir}/usertools/meson.build
rm -f %{buildroot}%{_bindir}/dpdk-pdump
rm -f %{buildroot}%{_bindir}/dpdk-pmdinfo
rm -f %{buildroot}%{_bindir}/dpdk-test-crypto-perf
rm -f %{buildroot}%{_bindir}/dpdk-test-eventdev
%if %{with examples}
find %{target}/examples/ -name "*.map" | xargs rm -f
for f in %{target}/examples/*/%{target}/app/*; do
bn=`basename ${f}`
cp -p ${f} %{buildroot}%{_bindir}/dpdk-${bn}
done
%else
rm -rf %{buildroot}%{sdkdir}/examples
%endif
# Due to RPM limitations delete the backwards compatibility symlinks
rm -f %{buildroot}%{sdkdir}/mk/exec-env/bsdapp
rm -f %{buildroot}%{sdkdir}/mk/exec-env/linuxapp
# Setup RTE_SDK environment as expected by apps etc
mkdir -p %{buildroot}/%{_sysconfdir}/profile.d
cat << EOF > %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk-%{_arch}.sh
if [ -z "\${RTE_SDK}" ]; then
export RTE_SDK="%{sdkdir}"
export RTE_TARGET="%{target}"
export RTE_INCLUDE="%{incdir}"
fi
EOF
cat << EOF > %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk-%{_arch}.csh
if ( ! \$RTE_SDK ) then
setenv RTE_SDK "%{sdkdir}"
setenv RTE_TARGET "%{target}"
setenv RTE_INCLUDE "%{incdir}"
endif
EOF
# Fixup target machine mismatch
sed -i -e 's:-%{machine_tmpl}-:-%{machine}-:g' %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk*
rm -f %{buildroot}%{_libdir}/*.a
# Taken from debian/rules
rm -f %{buildroot}%{docdir}/html/.buildinfo
rm -f %{buildroot}%{docdir}/html/objects.inv
rm -rf %{buildroot}%{docdir}/html/.doctrees
find %{buildroot}%{_datadir}/man/ -type f -a ! -iname "*rte_*" -exec rm {} \;
%files
# BSD
%doc README MAINTAINERS
%{_bindir}/testpmd
%{_bindir}/dpdk-testpmd
%{_bindir}/dpdk-test-bbdev
%dir %{pmddir}
%{_libdir}/*.so.*
%{pmddir}/*.so.*
@ -269,13 +263,16 @@ sed -i -e 's:-%{machine_tmpl}-:-%{machine}-:g' %{buildroot}/%{_sysconfdir}/profi
%{incdir}/
%{sdkdir}/
%if %{with tools}
%exclude %{sdkdir}/usertools/
%exclude %{_bindir}/dpdk-*.py
%endif
%if %{with examples}
%exclude %{sdkdir}/examples/
%endif
%{_sysconfdir}/profile.d/dpdk-sdk-*.*
%{_libdir}/*.so
%{pmddir}/*.so
%{_libdir}/pkgconfig/libdpdk.pc
%{_libdir}/pkgconfig/libdpdk-libs.pc
%{_datadir}/man
%if %{with examples}
%files examples
%{_bindir}/dpdk-*
@ -284,11 +281,34 @@ sed -i -e 's:-%{machine_tmpl}-:-%{machine}-:g' %{buildroot}/%{_sysconfdir}/profi
%if %{with tools}
%files tools
%{sdkdir}/usertools/
%{_sbindir}/dpdk-devbind
%{_bindir}/dpdk-*.py
%endif
%changelog
* Fri Dec 15 2023 David Marchand <david.marchand@redhat.com> - 23.11-1
- Rebase to 23.11 (RHEL-19584)
* Fri Dec 23 2022 Timothy Redaelli <tredaelli@redhat.com> - 21.11-3
- Version bump just to be sure it's updated from dpdk-21.11-2.el8_7
* Wed Oct 26 2022 Timothy Redaelli <tredaelli@redhat.com> - 21.11-2
- Backport fixes for CVE-2022-2132 (#2107171)
* Tue Nov 23 2021 David Marchand <david.marchand@redhat.com> - 21.11-1
- Rebase to 21.11 (#2029497)
* Tue Feb 16 2021 Timothy Redaelli <tredaelli@redhat.com> - 20.11-3
- Fix gating since on DPDK 20.11 testpmd is called dpdk-testpmd
* Wed Feb 10 2021 Timothy Redaelli <tredaelli@redhat.com> - 20.11-2
- Enable ice PMD for x86_64 (#1927179)
* Tue Dec 01 2020 Timothy Redaelli <tredaelli@redhat.com> - 20.11-1
- Rebase DPDK to 20.11 using meson build system (#1908446)
* Thu Aug 13 2020 Timothy Redaelli <tredaelli@redhat.com> - 19.11.3-1
- Rebase DPDK to 19.11.3 (#1868708)
* Wed May 20 2020 Timothy Redaelli <tredaelli@redhat.com> - 19.11.2-1
- Rebase DPDK to 19.11.2 (#1836830, #1837024, #1837030, #1837022)