config: add octeontx2 machine
Optimized configuration for Marvell octeontx2 SoC. Updated meson build to support Marvell octeontx2 SoC. Added meson cross build target for octeontx2. Signed-off-by: Jerin Jacob <jerinj@marvell.com> Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Reviewed-by: Gavin Hu <gavin.hu@arm.com>
This commit is contained in:
parent
7286c9d723
commit
01d1847987
16
config/arm/arm64_octeontx2_linux_gcc
Normal file
16
config/arm/arm64_octeontx2_linux_gcc
Normal file
|
@ -0,0 +1,16 @@
|
|||
[binaries]
|
||||
c = 'aarch64-linux-gnu-gcc'
|
||||
cpp = 'aarch64-linux-gnu-cpp'
|
||||
ar = 'aarch64-linux-gnu-gcc-ar'
|
||||
strip = 'aarch64-linux-gnu-strip'
|
||||
pcap-config = ''
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'aarch64'
|
||||
cpu = 'armv8-a'
|
||||
endian = 'little'
|
||||
|
||||
[properties]
|
||||
implementor_id = '0x43'
|
||||
implementor_pn = '0xb2'
|
|
@ -60,6 +60,12 @@ flags_thunderx2_extra = [
|
|||
['RTE_MAX_NUMA_NODES', 2],
|
||||
['RTE_MAX_LCORE', 256],
|
||||
['RTE_USE_C11_MEM_MODEL', true]]
|
||||
flags_octeontx2_extra = [
|
||||
['RTE_MACHINE', '"octeontx2"'],
|
||||
['RTE_MAX_NUMA_NODES', 1],
|
||||
['RTE_MAX_LCORE', 24],
|
||||
['RTE_EAL_IGB_UIO', false],
|
||||
['RTE_USE_C11_MEM_MODEL', true]]
|
||||
|
||||
machine_args_generic = [
|
||||
['default', ['-march=armv8-a+crc+crypto']],
|
||||
|
@ -77,7 +83,8 @@ machine_args_cavium = [
|
|||
['0xa1', ['-mcpu=thunderxt88'], flags_thunderx_extra],
|
||||
['0xa2', ['-mcpu=thunderxt81'], flags_thunderx_extra],
|
||||
['0xa3', ['-mcpu=thunderxt83'], flags_thunderx_extra],
|
||||
['0xaf', ['-mcpu=thunderx2t99'], flags_thunderx2_extra]]
|
||||
['0xaf', ['-mcpu=thunderx2t99'], flags_thunderx2_extra],
|
||||
['0xb2', ['-mcpu=octeontx2'], flags_octeontx2_extra]]
|
||||
|
||||
## Arm implementer ID (ARM DDI 0487C.a, Section G7.2.106, Page G7-5321)
|
||||
impl_generic = ['Generic armv8', flags_generic, machine_args_generic]
|
||||
|
|
1
config/defconfig_arm64-octeontx2-linux-gcc
Symbolic link
1
config/defconfig_arm64-octeontx2-linux-gcc
Symbolic link
|
@ -0,0 +1 @@
|
|||
defconfig_arm64-octeontx2-linuxapp-gcc
|
18
config/defconfig_arm64-octeontx2-linuxapp-gcc
Normal file
18
config/defconfig_arm64-octeontx2-linuxapp-gcc
Normal file
|
@ -0,0 +1,18 @@
|
|||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Marvell International Ltd
|
||||
#
|
||||
|
||||
#include "defconfig_arm64-armv8a-linux-gcc"
|
||||
|
||||
CONFIG_RTE_MACHINE="octeontx2"
|
||||
|
||||
CONFIG_RTE_CACHE_LINE_SIZE=128
|
||||
CONFIG_RTE_MAX_NUMA_NODES=1
|
||||
CONFIG_RTE_MAX_LCORE=24
|
||||
|
||||
# Doesn't support NUMA
|
||||
CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=n
|
||||
CONFIG_RTE_LIBRTE_VHOST_NUMA=n
|
||||
|
||||
# Recommend to use VFIO as co-processors needs SMMU/IOMMU
|
||||
CONFIG_RTE_EAL_IGB_UIO=n
|
34
mk/machine/octeontx2/rte.vars.mk
Normal file
34
mk/machine/octeontx2/rte.vars.mk
Normal file
|
@ -0,0 +1,34 @@
|
|||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
# Copyright(c) 2018 Marvell International Ltd
|
||||
#
|
||||
|
||||
#
|
||||
# machine:
|
||||
#
|
||||
# - can define ARCH variable (overridden by cmdline value)
|
||||
# - can define CROSS variable (overridden by cmdline value)
|
||||
# - define MACHINE_CFLAGS variable (overridden by cmdline value)
|
||||
# - define MACHINE_LDFLAGS variable (overridden by cmdline value)
|
||||
# - define MACHINE_ASFLAGS variable (overridden by cmdline value)
|
||||
# - can define CPU_CFLAGS variable (overridden by cmdline value) that
|
||||
# overrides the one defined in arch.
|
||||
# - can define CPU_LDFLAGS variable (overridden by cmdline value) that
|
||||
# overrides the one defined in arch.
|
||||
# - can define CPU_ASFLAGS variable (overridden by cmdline value) that
|
||||
# overrides the one defined in arch.
|
||||
# - may override any previously defined variable
|
||||
#
|
||||
|
||||
# ARCH =
|
||||
# CROSS =
|
||||
# MACHINE_CFLAGS =
|
||||
# MACHINE_LDFLAGS =
|
||||
# MACHINE_ASFLAGS =
|
||||
# CPU_CFLAGS =
|
||||
# CPU_LDFLAGS =
|
||||
# CPU_ASFLAGS =
|
||||
|
||||
include $(RTE_SDK)/mk/rte.helper.mk
|
||||
|
||||
MACHINE_CFLAGS += $(call rte_cc_has_argument, -march=-mcpu=armv8.2-a+crc+crypto+lse)
|
||||
MACHINE_CFLAGS += $(call rte_cc_has_argument, -mcpu=octeontx2)
|
Loading…
Reference in a new issue