[RFC PATCH v8 00/10] vmapple: making it work on the latest macOS host releases

Mohamed Mediouni posted 10 patches 1 week, 3 days ago
configs/devices/aarch64-softmmu/default.mak |   1 -
hw/display/apple-gfx-mmio.m                 |  58 ++-
hw/display/apple-gfx.h                      |  16 +
hw/display/apple-gfx.m                      |  90 +++-
hw/intc/arm_gicv2m.c                        |   5 +
hw/vmapple/aes.c                            |   3 +-
hw/vmapple/virtio-blk.c                     |  18 +
hw/vmapple/vmapple.c                        |  25 ++
target/arm/emulate/a64-ldst.decode          | 226 ++++++++++
target/arm/emulate/arm_emulate.c            | 451 ++++++++++++++++++++
target/arm/emulate/arm_emulate.h            |  30 ++
target/arm/emulate/meson.build              |   8 +
target/arm/hvf/hvf.c                        |  46 +-
target/arm/meson.build                      |   1 +
target/arm/whpx/whpx-all.c                  |  61 ++-
15 files changed, 1007 insertions(+), 32 deletions(-)
create mode 100644 target/arm/emulate/a64-ldst.decode
create mode 100644 target/arm/emulate/arm_emulate.c
create mode 100644 target/arm/emulate/arm_emulate.h
create mode 100644 target/arm/emulate/meson.build
[RFC PATCH v8 00/10] vmapple: making it work on the latest macOS host releases
Posted by Mohamed Mediouni 1 week, 3 days ago
v8:

Refreshed for new macOS 27.

Now a standalone series.

Added new patch for newer macOS guests - to allow FileVault off.

v7:

Support for newer guest OSes.

Added not mergable patch for private ISA enablement.

Not grabbing a memory reference and still using flatview_for_each_range
for this one, which works fine as live migration is disallowed anyway.

v6:
Rework the patches a bit, with making sure that there's no compiler warnings

v5:
Address review comments and rebase.

v4:
Rebase and resend without the RFC tag as I didn't get feedback.
Drop patch 1 (version I posted was incomplete anyways). Last patch isn't worth it too tbh.

v2->v3:
Remove the Apple M4 support workaround part for now, to be part of another patchset perhaps
Address comments

v1->v2:
Remove some lines that shouldn't have been present...

Lucas Amaral (4):
  target/arm/emulate: add ISV=0 emulation library with load/store
    immediate
  target/arm/emulate: add load/store register offset
  target/arm/emulate: add load/store pair
  target/arm/hvf, whpx: wire ISV=0 emulation for data aborts

Mohamed Mediouni (6):
  vmapple: apple-gfx: make it work on the latest macOS release
  hw/vmapple: aes: convert MAX_LEN to a #define
  Revert "hw/arm: Do not build VMapple machine by default"
  vmapple: add gicv2m
  vmapple, gicv2m: add macOS compat quirk
  hw/vmapple: virtio-blk: allow FileVault off

 configs/devices/aarch64-softmmu/default.mak |   1 -
 hw/display/apple-gfx-mmio.m                 |  58 ++-
 hw/display/apple-gfx.h                      |  16 +
 hw/display/apple-gfx.m                      |  90 +++-
 hw/intc/arm_gicv2m.c                        |   5 +
 hw/vmapple/aes.c                            |   3 +-
 hw/vmapple/virtio-blk.c                     |  18 +
 hw/vmapple/vmapple.c                        |  25 ++
 target/arm/emulate/a64-ldst.decode          | 226 ++++++++++
 target/arm/emulate/arm_emulate.c            | 451 ++++++++++++++++++++
 target/arm/emulate/arm_emulate.h            |  30 ++
 target/arm/emulate/meson.build              |   8 +
 target/arm/hvf/hvf.c                        |  46 +-
 target/arm/meson.build                      |   1 +
 target/arm/whpx/whpx-all.c                  |  61 ++-
 15 files changed, 1007 insertions(+), 32 deletions(-)
 create mode 100644 target/arm/emulate/a64-ldst.decode
 create mode 100644 target/arm/emulate/arm_emulate.c
 create mode 100644 target/arm/emulate/arm_emulate.h
 create mode 100644 target/arm/emulate/meson.build

-- 
2.54.0 (Apple Git-157)