From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1C198A04B6; Fri, 11 Sep 2020 15:24:38 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 23E541C195; Fri, 11 Sep 2020 15:20:23 +0200 (CEST) Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by dpdk.org (Postfix) with ESMTP id 6E1711C192 for ; Fri, 11 Sep 2020 15:20:21 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1599830420; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=y7HX2MaTjz5S5ywypWal01JyCFGnOBOdJ0+ohHcFDdw=; b=WrNELC6jCvmiCaeIzK71yHRUfrorIb/XjN9xbV8aEhHoINJdISjQDo35tk2oH9VyQH5MbJ 2B9sus7A/3TbyBFMrV+lMSb+GyeD59j2PMg0NsCYdrs2M/k8YKflP1um5migDMQfNXYBNT r08eKtCOxVYCKIZim7zJwtXrUplwetU= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-359-vKw0-HMuNJ2md90RVT7edA-1; Fri, 11 Sep 2020 09:20:19 -0400 X-MC-Unique: vKw0-HMuNJ2md90RVT7edA-1 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 7F1C610ABDA2; Fri, 11 Sep 2020 13:20:17 +0000 (UTC) Received: from dhcp-25.97.bos.redhat.com (ovpn-114-150.rdu2.redhat.com [10.10.114.150]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3A3D510013D9; Fri, 11 Sep 2020 13:20:13 +0000 (UTC) From: Aaron Conole To: Juraj =?utf-8?Q?Linke=C5=A1?= Cc: thomas@monjalon.net, david.marchand@redhat.com, maicolgabriel@hotmail.com, dev@dpdk.org, Phil Yang References: <1598360684-8975-1-git-send-email-juraj.linkes@pantheon.tech> <1598614733-16220-1-git-send-email-juraj.linkes@pantheon.tech> <1598614733-16220-6-git-send-email-juraj.linkes@pantheon.tech> Date: Fri, 11 Sep 2020 09:20:12 -0400 In-Reply-To: <1598614733-16220-6-git-send-email-juraj.linkes@pantheon.tech> ("Juraj \=\?utf-8\?Q\?Linke\=C5\=A1\=22's\?\= message of "Fri, 28 Aug 2020 13:38:53 +0200") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=aconole@redhat.com X-Mimecast-Spam-Score: 0.002 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [dpdk-dev] [PATCH v9 5/5] doc: add aarch32 build guidance X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Juraj Linke=C5=A1 writes: > From: Phil Yang > > Add cross-compiling guidance for 32-bit aarch32 DPDK on aarch64 host. > > Change-Id: Ib4281defa37ed4d08e1c3210c94fb7ce73b36449 > Signed-off-by: Phil Yang > --- I think Change-Id is not a tag that is used in DPDK. Otherwise, this looks good to me. Consider the series ACK with 'Change-Id' removed. > .../linux_gsg/cross_build_dpdk_for_arm64.rst | 34 +++++++++++++------ > 1 file changed, 24 insertions(+), 10 deletions(-) > > diff --git a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst b/doc/gu= ides/linux_gsg/cross_build_dpdk_for_arm64.rst > index c5875a6d5..fd0405d6d 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,16 @@ > .. SPDX-License-Identifier: BSD-3-Clause > Copyright(c) 2018 ARM Corporation. > =20 > -Cross compile DPDK for ARM64 > -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > -This chapter describes how to cross compile DPDK for ARM64 from x86 buil= d hosts. > +Cross compile DPDK for aarch64 and aarch32 > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > +This chapter describes how to cross compile DPDK for aarch64 from x86 bu= ild hosts and compile > +32-bit aarch32 DPDK from aarch64 build hosts. > =20 > .. note:: > =20 > - 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. > =20 > Obtain the cross tool chain > --------------------------- > @@ -88,18 +89,31 @@ To install it in Ubuntu:: > =20 > sudo apt-get install pkg-config-aarch64-linux-gnu > =20 > -To cross-compile DPDK on a desired target machine we can use the followi= ng > -command:: > +.. note:: > + > + Some aarch64 platforms support EL0 aarch32 mode, which means the 32-= bit aarch32 applications > + can run on aarch64. The armhf architecture toolchain ``gcc-arm-linux= -gnueabihf`` is required > + for aarch32 on aarch64. To install it in Ubuntu:: > + > + sudo dpkg --add-architecture armhf > + sudo apt-get update > + sudo apt-get install -y gcc-arm-linux-gnueabihf libc6:armhf binut= ils > + > +To cross-compile DPDK on a desired target machine use the following comm= and:: > =20 > =09meson cross-build --cross-file > =09ninja -C cross-build > =20 > -For example if the target machine is arm64 we can use the following > -command:: > +For example if the target machine is aarch64 use the following command:: > =20 > =09meson arm64-build --cross-file config/arm/arm64_armv8_linux_gcc > =09ninja -C arm64-build > =20 > +If the target machine is aarch32 use the following command:: > + > +=09meson arm32-build --cross-file config/arm/arm32_armv8a_linux_gcc > +=09ninja -C arm32-build > + > Configure and Cross Compile DPDK using Make > ------------------------------------------- > To configure a build, choose one of the target configurations, like arm6= 4-dpaa-linux-gcc and arm64-thunderx-linux-gcc.