From: Chengchang Tang tangchengchang@huawei.com
Because of the '9ca2f16' have merged, the current hns3 pmd driver can not be directly complied on the kunpeng920 server board. Therefore, we need to fix the meson build. Besides, add kunpeng 920 SoC meson cross compile target.
Fixes: 9ca2f16faa7f ("config/arm: isolate generic build")
Signed-off-by: Chengchang Tang tangchengchang@huawei.com Signed-off-by: Lijun Ou oulijun@huawei.com --- config/arm/arm64_kunpeng920_linux_gcc | 19 +++++++++++++++++++ config/arm/meson.build | 20 ++++++++++++++++++++ doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst | 4 ++++ 3 files changed, 43 insertions(+) create mode 100644 config/arm/arm64_kunpeng920_linux_gcc
diff --git a/config/arm/arm64_kunpeng920_linux_gcc b/config/arm/arm64_kunpeng920_linux_gcc new file mode 100644 index 0000000..3eeb2e9 --- /dev/null +++ b/config/arm/arm64_kunpeng920_linux_gcc @@ -0,0 +1,19 @@ +[binaries] +c = 'aarch64-linux-gnu-gcc' +cpp = 'aarch64-linux-gnu-cpp' +ar = 'aarch64-linux-gnu-gcc-ar' +strip = 'aarch64-linux-gnu-strip' +pkgconfig = 'aarch64-linux-gnu-pkg-config' +pcap-config = '' + +[host_machine] +system = 'linux' +cpu_family = 'aarch64' +cpu = 'armv8-a' +endian = 'little' + +[properties] +implementer_id = '0x48' +part_number = '0xd01' +max_lcores = 128 +max_numa_nodes = 4 diff --git a/config/arm/meson.build b/config/arm/meson.build index f948768..9b87f5a 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -133,6 +133,25 @@ implementer_cavium = { } }
+implementer_hisilicon = { + 'description': 'Hisilicon', + 'flags': [ + ['RTE_USE_C11_MEM_MODEL', true], + ['RTE_CACHE_LINE_SIZE', 128], + ['RTE_MAX_NUMA_NODES', 4] + ], + 'part_number_config': { + '0xd01': { + 'machine_args': ['-march=armv8.2-a+crypto', + '-mtune=tsv110'], + 'flag': [['RTE_MACHINE', '"kunpeng920"'], + ['RTE_MAX_LCORE', 128], + ['RTE_ARM_FEATURE_ATOMICS', true] + ] + } + } +} + implementer_ampere = { 'description': 'Ampere Computing', 'flags': [ @@ -176,6 +195,7 @@ implementers = { 'generic': implementer_generic, '0x41': implementer_arm, '0x43': implementer_cavium, + '0x48': implementer_hisilicon, '0x50': implementer_ampere, '0x56': implementer_marvell, 'dpaa': implementer_dpaa diff --git a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst index faaf24b..afe4f8e 100644 --- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst +++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst @@ -197,6 +197,7 @@ you may use various combinations of implementer/part number:: 'generic': Generic armv8 '0x41': Arm '0x43': Cavium + '0x48': Hisilicon '0x50': Ampere Computing '0x56': Marvell ARMADA 'dpaa': NXP DPAA @@ -219,6 +220,9 @@ you may use various combinations of implementer/part number:: '0xaf': thunderx2t99 '0xb2': octeontx2
+ Supported part_numbers for 0x48: + '0xd01': kunpeng920 + Supported part_numbers for 0x50: '0x0': emag