Commit Graph

18 Commits

Author SHA1 Message Date
xvanc f33732a2e5 riscv: implement feature dectection 2023-09-16 11:21:17 -05:00
mintsuki 0ebf0245df misc: Misc EFI linker script improvements and drop .sbat 2023-09-11 17:16:19 -05:00
mintsuki 48053fd206 misc: Fix bug on trunk where returns to menu from panic would crash 2023-02-16 03:54:10 +01:00
mintsuki d39baeaa80 video: Initial support for multiple framebuffers 2022-11-18 23:59:31 +01:00
mintsuki 3d95c8960c misc: Add limine subdir to stage3 and config search paths. Closes #225 2022-10-06 06:29:11 +02:00
mint 23f2c7dbac
Merge pull request #228 from czapek1337/some-fixes
Some minor fixes
2022-10-06 06:05:37 +02:00
czapek1337 02c26a8738
efi: Fallback to volume scan instead of panicking 2022-10-06 05:58:39 +02:00
mintsuki 7f09259c57 term: Misc improvements for SERIAL=yes on EFI 2022-10-06 05:41:21 +02:00
mintsuki dc5ed66e67 efi: Limit amount of tries to get boot volume from handle 2022-09-18 10:39:39 +02:00
mintsuki 7f14f2f0d0 misc: Improve printing effectively on panics and errors 2022-09-17 10:40:14 +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