[edk2-devel] [RFC PATCH 0/4] EmulatorPkg AArch64 Linux support

Akira Moroo posted 4 patches 2 years, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/edk2 tags/patchew/cover.1633789833.git.retrage01@gmail.com
EmulatorPkg/EmulatorPkg.dsc                  | 15 +++-
EmulatorPkg/Readme.md                        |  8 ++
EmulatorPkg/Sec/AArch64/SwitchRam.S          | 22 +++++
EmulatorPkg/Sec/AArch64/TempRam.c            | 58 ++++++++++++
EmulatorPkg/Sec/Sec.inf                      |  4 +
EmulatorPkg/Unix/Host/AArch64/Gasket.c       | 50 +++++++++++
EmulatorPkg/Unix/Host/AArch64/SwitchStack.S  | 42 +++++++++
EmulatorPkg/Unix/Host/BerkeleyPacketFilter.c | 37 ++++++++
EmulatorPkg/Unix/Host/BlockIo.c              | 26 ++++++
EmulatorPkg/Unix/Host/EmuThunk.c             | 29 ++++++
EmulatorPkg/Unix/Host/Host.c                 | 32 +++++++
EmulatorPkg/Unix/Host/Host.h                 |  4 +-
EmulatorPkg/Unix/Host/Host.inf               | 10 ++-
EmulatorPkg/Unix/Host/LinuxPacketFilter.c    | 38 ++++++++
EmulatorPkg/Unix/Host/PosixFileSystem.c      | 94 +++++++++++++++++++-
EmulatorPkg/Unix/Host/Pthreads.c             | 30 ++++++-
EmulatorPkg/Unix/Host/X11GraphicsWindow.c    | 26 +++++-
EmulatorPkg/build.sh                         |  8 ++
18 files changed, 524 insertions(+), 9 deletions(-)
create mode 100644 EmulatorPkg/Sec/AArch64/SwitchRam.S
create mode 100644 EmulatorPkg/Sec/AArch64/TempRam.c
create mode 100644 EmulatorPkg/Unix/Host/AArch64/Gasket.c
create mode 100644 EmulatorPkg/Unix/Host/AArch64/SwitchStack.S
[edk2-devel] [RFC PATCH 0/4] EmulatorPkg AArch64 Linux support
Posted by Akira Moroo 2 years, 6 months ago
This series of patches proposes adding AArch64 Linux host support for
EmulatorPkg. The main difference from IA32/X64 is that it does not
need to convert calling conventions between EFI environment and the
host. It is enough just directly registering the host side functions to
the EmulatorPkg provided UEFI protocols. I tested this feature on the
latest Ubuntu 20.04 with both CLANG38 and GCC5 toolchains.

The patch 1/4 is a trivial typo fix that are required for the 3/4 patch.
The 2/4 adds AArch64 specific stack switch code for EmulatorPkg/Sec. The
3/4 changes EmulatorPkg/Unix/Host to support AArch64. The 4/4 introduces
EmulatorPkg AArch64 Linux host build support.

Akira Moroo (4):
  EmulatorPkg/Unix/Host: Fix typo
  EmulatorPkg/Sec: Add AArch64 support
  EmulatorPkg/Unix/Host: Add AArch64 support
  EmulatorPkg: Add AArch64 Unix host build support

 EmulatorPkg/EmulatorPkg.dsc                  | 15 +++-
 EmulatorPkg/Readme.md                        |  8 ++
 EmulatorPkg/Sec/AArch64/SwitchRam.S          | 22 +++++
 EmulatorPkg/Sec/AArch64/TempRam.c            | 58 ++++++++++++
 EmulatorPkg/Sec/Sec.inf                      |  4 +
 EmulatorPkg/Unix/Host/AArch64/Gasket.c       | 50 +++++++++++
 EmulatorPkg/Unix/Host/AArch64/SwitchStack.S  | 42 +++++++++
 EmulatorPkg/Unix/Host/BerkeleyPacketFilter.c | 37 ++++++++
 EmulatorPkg/Unix/Host/BlockIo.c              | 26 ++++++
 EmulatorPkg/Unix/Host/EmuThunk.c             | 29 ++++++
 EmulatorPkg/Unix/Host/Host.c                 | 32 +++++++
 EmulatorPkg/Unix/Host/Host.h                 |  4 +-
 EmulatorPkg/Unix/Host/Host.inf               | 10 ++-
 EmulatorPkg/Unix/Host/LinuxPacketFilter.c    | 38 ++++++++
 EmulatorPkg/Unix/Host/PosixFileSystem.c      | 94 +++++++++++++++++++-
 EmulatorPkg/Unix/Host/Pthreads.c             | 30 ++++++-
 EmulatorPkg/Unix/Host/X11GraphicsWindow.c    | 26 +++++-
 EmulatorPkg/build.sh                         |  8 ++
 18 files changed, 524 insertions(+), 9 deletions(-)
 create mode 100644 EmulatorPkg/Sec/AArch64/SwitchRam.S
 create mode 100644 EmulatorPkg/Sec/AArch64/TempRam.c
 create mode 100644 EmulatorPkg/Unix/Host/AArch64/Gasket.c
 create mode 100644 EmulatorPkg/Unix/Host/AArch64/SwitchStack.S

-- 
2.33.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#81719): https://edk2.groups.io/g/devel/message/81719
Mute This Topic: https://groups.io/mt/86198792/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-