1 # SPDX-License-Identifier: BSD-3-Clause
2 # Copyright(c) 2010-2017 Intel Corporation
5 # String that appears before the version number
7 CONFIG_RTE_VER_PREFIX="DPDK"
10 # Version information completed when this file is processed for a build
12 CONFIG_RTE_VER_YEAR=__YEAR
13 CONFIG_RTE_VER_MONTH=__MONTH
14 CONFIG_RTE_VER_MINOR=__MINOR
15 CONFIG_RTE_VER_SUFFIX=__SUFFIX
16 CONFIG_RTE_VER_RELEASE=__RELEASE
19 # define executive environment
20 # RTE_EXEC_ENV values are the directories in mk/exec-env/
25 # define the architecture we compile for.
26 # RTE_ARCH values are the directories in mk/arch/
31 # machine can define specific variables or action for a specific board
32 # RTE_MACHINE values are the directories in mk/machine/
37 # The compiler we use.
38 # RTE_TOOLCHAIN values are the directories in mk/toolchain/
43 # Use intrinsics or assembly code for key routines
45 CONFIG_RTE_FORCE_INTRINSICS=n
48 # Machine forces strict alignment constraints.
50 CONFIG_RTE_ARCH_STRICT_ALIGN=n
53 # Compile to share library
55 CONFIG_RTE_BUILD_SHARED_LIB=n
58 # Use newest code breaking previous ABI
63 # Major ABI to overwrite library specific LIBABIVER
68 # Machine's cache line size
70 CONFIG_RTE_CACHE_LINE_SIZE=64
75 CONFIG_RTE_USE_C11_MEM_MODEL=n
78 # Compile Environment Abstraction Layer
80 CONFIG_RTE_LIBRTE_EAL=y
81 CONFIG_RTE_MAX_LCORE=128
82 CONFIG_RTE_MAX_NUMA_NODES=8
83 CONFIG_RTE_MAX_HEAPS=32
84 CONFIG_RTE_MAX_MEMSEG_LISTS=64
85 # each memseg list will be limited to either RTE_MAX_MEMSEG_PER_LIST pages
86 # or RTE_MAX_MEM_MB_PER_LIST megabytes worth of memory, whichever is smaller
87 CONFIG_RTE_MAX_MEMSEG_PER_LIST=8192
88 CONFIG_RTE_MAX_MEM_MB_PER_LIST=32768
89 # a "type" is a combination of page size and NUMA node. total number of memseg
90 # lists per type will be limited to either RTE_MAX_MEMSEG_PER_TYPE pages (split
91 # over multiple lists of RTE_MAX_MEMSEG_PER_LIST pages), or
92 # RTE_MAX_MEM_MB_PER_TYPE megabytes of memory (split over multiple lists of
93 # RTE_MAX_MEM_MB_PER_LIST), whichever is smaller
94 CONFIG_RTE_MAX_MEMSEG_PER_TYPE=32768
95 CONFIG_RTE_MAX_MEM_MB_PER_TYPE=131072
96 # global maximum usable amount of VA, in megabytes
97 CONFIG_RTE_MAX_MEM_MB=524288
98 CONFIG_RTE_MAX_MEMZONE=2560
99 CONFIG_RTE_MAX_TAILQ=32
100 CONFIG_RTE_ENABLE_ASSERT=n
101 CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO
102 CONFIG_RTE_LOG_HISTORY=256
103 CONFIG_RTE_BACKTRACE=y
104 CONFIG_RTE_LIBEAL_USE_HPET=n
105 CONFIG_RTE_EAL_ALLOW_INV_SOCKET_ID=n
106 CONFIG_RTE_EAL_ALWAYS_PANIC_ON_ERROR=n
107 CONFIG_RTE_EAL_IGB_UIO=n
108 CONFIG_RTE_EAL_VFIO=n
109 CONFIG_RTE_MAX_VFIO_GROUPS=64
110 CONFIG_RTE_MAX_VFIO_CONTAINERS=64
111 CONFIG_RTE_MALLOC_DEBUG=n
112 CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=n
113 CONFIG_RTE_USE_LIBBSD=n
116 # Recognize/ignore the AVX/AVX512 CPU flags for performance/power testing.
117 # AVX512 is marked as experimental for now, will enable it after enough
118 # field test and possible optimization.
120 CONFIG_RTE_ENABLE_AVX=y
121 CONFIG_RTE_ENABLE_AVX512=n
123 # Default driver path (or "" to disable)
124 CONFIG_RTE_EAL_PMD_PATH=""
127 # Compile Environment Abstraction Layer to support Vmware TSC map
129 CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=y
132 # Compile the PCI library
134 CONFIG_RTE_LIBRTE_PCI=y
137 # Compile the argument parser library
139 CONFIG_RTE_LIBRTE_KVARGS=y
142 # Compile generic ethernet library
144 CONFIG_RTE_LIBRTE_ETHER=y
145 CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n
146 CONFIG_RTE_MAX_ETHPORTS=32
147 CONFIG_RTE_MAX_QUEUES_PER_PORT=1024
148 CONFIG_RTE_LIBRTE_IEEE1588=n
149 CONFIG_RTE_ETHDEV_QUEUE_STAT_CNTRS=16
150 CONFIG_RTE_ETHDEV_RXTX_CALLBACKS=y
151 CONFIG_RTE_ETHDEV_PROFILE_WITH_VTUNE=n
154 # Turn off Tx preparation stage
156 # Warning: rte_eth_tx_prepare() can be safely disabled only if using a
157 # driver which do not implement any Tx preparation.
159 CONFIG_RTE_ETHDEV_TX_PREPARE_NOOP=n
162 # Common libraries, before Bus/PMDs
164 CONFIG_RTE_LIBRTE_COMMON_DPAAX=n
167 # Compile the Intel FPGA bus
169 CONFIG_RTE_LIBRTE_IFPGA_BUS=y
172 # Compile PCI bus driver
174 CONFIG_RTE_LIBRTE_PCI_BUS=y
177 # Compile the vdev bus
179 CONFIG_RTE_LIBRTE_VDEV_BUS=y
184 CONFIG_RTE_LIBRTE_ARK_PMD=y
185 CONFIG_RTE_LIBRTE_ARK_PAD_TX=y
186 CONFIG_RTE_LIBRTE_ARK_DEBUG_RX=n
187 CONFIG_RTE_LIBRTE_ARK_DEBUG_TX=n
188 CONFIG_RTE_LIBRTE_ARK_DEBUG_STATS=n
189 CONFIG_RTE_LIBRTE_ARK_DEBUG_TRACE=n
192 # Compile Aquantia Atlantic PMD driver
194 CONFIG_RTE_LIBRTE_ATLANTIC_PMD=y
199 CONFIG_RTE_LIBRTE_AXGBE_PMD=y
200 CONFIG_RTE_LIBRTE_AXGBE_PMD_DEBUG=n
203 # Compile burst-oriented Broadcom PMD driver
205 CONFIG_RTE_LIBRTE_BNX2X_PMD=n
206 CONFIG_RTE_LIBRTE_BNX2X_DEBUG_RX=n
207 CONFIG_RTE_LIBRTE_BNX2X_DEBUG_TX=n
208 CONFIG_RTE_LIBRTE_BNX2X_MF_SUPPORT=n
209 CONFIG_RTE_LIBRTE_BNX2X_DEBUG_PERIODIC=n
212 # Compile burst-oriented Broadcom BNXT PMD driver
214 CONFIG_RTE_LIBRTE_BNXT_PMD=y
217 # Compile burst-oriented Chelsio Terminator (CXGBE) PMD
219 CONFIG_RTE_LIBRTE_CXGBE_PMD=y
220 CONFIG_RTE_LIBRTE_CXGBE_DEBUG=n
221 CONFIG_RTE_LIBRTE_CXGBE_DEBUG_REG=n
222 CONFIG_RTE_LIBRTE_CXGBE_DEBUG_MBOX=n
223 CONFIG_RTE_LIBRTE_CXGBE_DEBUG_TX=n
224 CONFIG_RTE_LIBRTE_CXGBE_DEBUG_RX=n
225 CONFIG_RTE_LIBRTE_CXGBE_TPUT=y
228 CONFIG_RTE_LIBRTE_DPAA_BUS=n
229 CONFIG_RTE_LIBRTE_DPAA_MEMPOOL=n
230 CONFIG_RTE_LIBRTE_DPAA_PMD=n
231 CONFIG_RTE_LIBRTE_DPAA_HWDEBUG=n
234 # Compile NXP DPAA2 FSL-MC Bus
236 CONFIG_RTE_LIBRTE_FSLMC_BUS=n
239 # Compile Support Libraries for NXP DPAA2
241 CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL=n
242 CONFIG_RTE_LIBRTE_DPAA2_USE_PHYS_IOVA=y
245 # Compile burst-oriented NXP DPAA2 PMD driver
247 CONFIG_RTE_LIBRTE_DPAA2_PMD=n
248 CONFIG_RTE_LIBRTE_DPAA2_DEBUG_DRIVER=n
251 # Compile NXP ENETC PMD Driver
253 CONFIG_RTE_LIBRTE_ENETC_PMD=n
256 # Compile burst-oriented Amazon ENA PMD driver
258 CONFIG_RTE_LIBRTE_ENA_PMD=y
259 CONFIG_RTE_LIBRTE_ENA_DEBUG_RX=n
260 CONFIG_RTE_LIBRTE_ENA_DEBUG_TX=n
261 CONFIG_RTE_LIBRTE_ENA_DEBUG_TX_FREE=n
262 CONFIG_RTE_LIBRTE_ENA_COM_DEBUG=n
265 # Compile burst-oriented Cisco ENIC PMD driver
267 CONFIG_RTE_LIBRTE_ENIC_PMD=y
270 # Compile burst-oriented IGB & EM PMD drivers
272 CONFIG_RTE_LIBRTE_EM_PMD=y
273 CONFIG_RTE_LIBRTE_IGB_PMD=y
274 CONFIG_RTE_LIBRTE_E1000_DEBUG_RX=n
275 CONFIG_RTE_LIBRTE_E1000_DEBUG_TX=n
276 CONFIG_RTE_LIBRTE_E1000_DEBUG_TX_FREE=n
277 CONFIG_RTE_LIBRTE_E1000_PF_DISABLE_STRIP_CRC=n
280 # Compile burst-oriented IXGBE PMD driver
282 CONFIG_RTE_LIBRTE_IXGBE_PMD=y
283 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
284 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
285 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
286 CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
287 CONFIG_RTE_IXGBE_INC_VECTOR=y
288 CONFIG_RTE_LIBRTE_IXGBE_BYPASS=n
291 # Compile burst-oriented I40E PMD driver
293 CONFIG_RTE_LIBRTE_I40E_PMD=y
294 CONFIG_RTE_LIBRTE_I40E_DEBUG_RX=n
295 CONFIG_RTE_LIBRTE_I40E_DEBUG_TX=n
296 CONFIG_RTE_LIBRTE_I40E_DEBUG_TX_FREE=n
297 CONFIG_RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC=y
298 CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y
299 CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n
300 CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF=64
301 CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM=4
304 # Compile burst-oriented FM10K PMD
306 CONFIG_RTE_LIBRTE_FM10K_PMD=y
307 CONFIG_RTE_LIBRTE_FM10K_DEBUG_RX=n
308 CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX=n
309 CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX_FREE=n
310 CONFIG_RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE=y
311 CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y
314 # Compile burst-oriented ICE PMD driver
316 CONFIG_RTE_LIBRTE_ICE_PMD=y
317 CONFIG_RTE_LIBRTE_ICE_DEBUG_RX=n
318 CONFIG_RTE_LIBRTE_ICE_DEBUG_TX=n
319 CONFIG_RTE_LIBRTE_ICE_DEBUG_TX_FREE=n
320 CONFIG_RTE_LIBRTE_ICE_RX_ALLOW_BULK_ALLOC=y
321 CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC=n
323 # Compile burst-oriented IAVF PMD driver
325 CONFIG_RTE_LIBRTE_IAVF_PMD=y
326 CONFIG_RTE_LIBRTE_IAVF_INC_VECTOR=y
327 CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX=n
328 CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX_FREE=n
329 CONFIG_RTE_LIBRTE_IAVF_DEBUG_RX=n
330 CONFIG_RTE_LIBRTE_IAVF_16BYTE_RX_DESC=n
333 # Compile burst-oriented Mellanox ConnectX-3 (MLX4) PMD
335 CONFIG_RTE_LIBRTE_MLX4_PMD=n
336 CONFIG_RTE_LIBRTE_MLX4_DEBUG=n
339 # Compile burst-oriented Mellanox ConnectX-4, ConnectX-5,
340 # ConnectX-6 & Bluefield (MLX5) PMD
342 CONFIG_RTE_LIBRTE_MLX5_PMD=n
343 CONFIG_RTE_LIBRTE_MLX5_DEBUG=n
345 # Linking method for mlx4/5 dependency on ibverbs and related libraries
346 # Default linking is dynamic by linker.
347 # Other options are: dynamic by dlopen at run-time, or statically embedded.
348 CONFIG_RTE_IBVERBS_LINK_DLOPEN=n
349 CONFIG_RTE_IBVERBS_LINK_STATIC=n
352 # Compile burst-oriented Netronome NFP PMD driver
354 CONFIG_RTE_LIBRTE_NFP_PMD=n
355 CONFIG_RTE_LIBRTE_NFP_DEBUG_TX=n
356 CONFIG_RTE_LIBRTE_NFP_DEBUG_RX=n
358 # QLogic 10G/25G/40G/50G/100G PMD
360 CONFIG_RTE_LIBRTE_QEDE_PMD=y
361 CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
362 CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
363 #Provides abs path/name of the firmware file.
364 #Empty string denotes driver will use default firmware
365 CONFIG_RTE_LIBRTE_QEDE_FW=""
368 # Compile burst-oriented Solarflare libefx-based PMD
370 CONFIG_RTE_LIBRTE_SFC_EFX_PMD=y
371 CONFIG_RTE_LIBRTE_SFC_EFX_DEBUG=n
374 # Compile software PMD backed by SZEDATA2 device
376 CONFIG_RTE_LIBRTE_PMD_SZEDATA2=n
379 # Compile software PMD backed by NFB device
381 CONFIG_RTE_LIBRTE_NFB_PMD=n
384 # Compile burst-oriented Cavium Thunderx NICVF PMD driver
386 CONFIG_RTE_LIBRTE_THUNDERX_NICVF_PMD=y
387 CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_RX=n
388 CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX=n
391 # Compile burst-oriented Cavium LiquidIO PMD driver
393 CONFIG_RTE_LIBRTE_LIO_PMD=y
394 CONFIG_RTE_LIBRTE_LIO_DEBUG_RX=n
395 CONFIG_RTE_LIBRTE_LIO_DEBUG_TX=n
396 CONFIG_RTE_LIBRTE_LIO_DEBUG_MBOX=n
397 CONFIG_RTE_LIBRTE_LIO_DEBUG_REGS=n
400 # Compile burst-oriented Cavium OCTEONTX network PMD driver
402 CONFIG_RTE_LIBRTE_OCTEONTX_PMD=y
405 # Compile WRS accelerated virtual port (AVP) guest PMD driver
407 CONFIG_RTE_LIBRTE_AVP_PMD=n
408 CONFIG_RTE_LIBRTE_AVP_DEBUG_RX=n
409 CONFIG_RTE_LIBRTE_AVP_DEBUG_TX=n
410 CONFIG_RTE_LIBRTE_AVP_DEBUG_BUFFERS=n
413 # Compile burst-oriented VIRTIO PMD driver
415 CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
416 CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n
417 CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n
418 CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n
421 # Compile virtio device emulation inside virtio PMD driver
423 CONFIG_RTE_VIRTIO_USER=n
426 # Compile burst-oriented VMXNET3 PMD driver
428 CONFIG_RTE_LIBRTE_VMXNET3_PMD=y
429 CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n
430 CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n
431 CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n
434 # Compile software PMD backed by AF_PACKET sockets (Linux only)
436 CONFIG_RTE_LIBRTE_PMD_AF_PACKET=n
439 # Compile software PMD backed by AF_XDP sockets (Linux only)
441 CONFIG_RTE_LIBRTE_PMD_AF_XDP=n
444 # Compile link bonding PMD library
446 CONFIG_RTE_LIBRTE_PMD_BOND=y
447 CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB=n
448 CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB_L1=n
451 # Compile fail-safe PMD
453 CONFIG_RTE_LIBRTE_PMD_FAILSAFE=y
456 # Compile Marvell PMD driver
458 CONFIG_RTE_LIBRTE_MVPP2_PMD=n
461 # Compile Marvell MVNETA PMD driver
463 CONFIG_RTE_LIBRTE_MVNETA_PMD=n
466 # Compile support for VMBus library
468 CONFIG_RTE_LIBRTE_VMBUS=n
471 # Compile native PMD for Hyper-V/Azure
473 CONFIG_RTE_LIBRTE_NETVSC_PMD=n
474 CONFIG_RTE_LIBRTE_NETVSC_DEBUG_RX=n
475 CONFIG_RTE_LIBRTE_NETVSC_DEBUG_TX=n
476 CONFIG_RTE_LIBRTE_NETVSC_DEBUG_DUMP=n
479 # Compile virtual device driver for NetVSC on Hyper-V/Azure
481 CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD=n
486 CONFIG_RTE_LIBRTE_PMD_NULL=y
489 # Compile software PMD backed by PCAP files
491 CONFIG_RTE_LIBRTE_PMD_PCAP=n
494 # Compile example software rings based PMD
496 CONFIG_RTE_LIBRTE_PMD_RING=y
497 CONFIG_RTE_PMD_RING_MAX_RX_RINGS=16
498 CONFIG_RTE_PMD_RING_MAX_TX_RINGS=16
501 # Compile SOFTNIC PMD
503 CONFIG_RTE_LIBRTE_PMD_SOFTNIC=n
506 # Compile the TAP PMD
507 # It is enabled by default for Linux only.
509 CONFIG_RTE_LIBRTE_PMD_TAP=n
512 # Do prefetch of packet data within PMD driver receive function
514 CONFIG_RTE_PMD_PACKET_PREFETCH=y
516 # Compile generic wireless base band device library
517 # EXPERIMENTAL: API may change without prior notice
519 CONFIG_RTE_LIBRTE_BBDEV=y
520 CONFIG_RTE_BBDEV_MAX_DEVS=128
521 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
524 # Compile PMD for NULL bbdev device
526 CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
529 # Compile PMD for turbo software bbdev device
531 CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
534 # Compile generic crypto device library
536 CONFIG_RTE_LIBRTE_CRYPTODEV=y
537 CONFIG_RTE_CRYPTO_MAX_DEVS=64
540 # Compile PMD for ARMv8 Crypto device
542 CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO=n
543 CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG=n
546 # Compile NXP CAAM JR crypto Driver
548 CONFIG_RTE_LIBRTE_PMD_CAAM_JR=n
549 CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE=n
552 # Compile NXP DPAA2 crypto sec driver for CAAM HW
554 CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC=n
557 # NXP DPAA caam - crypto driver
559 CONFIG_RTE_LIBRTE_PMD_DPAA_SEC=n
560 CONFIG_RTE_LIBRTE_DPAA_MAX_CRYPTODEV=4
563 # Compile PMD for Cavium OCTEON TX crypto device
565 CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO=y
568 # Compile PMD for QuickAssist based devices - see docs for details
570 CONFIG_RTE_LIBRTE_PMD_QAT=y
571 CONFIG_RTE_LIBRTE_PMD_QAT_SYM=n
572 CONFIG_RTE_LIBRTE_PMD_QAT_ASYM=n
574 # Max. number of QuickAssist devices, which can be detected and attached
576 CONFIG_RTE_PMD_QAT_MAX_PCI_DEVICES=48
577 CONFIG_RTE_PMD_QAT_COMP_IM_BUFFER_SIZE=65536
580 # Compile PMD for virtio crypto devices
582 CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO=y
584 # Number of maximum virtio crypto devices
586 CONFIG_RTE_MAX_VIRTIO_CRYPTO=32
589 # Compile PMD for AESNI backed device
591 CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n
594 # Compile PMD for Software backed device
596 CONFIG_RTE_LIBRTE_PMD_OPENSSL=n
599 # Compile PMD for AESNI GCM device
601 CONFIG_RTE_LIBRTE_PMD_AESNI_GCM=n
604 # Compile PMD for SNOW 3G device
606 CONFIG_RTE_LIBRTE_PMD_SNOW3G=n
607 CONFIG_RTE_LIBRTE_PMD_SNOW3G_DEBUG=n
610 # Compile PMD for KASUMI device
612 CONFIG_RTE_LIBRTE_PMD_KASUMI=n
615 # Compile PMD for ZUC device
617 CONFIG_RTE_LIBRTE_PMD_ZUC=n
619 # Compile PMD for Crypto Scheduler device
621 CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER=y
624 # Compile PMD for NULL Crypto device
626 CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO=y
629 # Compile PMD for AMD CCP crypto device
631 CONFIG_RTE_LIBRTE_PMD_CCP=n
634 # Compile PMD for Marvell Crypto device
636 CONFIG_RTE_LIBRTE_PMD_MVSAM_CRYPTO=n
639 # Compile generic security library
641 CONFIG_RTE_LIBRTE_SECURITY=y
644 # Compile generic compression device library
646 CONFIG_RTE_LIBRTE_COMPRESSDEV=y
647 CONFIG_RTE_COMPRESS_MAX_DEVS=64
650 # Compile compressdev unit test
652 CONFIG_RTE_COMPRESSDEV_TEST=n
655 # Compile PMD for Octeontx ZIPVF compression device
657 CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF=y
660 # Compile PMD for ISA-L compression device
662 CONFIG_RTE_LIBRTE_PMD_ISAL=n
665 # Compile PMD for ZLIB compression device
667 CONFIG_RTE_LIBRTE_PMD_ZLIB=n
670 # Compile generic event device library
672 CONFIG_RTE_LIBRTE_EVENTDEV=y
673 CONFIG_RTE_LIBRTE_EVENTDEV_DEBUG=n
674 CONFIG_RTE_EVENT_MAX_DEVS=16
675 CONFIG_RTE_EVENT_MAX_QUEUES_PER_DEV=64
676 CONFIG_RTE_EVENT_TIMER_ADAPTER_NUM_MAX=32
677 CONFIG_RTE_EVENT_ETH_INTR_RING_SIZE=1024
678 CONFIG_RTE_EVENT_CRYPTO_ADAPTER_MAX_INSTANCE=32
679 CONFIG_RTE_EVENT_ETH_TX_ADAPTER_MAX_INSTANCE=32
682 # Compile PMD for skeleton event device
684 CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV=y
685 CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG=n
688 # Compile PMD for software event device
690 CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV=y
693 # Compile PMD for distributed software event device
695 CONFIG_RTE_LIBRTE_PMD_DSW_EVENTDEV=y
698 # Compile PMD for octeontx sso event device
700 CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=y
703 # Compile PMD for OPDL event device
705 CONFIG_RTE_LIBRTE_PMD_OPDL_EVENTDEV=y
708 # Compile PMD for NXP DPAA event device
710 CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV=n
713 # Compile PMD for NXP DPAA2 event device
715 CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV=n
718 # Compile raw device support
719 # EXPERIMENTAL: API may change without prior notice
721 CONFIG_RTE_LIBRTE_RAWDEV=y
722 CONFIG_RTE_RAWDEV_MAX_DEVS=64
723 CONFIG_RTE_LIBRTE_PMD_SKELETON_RAWDEV=y
726 # Compile PMD for NXP DPAA2 CMDIF raw device
728 CONFIG_RTE_LIBRTE_PMD_DPAA2_CMDIF_RAWDEV=n
731 # Compile PMD for NXP DPAA2 QDMA raw device
733 CONFIG_RTE_LIBRTE_PMD_DPAA2_QDMA_RAWDEV=n
736 # Compile PMD for Intel FPGA raw device
738 CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=y
741 # Compile librte_ring
743 CONFIG_RTE_LIBRTE_RING=y
746 # Compile librte_stack
748 CONFIG_RTE_LIBRTE_STACK=y
751 # Compile librte_mempool
753 CONFIG_RTE_LIBRTE_MEMPOOL=y
754 CONFIG_RTE_MEMPOOL_CACHE_MAX_SIZE=512
755 CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=n
758 # Compile Mempool drivers
760 CONFIG_RTE_DRIVER_MEMPOOL_BUCKET=y
761 CONFIG_RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB=64
762 CONFIG_RTE_DRIVER_MEMPOOL_RING=y
763 CONFIG_RTE_DRIVER_MEMPOOL_STACK=y
766 # Compile PMD for octeontx fpa mempool device
768 CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL=y
771 # Compile librte_mbuf
773 CONFIG_RTE_LIBRTE_MBUF=y
774 CONFIG_RTE_LIBRTE_MBUF_DEBUG=n
775 CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS="ring_mp_mc"
776 CONFIG_RTE_MBUF_REFCNT_ATOMIC=y
777 CONFIG_RTE_PKTMBUF_HEADROOM=128
780 # Compile librte_timer
782 CONFIG_RTE_LIBRTE_TIMER=y
783 CONFIG_RTE_LIBRTE_TIMER_DEBUG=n
786 # Compile librte_cfgfile
788 CONFIG_RTE_LIBRTE_CFGFILE=y
791 # Compile librte_cmdline
793 CONFIG_RTE_LIBRTE_CMDLINE=y
794 CONFIG_RTE_LIBRTE_CMDLINE_DEBUG=n
797 # Compile librte_hash
799 CONFIG_RTE_LIBRTE_HASH=y
800 CONFIG_RTE_LIBRTE_HASH_DEBUG=n
805 CONFIG_RTE_LIBRTE_EFD=y
808 # Compile librte_member
810 CONFIG_RTE_LIBRTE_MEMBER=y
813 # Compile librte_jobstats
815 CONFIG_RTE_LIBRTE_JOBSTATS=y
818 # Compile the device metrics library
820 CONFIG_RTE_LIBRTE_METRICS=y
823 # Compile the bitrate statistics library
825 CONFIG_RTE_LIBRTE_BITRATE=y
828 # Compile the latency statistics library
830 CONFIG_RTE_LIBRTE_LATENCY_STATS=y
833 # Compile librte_telemetry
835 CONFIG_RTE_LIBRTE_TELEMETRY=n
840 CONFIG_RTE_LIBRTE_LPM=y
841 CONFIG_RTE_LIBRTE_LPM_DEBUG=n
846 CONFIG_RTE_LIBRTE_ACL=y
847 CONFIG_RTE_LIBRTE_ACL_DEBUG=n
850 # Compile librte_power
852 CONFIG_RTE_LIBRTE_POWER=n
853 CONFIG_RTE_LIBRTE_POWER_DEBUG=n
854 CONFIG_RTE_MAX_LCORE_FREQS=64
859 CONFIG_RTE_LIBRTE_NET=y
862 # Compile librte_ip_frag
864 CONFIG_RTE_LIBRTE_IP_FRAG=y
865 CONFIG_RTE_LIBRTE_IP_FRAG_DEBUG=n
866 CONFIG_RTE_LIBRTE_IP_FRAG_MAX_FRAG=4
867 CONFIG_RTE_LIBRTE_IP_FRAG_TBL_STAT=n
870 # Compile GRO library
872 CONFIG_RTE_LIBRTE_GRO=y
875 # Compile GSO library
877 CONFIG_RTE_LIBRTE_GSO=y
880 # Compile librte_meter
882 CONFIG_RTE_LIBRTE_METER=y
885 # Compile librte_classify
887 CONFIG_RTE_LIBRTE_FLOW_CLASSIFY=y
890 # Compile librte_sched
892 CONFIG_RTE_LIBRTE_SCHED=y
893 CONFIG_RTE_SCHED_DEBUG=n
894 CONFIG_RTE_SCHED_RED=n
895 CONFIG_RTE_SCHED_COLLECT_STATS=n
896 CONFIG_RTE_SCHED_SUBPORT_TC_OV=n
897 CONFIG_RTE_SCHED_PORT_N_GRINDERS=8
898 CONFIG_RTE_SCHED_VECTOR=n
901 # Compile the distributor library
903 CONFIG_RTE_LIBRTE_DISTRIBUTOR=y
906 # Compile the reorder library
908 CONFIG_RTE_LIBRTE_REORDER=y
911 # Compile librte_port
913 CONFIG_RTE_LIBRTE_PORT=y
914 CONFIG_RTE_PORT_STATS_COLLECT=n
915 CONFIG_RTE_PORT_PCAP=n
918 # Compile librte_table
920 CONFIG_RTE_LIBRTE_TABLE=y
921 CONFIG_RTE_TABLE_STATS_COLLECT=n
924 # Compile librte_pipeline
926 CONFIG_RTE_LIBRTE_PIPELINE=y
927 CONFIG_RTE_PIPELINE_STATS_COLLECT=n
932 CONFIG_RTE_LIBRTE_KNI=n
933 CONFIG_RTE_LIBRTE_PMD_KNI=n
934 CONFIG_RTE_KNI_KMOD=n
935 CONFIG_RTE_KNI_KMOD_ETHTOOL=n
936 CONFIG_RTE_KNI_PREEMPT_DEFAULT=y
939 # Compile the pdump library
941 CONFIG_RTE_LIBRTE_PDUMP=y
944 # Compile vhost user library
946 CONFIG_RTE_LIBRTE_VHOST=n
947 CONFIG_RTE_LIBRTE_VHOST_NUMA=n
948 CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
952 # To compile, CONFIG_RTE_LIBRTE_VHOST should be enabled.
954 CONFIG_RTE_LIBRTE_PMD_VHOST=n
958 # To compile, CONFIG_RTE_LIBRTE_VHOST and CONFIG_RTE_EAL_VFIO
961 CONFIG_RTE_LIBRTE_IFC_PMD=n
966 CONFIG_RTE_LIBRTE_BPF=y
967 # allow load BPF from ELF files (requires libelf)
968 CONFIG_RTE_LIBRTE_BPF_ELF=n
971 # Compile librte_ipsec
973 CONFIG_RTE_LIBRTE_IPSEC=y
976 # Compile the test application
978 CONFIG_RTE_APP_TEST=y
979 CONFIG_RTE_APP_TEST_RESOURCE_TAR=n
982 # Compile the procinfo application
984 CONFIG_RTE_PROC_INFO=n
987 # Compile the PMD test application
989 CONFIG_RTE_TEST_PMD=y
990 CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n
991 CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n
994 # Compile the bbdev test application
996 CONFIG_RTE_TEST_BBDEV=y
999 # Compile the compression performance application
1001 CONFIG_RTE_APP_COMPRESS_PERF=y
1004 # Compile the crypto performance application
1006 CONFIG_RTE_APP_CRYPTO_PERF=y
1009 # Compile the eventdev application
1011 CONFIG_RTE_APP_EVENTDEV=y