qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v3 0/7] Add aarch64_be-linux-user target


From: Michael Weiser
Subject: [Qemu-devel] [PATCH v3 0/7] Add aarch64_be-linux-user target
Date: Wed, 20 Dec 2017 22:23:01 +0100

Hello,

below patches add support for big-endian aarch64 to linux-user. Almost
everything is already in place. The patches just set up the CPU flags as
required for big-endianness, add a distinction in uname and make sure the
instructions for the signal trampoline end up in memory little-endian.
Finally, configure is extended to allow building of a
aarch64_be-linux-user target and scripts/qemu-binfmt-conf.sh to include
the binfmt magic for aarch64_be ELF files.

While at it, scripts/qemu-binfmt-conf.sh is changed again to separate
arm/aarch64 targets of differing endianness into separate families so
that the binfmt handler for the respective other endianness is indeed
registered.  Also, while not strictly relevant to aarch64 support, armeb
is actually added to the list of targets, binfmt handlers should
registered for.

With this I am able to run individual aarch64_be binaries as well as
chroot into a full-blown aarch64_be userland using binfmt_misc, running
and compiling things (Gentoo crossdev/native).

v3:
- drop changes to aarch64 host support from configure
- add binfmt arm CPU family separation
- add armeb to binfmt handler targets

v2:
- add binfmt magic to qemu-binfmt-conf.sh
- fix style problems (tab indenting)

Thanks,
Michael


Michael Weiser (7):
  linux-user: Add support for big-endian aarch64
  linux-user: Add separate aarch64_be uname
  linux-user: Fix endianess of aarch64 signal trampoline
  configure: Add aarch64_be-linux-user target
  linux-user: Add aarch64_be magic numbers to qemu-binfmt-conf.sh
  linux-user: Separate binfmt arm CPU families
  linux-user: Activate armeb handler registration

 configure                                 |  5 +++--
 default-configs/aarch64_be-linux-user.mak |  1 +
 linux-user/aarch64/target_syscall.h       |  4 ++++
 linux-user/main.c                         |  6 ++++++
 linux-user/signal.c                       | 10 +++++++---
 scripts/qemu-binfmt-conf.sh               | 15 +++++++++++----
 6 files changed, 32 insertions(+), 9 deletions(-)
 create mode 100644 default-configs/aarch64_be-linux-user.mak

-- 
2.15.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]