> -----Original Message----- > From: dev <dev-boun...@dpdk.org> On Behalf Of Phil Yang > Sent: Monday, November 11, 2019 6:34 PM > To: dev@dpdk.org > Cc: tho...@monjalon.net; david.march...@redhat.com; > jer...@marvell.com; Honnappa Nagarahalli > <honnappa.nagaraha...@arm.com>; Gavin Hu (Arm Technology China) > <gavin...@arm.com>; Joyce Kong (Arm Technology China) > <joyce.k...@arm.com>; nd <n...@arm.com>; sta...@dpdk.org > Subject: [dpdk-dev] [PATCH 2/2] doc: add aarch32 build guidance > > Add a guidance for aarch64 natively build 32-bit aarch32 DPDK. > > Cc: sta...@dpdk.org > > Signed-off-by: Phil Yang <phil.y...@arm.com> > Reviewed-by: Gavin Hu <gavin...@arm.com> > Tested-by: Joyce Kong <joyce.k...@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
Acked-by: Ruifeng Wang <ruifeng.w...@arm.com>