[v10,0/5] aarch64 -> aarch32 cross compilation support
mbox series

Message ID 1600244472-29696-1-git-send-email-juraj.linkes@pantheon.tech
Headers show
Series
  • aarch64 -> aarch32 cross compilation support
Related show

Message

Juraj Linkeš Sept. 16, 2020, 8:21 a.m. UTC
Add support for aarch32 cross build in meson
and add aarch64 -> aarch32 cross build to Travis.

Aarch32 is an execution state that allows execution of 32-bit code on
armv8 machines. This execution state contains a superset of previous
armv7 32-bit instructions and features. Thus the aarch32 build is
distinct from arvm7 build.

v4:
Removed disabled drivers which actually build on arm32.
Also tested the patchset with series 9609 which fixes underlying
failures.

v5:
Changed the condition for running test-null.sh in ci.
Re-uploaded after underlying fixes have been committed.

v6:
Changed the condition for running test-null.sh again.
Reworked the patch to do aarch32 build instead of arvm7-a build.
Simplified meson build flags. Changed commit msgs.
Added 32b qualifier to .travis.yml.
Added a patch with fixes for bnxt.
Added a patch with cross compilation docs.

v7:
Rebased the patchset.

v8:
Removed Makefile additions from net/bnxt patch.

v9:
Changed ci test-null.sh condition, only run it if not
cross-compiling aarch64 nor aarch32.
Cleaned up docs.

v10:
Fixed doc: add aarch32 build guidance commit message.

Juraj Linkeš (3):
  build: add aarch32 meson build flags
  build: add aarch32 to meson cross-compilation
  ci: add aarch64 -> aarch32 cross compiling jobs

Phil Yang (1):
  doc: add aarch32 build guidance

Ruifeng Wang (1):
  net/bnxt: add support for aarch32

 .ci/linux-build.sh                            |  7 +++-
 .travis.yml                                   | 19 +++++++++++
 config/arm/arm32_armv8a_linux_gcc             | 17 ++++++++++
 config/arm/meson.build                        | 20 +++++++++--
 .../linux_gsg/cross_build_dpdk_for_arm64.rst  | 34 +++++++++++++------
 drivers/net/bnxt/bnxt_rxq.h                   |  2 +-
 drivers/net/bnxt/bnxt_rxr.h                   |  2 +-
 drivers/net/bnxt/bnxt_txr.h                   |  2 +-
 8 files changed, 87 insertions(+), 16 deletions(-)
 create mode 100644 config/arm/arm32_armv8a_linux_gcc

Comments

Juraj Linkeš Oct. 21, 2020, 11:42 a.m. UTC | #1
Hi Folks,

This patch series has been submitted more than a month ago. There have been no comments. Should I just wait a bit more or what should I do?

Thanks,
Juraj

> -----Original Message-----
> From: Juraj Linkeš <juraj.linkes@pantheon.tech>
> Sent: Wednesday, September 16, 2020 10:21 AM
> To: thomas@monjalon.net; bruce.richardson@intel.com; aconole@redhat.com;
> maicolgabriel@hotmail.com
> Cc: Juraj Linkeš <juraj.linkes@pantheon.tech>; dev@dpdk.org
> Subject: [PATCH v10 0/5] aarch64 -> aarch32 cross compilation support
> 
> Add support for aarch32 cross build in meson and add aarch64 -> aarch32 cross
> build to Travis.
> 
> Aarch32 is an execution state that allows execution of 32-bit code on
> armv8 machines. This execution state contains a superset of previous
> armv7 32-bit instructions and features. Thus the aarch32 build is distinct from
> arvm7 build.
> 
> v4:
> Removed disabled drivers which actually build on arm32.
> Also tested the patchset with series 9609 which fixes underlying failures.
> 
> v5:
> Changed the condition for running test-null.sh in ci.
> Re-uploaded after underlying fixes have been committed.
> 
> v6:
> Changed the condition for running test-null.sh again.
> Reworked the patch to do aarch32 build instead of arvm7-a build.
> Simplified meson build flags. Changed commit msgs.
> Added 32b qualifier to .travis.yml.
> Added a patch with fixes for bnxt.
> Added a patch with cross compilation docs.
> 
> v7:
> Rebased the patchset.
> 
> v8:
> Removed Makefile additions from net/bnxt patch.
> 
> v9:
> Changed ci test-null.sh condition, only run it if not cross-compiling aarch64 nor
> aarch32.
> Cleaned up docs.
> 
> v10:
> Fixed doc: add aarch32 build guidance commit message.
> 
> Juraj Linkeš (3):
>   build: add aarch32 meson build flags
>   build: add aarch32 to meson cross-compilation
>   ci: add aarch64 -> aarch32 cross compiling jobs
> 
> Phil Yang (1):
>   doc: add aarch32 build guidance
> 
> Ruifeng Wang (1):
>   net/bnxt: add support for aarch32
> 
>  .ci/linux-build.sh                            |  7 +++-
>  .travis.yml                                   | 19 +++++++++++
>  config/arm/arm32_armv8a_linux_gcc             | 17 ++++++++++
>  config/arm/meson.build                        | 20 +++++++++--
>  .../linux_gsg/cross_build_dpdk_for_arm64.rst  | 34 +++++++++++++------
>  drivers/net/bnxt/bnxt_rxq.h                   |  2 +-
>  drivers/net/bnxt/bnxt_rxr.h                   |  2 +-
>  drivers/net/bnxt/bnxt_txr.h                   |  2 +-
>  8 files changed, 87 insertions(+), 16 deletions(-)  create mode 100644
> config/arm/arm32_armv8a_linux_gcc
> 
> --
> 2.20.1
Thomas Monjalon Oct. 21, 2020, 11:52 a.m. UTC | #2
21/10/2020 13:42, Juraj Linkeš:
> Hi Folks,
> 
> This patch series has been submitted more than a month ago.
> There have been no comments.
> Should I just wait a bit more or what should I do?

First thing to do is to get acks from Arm maintainers.
There are other patchset in the same area that I'm not sure they are ready.
It seems Arm team is a bit behind recently.
Jerin Jacob Oct. 28, 2020, 9:22 a.m. UTC | #3
On Wed, Sep 16, 2020 at 1:51 PM Juraj Linkeš <juraj.linkes@pantheon.tech> wrote:
>
> Add support for aarch32 cross build in meson
> and add aarch64 -> aarch32 cross build to Travis.
>
> Aarch32 is an execution state that allows execution of 32-bit code on
> armv8 machines. This execution state contains a superset of previous
> armv7 32-bit instructions and features. Thus the aarch32 build is
> distinct from arvm7 build.
>
> v4:
> Removed disabled drivers which actually build on arm32.
> Also tested the patchset with series 9609 which fixes underlying
> failures.
>
> v5:
> Changed the condition for running test-null.sh in ci.
> Re-uploaded after underlying fixes have been committed.
>
> v6:
> Changed the condition for running test-null.sh again.
> Reworked the patch to do aarch32 build instead of arvm7-a build.
> Simplified meson build flags. Changed commit msgs.
> Added 32b qualifier to .travis.yml.
> Added a patch with fixes for bnxt.
> Added a patch with cross compilation docs.
>
> v7:
> Rebased the patchset.
>
> v8:
> Removed Makefile additions from net/bnxt patch.
>
> v9:
> Changed ci test-null.sh condition, only run it if not
> cross-compiling aarch64 nor aarch32.
> Cleaned up docs.
>
> v10:
> Fixed doc: add aarch32 build guidance commit message.

LGTM,

Series Acked-by: Jerin Jacob <jerinj@marvell.com>



>
> Juraj Linkeš (3):
>   build: add aarch32 meson build flags
>   build: add aarch32 to meson cross-compilation
>   ci: add aarch64 -> aarch32 cross compiling jobs
>
> Phil Yang (1):
>   doc: add aarch32 build guidance
>
> Ruifeng Wang (1):
>   net/bnxt: add support for aarch32
>
>  .ci/linux-build.sh                            |  7 +++-
>  .travis.yml                                   | 19 +++++++++++
>  config/arm/arm32_armv8a_linux_gcc             | 17 ++++++++++
>  config/arm/meson.build                        | 20 +++++++++--
>  .../linux_gsg/cross_build_dpdk_for_arm64.rst  | 34 +++++++++++++------
>  drivers/net/bnxt/bnxt_rxq.h                   |  2 +-
>  drivers/net/bnxt/bnxt_rxr.h                   |  2 +-
>  drivers/net/bnxt/bnxt_txr.h                   |  2 +-
>  8 files changed, 87 insertions(+), 16 deletions(-)
>  create mode 100644 config/arm/arm32_armv8a_linux_gcc
>
> --
> 2.20.1
>
Aaron Conole Nov. 30, 2020, 2:03 p.m. UTC | #4
Juraj Linkeš <juraj.linkes@pantheon.tech> writes:

> Add support for aarch32 cross build in meson
> and add aarch64 -> aarch32 cross build to Travis.
>
> Aarch32 is an execution state that allows execution of 32-bit code on
> armv8 machines. This execution state contains a superset of previous
> armv7 32-bit instructions and features. Thus the aarch32 build is
> distinct from arvm7 build.
>
> v4:
> Removed disabled drivers which actually build on arm32.
> Also tested the patchset with series 9609 which fixes underlying
> failures.
>
> v5:
> Changed the condition for running test-null.sh in ci.
> Re-uploaded after underlying fixes have been committed.
>
> v6:
> Changed the condition for running test-null.sh again.
> Reworked the patch to do aarch32 build instead of arvm7-a build.
> Simplified meson build flags. Changed commit msgs.
> Added 32b qualifier to .travis.yml.
> Added a patch with fixes for bnxt.
> Added a patch with cross compilation docs.
>
> v7:
> Rebased the patchset.
>
> v8:
> Removed Makefile additions from net/bnxt patch.
>
> v9:
> Changed ci test-null.sh condition, only run it if not
> cross-compiling aarch64 nor aarch32.
> Cleaned up docs.
>
> v10:
> Fixed doc: add aarch32 build guidance commit message.
>

Acked-by: Aaron Conole <aconole@redhat.com>

I previously thought I sent an ACK for this series.