[2/2] config/arm: fix Hisilicon kunpeng930 Soc build

Message ID 1612356396-21309-3-git-send-email-oulijun@huawei.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series meson build fixes for hns3 |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-broadcom-Functional success Functional Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/intel-Testing success Testing PASS
ci/iol-abi-testing success Testing PASS
ci/iol-testing warning Testing issues

Commit Message

Lijun Ou Feb. 3, 2021, 12:46 p.m. UTC
  From: Chengchang Tang <tangchengchang@huawei.com>

Because of the '9ca2f16' have merged, the current hns3
pmd driver can not be directly complied on the kunpeng930
FPGA board. Therefore, we need to fix the meson build.
Besides, add kunpeng 930 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_kunpeng930_linux_gcc               | 19 +++++++++++++++++++
 config/arm/meson.build                              |  7 +++++++
 doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst |  1 +
 3 files changed, 27 insertions(+)
 create mode 100644 config/arm/arm64_kunpeng930_linux_gcc
  

Patch

diff --git a/config/arm/arm64_kunpeng930_linux_gcc b/config/arm/arm64_kunpeng930_linux_gcc
new file mode 100644
index 0000000..464e44a
--- /dev/null
+++ b/config/arm/arm64_kunpeng930_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 = '0xd02'
+max_lcores = 256
+max_numa_nodes = 4
diff --git a/config/arm/meson.build b/config/arm/meson.build
index 9b87f5a..f834adb 100644
--- a/config/arm/meson.build
+++ b/config/arm/meson.build
@@ -148,6 +148,13 @@  implementer_hisilicon = {
 				 ['RTE_MAX_LCORE', 128],
 				 ['RTE_ARM_FEATURE_ATOMICS', true]
 			]
+		},
+		'0xd02': {
+			'machine_args': ['-march=armv8.2-a+crypto+sve'],
+			'flag': [['RTE_MACHINE', '"kunpeng930"'],
+				 ['RTE_MAX_LCORE', 256],
+				 ['RTE_ARM_FEATURE_ATOMICS', true]
+			]
 		}
 	}
 }
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 afe4f8e..1a54436 100644
--- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
+++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
@@ -222,6 +222,7 @@  you may use various combinations of implementer/part number::
 
    Supported part_numbers for 0x48:
       '0xd01':    kunpeng920
+      '0xd02':    kunpeng930
 
    Supported part_numbers for 0x50:
       '0x0':     emag