[dpdk-dev] [PATCH 2/2] doc: add aarch32 build guidance
Phil Yang
phil.yang at arm.com
Mon Nov 11 11:34:21 CET 2019
Add a guidance for aarch64 natively build 32-bit aarch32 DPDK.
Cc: stable at dpdk.org
Signed-off-by: Phil Yang <phil.yang at arm.com>
Reviewed-by: Gavin Hu <gavin.hu at arm.com>
Tested-by: Joyce Kong <joyce.kong at arm.com>
---
.../linux_gsg/cross_build_dpdk_for_arm64.rst | 36 ++++++++++++++++++----
1 file changed, 30 insertions(+), 6 deletions(-)
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 e799b0b..409d444 100644
--- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
+++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
@@ -1,15 +1,15 @@
.. SPDX-License-Identifier: BSD-3-Clause
Copyright(c) 2018 ARM Corporation.
-Cross compile DPDK for ARM64
-============================
-This chapter describes how to cross compile DPDK for ARM64 from x86 build hosts.
+Cross compile DPDK for aarch64 and aarch32
+==========================================
+This chapter describes how to cross-compile DPDK for aarch64 from x86 and compile 32-bit aarch32 DPDK from aarch64 build hosts.
.. note::
- Whilst it is recommended to natively build DPDK on ARM64 (just
- like with x86), it is also possible to cross-build DPDK for ARM64. An
- ARM64 cross compile GNU toolchain is used for this.
+ Whilst it is recommended to natively build DPDK on aarch64 (just
+ like with x86), it is also possible to cross-build DPDK for aarch64. An
+ aarch64 cross compile GNU toolchain is used for this.
Obtain the cross tool chain
---------------------------
@@ -133,3 +133,27 @@ command::
meson arm64-build --cross-file config/arm/arm64_armv8_linux_gcc
ninja -C arm64-build
+
+Compiling DPDK for aarch32/armv7 on aarch64 host
+------------------------------------------
+
+Some aarch64 platforms support EL0 aarch32 mode, so the 32-bit aarch32
+applications and the legacy 32-bit armv7 applications can run in this mode.
+With the GNU C compiler for the armhf architecture toolchain
+gcc-arm-linux-gnueabihf, it can generate aarch32 binary on aarch64 natively.
+
+For Example, in 64-bit Debian, we can use the following command to build 32-bit armv7 DPDK on aarch64 natively:
+
+Install cross compile toolchain for the armhf architecure.
+command::
+
+ dpkg --add-architecture armhf
+ apt-get update
+ apt-get install -y gcc gcc-arm-linux-gnueabihf libc6:armhf make binutils
+
+Build DPDK arm-armv7a-linuxapp-gcc executables.
+command::
+
+ cd <dpdk_folder>
+ make config CROSS=arm-linux-gnueabihf- T=arm-armv7a-linuxapp-gcc
+ make -j CROSS=arm-linux-gnueabihf- T=arm-armv7a-linuxapp-gcc RTE_DEVEL_BUILD=n
--
2.7.4
More information about the dev
mailing list