Commit Graph

15 Commits

Author SHA1 Message Date
mintsuki 7305724b95 misc: Misc EFI linker script improvements and drop .sbat 2023-09-11 17:13:31 -05:00
mintsuki 08b349e513 misc: Backport multiple framebuffer support from trunk 2023-02-16 04:13:22 +01:00
mintsuki ff145eb511 term: Misc improvements for SERIAL=yes on EFI 2022-10-06 06:38:35 +02:00
mintsuki a76691a930 misc: Add limine subdir to stage3 and config search paths. Closes #225 2022-10-06 06:34:42 +02:00
czapek1337 6202148460 efi: Fallback to volume scan instead of panicking 2022-10-06 06:34:42 +02:00
mintsuki ff33b6fbb6 efi: Limit amount of tries to get boot volume from handle 2022-09-18 22:34:53 +02:00
mintsuki 3181293a04 misc: Improve printing effectively on panics and errors 2022-09-18 22:34:53 +02:00
mintsuki c44f514738 misc: Rename UEFI and BIOS define macros 2022-09-02 02:29:12 +02:00
mintsuki 27711e3c27 fs: Add case insensitive fopen() for config and system files 2022-09-02 01:12:13 +02:00
mintsuki 07080dcbc2 misc: blib.h -> misc.h 2022-08-26 23:44:47 +02:00
mintsuki 94eb0e2ae2 entry/uefi: Only perform 4GiB check if on x86_64 2022-08-25 21:53:48 +02:00
mintsuki ed0c32f20a entry/uefi: Abort if loaded above 4GiB. Fix #206 2022-08-25 21:50:37 +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
mintsuki 997c787c16 term/limine: Allow overriding terminal config in entry 2022-08-14 15:09:57 +02:00
mintsuki 400202d926 misc: stage23 -> common 2022-02-03 10:38:43 +01:00