'flags': [
['RTE_MACHINE', '"armv8a"'],
['RTE_USE_C11_MEM_MODEL', true],
- ['RTE_MAX_LCORE', 256]
+ ['RTE_MAX_LCORE', 256],
+ ['RTE_MAX_NUMA_NODES', 4]
],
'part_number_config': {
'generic': {'machine_args': ['-march=armv8-a+crc',
['RTE_EAL_NUMA_AWARE_HUGEPAGES', false],
['RTE_LIBRTE_VHOST_NUMA', false],
['RTE_MAX_MEM_MB', 1048576],
- ['RTE_MAX_LCORE', 80],
- ['RTE_MAX_NUMA_NODES', 1]
+ ['RTE_MAX_LCORE', 80]
]
},
'0xd49': {
['RTE_MACHINE', '"armv8a"'],
['RTE_USE_C11_MEM_MODEL', true],
['RTE_CACHE_LINE_SIZE', 64],
- ['RTE_MAX_LCORE', 16]
+ ['RTE_MAX_LCORE', 16],
+ ['RTE_MAX_NUMA_NODES', 1]
],
'part_number_config': part_number_config_arm
}
['RTE_ARM_FEATURE_ATOMICS', true],
['RTE_USE_C11_MEM_MODEL', true],
['RTE_CACHE_LINE_SIZE', 64],
- ['RTE_MAX_LCORE', 256],
- ['RTE_MAX_NUMA_NODES', 2]
+ ['RTE_MAX_LCORE', 256]
]
},
'0xb2': {
subdir(arch_subdir)
dpdk_conf.set('RTE_COMPILE_TIME_CPUFLAGS', ','.join(compile_time_cpuflags))
+# apply cross-specific options
+if meson.is_cross_build()
+ # configure RTE_MAX_LCORE and RTE_MAX_NUMA_NODES from cross file
+ cross_max_lcores = meson.get_cross_property('max_lcores', 0)
+ if cross_max_lcores != 0
+ message('Setting RTE_MAX_LCORE from cross file')
+ dpdk_conf.set('RTE_MAX_LCORE', cross_max_lcores)
+ endif
+ cross_max_numa_nodes = meson.get_cross_property('max_numa_nodes', 0)
+ if cross_max_numa_nodes != 0
+ message('Setting RTE_MAX_NUMA_NODES from cross file')
+ dpdk_conf.set('RTE_MAX_NUMA_NODES', cross_max_numa_nodes)
+ endif
+endif
+
# set the install path for the drivers
dpdk_conf.set_quoted('RTE_EAL_PMD_PATH', eal_pmd_path)
Supported part_numbers for 0x50:
'0x0': emag
+
+Other cross file options
+------------------------
+
+There are other options you may specify in a cross file to tailor the build::
+
+ Supported extra configuration
+ max_numa_nodes = n # will set RTE_MAX_NUMA_NODES
+ max_lcores = n # will set RTE_MAX_LCORE