@@ -15,3 +15,5 @@ endian = 'little'
[properties]
implementer_id = '0x56'
+max_numa_nodes = 1
+max_lcores = 16
@@ -26,3 +26,9 @@ implementer_id = 'generic'
# '0xd0a': cortex-a75
# '0xd0b': cortex-a76
part_number = 'generic'
+
+# Supported extra configuration
+# max_numa_nodes = n # will set RTE_MAX_NUMA_NODES
+# max_lcores = n # will set RTE_MAX_LCORE
+max_lcores = 256
+max_numa_nodes = 4
@@ -15,3 +15,5 @@ endian = 'little'
[properties]
implementer_id = '0x41'
part_number = '0xd08'
+max_numa_nodes = 1
+max_lcores = 16
@@ -15,3 +15,5 @@ endian = 'little'
[properties]
implementer_id = 'dpaa'
+max_numa_nodes = 1
+max_lcores = 16
@@ -14,3 +14,5 @@ endian = 'little'
[properties]
implementer_id = '0x50'
+max_numa_nodes = 1
+max_lcores = 32
@@ -15,3 +15,5 @@ endian = 'little'
[properties]
implementer_id = '0x41'
part_number = '0xd0c'
+max_numa_nodes = 1
+max_lcores = 4
@@ -15,3 +15,5 @@ endian = 'little'
[properties]
implementer_id = '0x43'
part_number = '0xb2'
+max_numa_nodes = 1
+max_lcores = 36
@@ -15,3 +15,5 @@ endian = 'little'
[properties]
implementer_id = '0x41'
part_number = '0xd08'
+max_numa_nodes = 1
+max_lcores = 16
@@ -15,3 +15,5 @@ endian = 'little'
[properties]
implementer_id = '0x43'
part_number = '0xaf'
+max_numa_nodes = 2
+max_lcores = 256
@@ -14,3 +14,5 @@ endian = 'little'
[properties]
implementer_id = '0x43'
+max_numa_nodes = 1
+max_lcores = 96
@@ -38,13 +38,15 @@ flags_generic = [
['RTE_MACHINE', '"armv8a"'],
['RTE_USE_C11_MEM_MODEL', true],
['RTE_CACHE_LINE_SIZE', 128],
- ['RTE_MAX_LCORE', 256]
+ ['RTE_MAX_LCORE', 256],
+ ['RTE_MAX_NUMA_NODES', 4]
]
flags_arm = [
['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]
]
flags_cavium = [
['RTE_MAX_VFIO_GROUPS', 128],
@@ -217,6 +219,24 @@ else
dpdk_flags += part_number_config[1]
endif
+ # apply cross-specific options
+ if meson.is_cross_build()
+ # configure RTE_MAX_NUMA_NODES and RTE_MAX_LCORE from cross file
+ cross_max_numa_nodes = meson.get_cross_property('max_numa_nodes', 0)
+ if cross_max_numa_nodes != 0
+ dpdk_flags += [
+ ['RTE_MAX_NUMA_NODES', cross_max_numa_nodes]
+ ]
+ endif
+ cross_max_lcores = meson.get_cross_property('max_lcores', 0)
+ if cross_max_lcores != 0
+ message('Setting RTE_MAX_LCORE from cross file')
+ dpdk_flags += [
+ ['RTE_MAX_LCORE', cross_max_lcores]
+ ]
+ endif
+ endif
+
# apply supported machine args
machine_args = [] # Clear previous machine args
foreach flag: part_number_config[0]