limine/common/lib
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
..
acpi.c multiboot2: Fix bug where old ACPI tag would not get passed if RSDP rev == 0 2022-08-12 23:33:28 +02:00
acpi.h Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
blib.c Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
blib.h Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
blib.s2.c misc: Misc output fixes for serial support 2022-02-07 02:10:57 +01:00
bmp.c misc: stage23 -> common 2022-02-03 10:38:43 +01:00
bmp.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
config.c config: Only make keys global if before first entry 2022-08-14 14:45:20 +02:00
config.h config: Only make keys global if before first entry 2022-08-14 14:45:20 +02:00
elf.c Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
elf.h misc: Bring mb2 up to par to mb1 wrt everywhere ranges and bug fixes 2022-06-29 10:27:04 +02:00
elsewhere.c multiboot: Properly check elsewhere returns 2022-07-24 22:28:16 +02:00
elsewhere.h misc: Bring mb2 up to par to mb1 wrt everywhere ranges and bug fixes 2022-06-29 10:27:04 +02:00
fb.c fb: Expand width and height to 64-bit 2022-05-22 06:38:34 +02:00
fb.h fb: Expand width and height to 64-bit 2022-05-22 06:38:34 +02:00
gterm.c term/limine: Allow overriding terminal config in entry 2022-08-14 15:09:57 +02:00
gterm.h term/limine: Allow overriding terminal config in entry 2022-08-14 15:09:57 +02:00
guid.c misc: stage23 -> common 2022-02-03 10:38:43 +01:00
guid.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
image.c misc: stage23 -> common 2022-02-03 10:38:43 +01:00
image.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
libc.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
libc.s2.c misc: stage23 -> common 2022-02-03 10:38:43 +01:00
macros.aarch64_asm.h Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
mem.asm_aarch64 Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
mem.asm_x86_64 misc: Fix broken memcmp() 2022-07-14 20:03:21 +02:00
mem.s2.asm_ia32 misc: Fix broken memcmp() 2022-07-14 20:03:21 +02:00
panic.s2.c Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
part.c part: Also print fslabel in lsvol 2022-07-07 11:22:43 +02:00
part.h chainload: Implement MBR_ID config option. Closes #190 2022-07-11 01:30:54 +02:00
part.s2.c mbr: Make detection more lax. Addresses #185 2022-07-28 22:48:04 +02:00
print.h misc: Move 'verbose' declaration to lib/print.h 2022-07-18 21:14:21 +02:00
print.s2.c Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
rand.c Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
rand.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
readline.c readline: Fix 1 uncaught NULL deref 2022-04-22 16:48:17 +02:00
readline.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
real.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
real.s2.asm_bios_ia32 build: BIOS stage2only build improvements 2022-07-18 21:02:44 +02:00
sleep.asm_bios_ia32 build: Increase portability of Makefile targets 2022-06-15 03:25:36 +02:00
spinup.asm_aarch64 Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
spinup.asm_bios_ia32 build: Increase portability of Makefile targets 2022-06-15 03:25:36 +02:00
spinup.asm_uefi_ia32 build: Increase portability of Makefile targets 2022-06-15 03:25:36 +02:00
spinup.asm_uefi_x86_64 build: Increase portability of Makefile targets 2022-06-15 03:25:36 +02:00
term.c Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
term.h term/limine: Allow overriding terminal config in entry 2022-08-14 15:09:57 +02:00
term.s2.c build: BIOS stage2only build improvements 2022-07-18 21:02:44 +02:00
time.c time: Work around potential issue with day wraparound 2022-03-08 14:26:08 +01:00
time.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
trace.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00
trace.s2.c Initial AArch64 port (#205) 2022-08-18 17:32:54 +02:00
uri.c fwcfg: Drop support 2022-07-13 06:23:20 +02:00
uri.h misc: stage23 -> common 2022-02-03 10:38:43 +01:00