# SPDX-License-Identifier: BSD-3-Clause
# Copyright (C) 2015 RehiveTech. All right reserved.

#include "common_linuxapp"

CONFIG_RTE_MACHINE="armv7a"

CONFIG_RTE_ARCH="arm"
CONFIG_RTE_ARCH_ARM=y
CONFIG_RTE_ARCH_ARMv7=y
CONFIG_RTE_ARCH_ARM_TUNE="cortex-a9"

# Accelerate memcpy operations. Consider enabling for Cortex-A15.
# For Cortex-A7 and Cortex-A9, It might accelerate short data copies (< 64 B).
CONFIG_RTE_ARCH_ARM_NEON_MEMCPY=n

CONFIG_RTE_FORCE_INTRINSICS=y
CONFIG_RTE_ARCH_STRICT_ALIGN=y

CONFIG_RTE_TOOLCHAIN="gcc"
CONFIG_RTE_TOOLCHAIN_GCC=y

# NUMA is not supported on ARM
CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=n
CONFIG_RTE_LIBRTE_VHOST_NUMA=n

# ARM doesn't have support for vmware TSC map
CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=n

# KNI is not supported on 32-bit
CONFIG_RTE_LIBRTE_KNI=n

# PCI is usually not used on ARM
CONFIG_RTE_EAL_IGB_UIO=n

# fails to compile on ARM
CONFIG_RTE_SCHED_VECTOR=n

# cannot use those on ARM
CONFIG_RTE_KNI_KMOD=n
CONFIG_RTE_LIBRTE_ARK_PMD=n
CONFIG_RTE_LIBRTE_EM_PMD=n
CONFIG_RTE_LIBRTE_IGB_PMD=n
CONFIG_RTE_LIBRTE_CXGBE_PMD=n
CONFIG_RTE_LIBRTE_E1000_PMD=n
CONFIG_RTE_LIBRTE_ENIC_PMD=n
CONFIG_RTE_LIBRTE_FM10K_PMD=n
CONFIG_RTE_LIBRTE_I40E_PMD=n
CONFIG_RTE_LIBRTE_IXGBE_PMD=n
CONFIG_RTE_LIBRTE_MLX4_PMD=n
CONFIG_RTE_LIBRTE_VMXNET3_PMD=n
CONFIG_RTE_LIBRTE_BNX2X_PMD=n
CONFIG_RTE_LIBRTE_QEDE_PMD=n
CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n
CONFIG_RTE_LIBRTE_AVP_PMD=n
