ARM64 Support Status

Upstream Tracking

PR #3270 — "Add the initial Arm64 support"

FieldValue
PRasterinas#3270
Author@wanywhn
Branchwanywhn/asterinas:arm64-support
StateOPEN, not merged
Mergeable❌ Dirty (conflicts with current main)
Size+4,475 / -49 lines, 80 files, 29 commits
Code originLLM-generated (author confirmed)
Author commitmentWill NOT maintain long-term
Upstream takeover@lrh2000 plans to integrate with his own arm port

What the PR Adds

OSTD (ostd/src/arch/aarch64/):

Kernel (kernel/src/arch/aarch64/):

OSDK:

kei's Strategy

kei merges this branch via git (not patches). This means:

  1. The full ostd/src/arch/aarch64/ tree exists in kei's repo
  2. We can modify any file directly
  3. Upstream sync is git merge, not quilt push
  4. When upstream eventually merges a different arm64 implementation, we rebase our BSP on top of the new arch code

Known Issues in the arm64-support Branch

IssueSeveritykei Action
All code LLM-generatedHighM2 audit: review every file, fix artifacts
Third-party GICv3 crateMediumReplace with in-tree driver
QEMU-only testingHighReal hardware boot on NanoPi R3S
No SMP/multi-coreMediumAdd PSCI secondary CPU bring-up
Stale (behind upstream main)LowRegular sync rebase
LLM-style verbose commentsLowClean up during audit

QEMU Test Matrix

QEMU MachineCPURAMBootNotes
virtcortex-a552GBPrimary test target
virtcortex-a722GB🔲Validate across ARM cores
virtmax4GB🔲Enable all ARM features
sbsa-refmax4GB🔲Server-style boot