Commit Graph

10 Commits

Author SHA1 Message Date
Mintsuki
165e05ff3d protos/limine: Make aarch64 EL2 entry automatic based on firmware state 2026-03-20 14:01:31 +01:00
Mintsuki
adb94d6853 misc: Do not enable E2H at entry on aarch64 2026-03-16 04:01:50 +01:00
Mintsuki
5c0635a118 protos/limine: Tighten aarch64 machine state to match spec 2026-03-16 04:01:50 +01:00
Mintsuki
102449250d protos/limine: Implement aarch64 EL2 entry request 2026-03-15 09:58:07 +01:00
pitust
43470ac090 spinup/aarch64: use *_EL12 when HCR_EL2.E2H=1 while dropping to EL1 2024-01-14 19:20:45 +01:00
mintsuki
2c8c0c3deb Revert "misc: Converge with 5.x"
This reverts commit f9682543fd.
2023-11-03 06:24:58 +01:00
mintsuki
a83dafe6f4 misc: Add section .note.GNU-stack to assembly files 2023-09-28 06:56:28 -05:00
mintsuki
c5c43cb0fd misc: aarch64: Remove unused enter_in_current_el() function 2023-09-16 14:28:33 -05:00
mintsuki
2ac43a320f asm: Add missing section directives 2023-06-20 13:24:49 +02:00
Kacper Słomiński
e1f6ac8860 Initial AArch64 port (#205)
* Initial aarch64 port

* Enable chainload on aarch64

No changes necessary since it's all UEFI anyway.

* Add specification for Limine protocol for aarch64

* PROTOCOL: Specify state of information in DT /chosen node

* common: Add spinup code for aarch64

* common: Port elf and term to aarch64

* common: Port vmm to aarch64

Also prepare to drop VMM_FLAG_PRESENT on x86.

* protos: Port limine boot protocol to aarch64

Also drop VMM_FLAG_PRESENT since we never unmap pages anyway.

* test: Add DTB request

* PROTOCOL: Port SMP request to aarch64

* cpu: Add cache maintenance functions for aarch64

* protos/limine, sys: Port SMP to aarch64

Also move common asm macros into a header file.

* test: Start up APs

* vmm: Unify get_next_level and implement large page splitting

* protos/limine: Map framebuffer using correct caching mode on AArch64

* CI: Fix GCC build for aarch64

* entry, menu: Replace uses of naked attribute with separate asm file

GCC does not understand the naked attribute on aarch64, and didn't
understand it for x86 in older versions.
2022-08-18 17:32:54 +02:00