Commit Graph

52 Commits

Author SHA1 Message Date
xvanc 9274ee656e
Initial riscv64 port (#274)
* initial riscv64 port

* enable Paging Mode feature for all architectures

* riscv: add missing protocol docs

* riscv: fix tests

* docs: clarify `LIMINE_PAGING_MODE_DEFAULT` macro

* build: fix whitespace in common/GNUmakefile

* riscv: default to Sv48 paging when supported

* vmm: make `VMM_MAX_LEVEL` 1-indexed

* limine: do not call `reported_addr()` before finaling paging mode

smp/riscv: do not overwrite the argument passed to APs

* limine/riscv: update default paging mode in limine.h

* test/riscv: pad OVMF.fd when downloading it
2023-06-04 01:36:06 +02:00
mintsuki 36846549e0 menu: Do not initialise textmode terminal if QUIET=yes. Addresses #269 2023-04-26 23:49:22 +02:00
mintsuki 01eeeb6e1d term: Drop in_bootloader for new Flanterm 2023-03-30 01:23:55 +02:00
mintsuki c7f344784c menu: Fix issue introduced in 48053fd2 where TIMEOUT=0 would not show interface 2023-02-16 07:18:04 +01: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 ac1c5d1b95 efi/chainload: Support passing of command lines. Addresses #244 2023-01-14 12:49:22 +01:00
mintsuki 2ee939725e term: Compatibility with new terminal code 2022-12-30 07:58:46 +01:00
mintsuki d39baeaa80 video: Initial support for multiple framebuffers 2022-11-18 23:59:31 +01:00
mintsuki d10d2baded menu: Add arrows to indicate overflow for many menu entries 2022-10-07 08:49:13 +02:00
mintsuki 53d20619ec menu: Properly handly high number of entries 2022-10-07 07:35:08 +02:00
mintsuki b1319408dd menu: Add missing valid keys 2022-10-06 05:41:21 +02:00
mintsuki cc8ff90865 menu: Use fallback terminal instead of panicking on gterm_init() fail 2022-10-05 14:32:54 +02:00
mintsuki 48a7c12e5b term: Misc fixes and improvements 2022-10-04 19:10:38 +02:00
mintsuki d3c8a66918 term: Misc fixes and improvements 2022-10-04 08:21:59 +02:00
mintsuki 0f1d86e7e4 term: Tidy up VGA textmode wrapper code 2022-10-04 02:34:11 +02:00
mintsuki 8849d08eeb term: Tidy up gterm wrapper code 2022-10-04 01:37:19 +02:00
mintsuki 4d855fc17e term: Move to use external, portable terminal 2022-10-04 00:58:00 +02:00
mintsuki b229d0cdf3 config: On UEFI, scan the volume containing the EFI executable first. Addresses #219 2022-09-22 15:12:11 +02:00
mintsuki d5ff44676b menu: Fix regression when pressing a key during quiet timeout wait. Addresses in part #220 2022-09-20 15:25:24 +02:00
mintsuki 59bbd1f657 menu: Avoid reinitialising fallback terminal on first runs 2022-09-18 11:52:31 +02:00
mintsuki f86a421209 misc: Fix up some no_unwind globals 2022-09-17 15:09:08 +02:00
mintsuki 7f14f2f0d0 misc: Improve printing effectively on panics and errors 2022-09-17 10:40:14 +02:00
czapek1337 9680a1ad51
uri: Add checksum validation 2022-09-13 01:14:55 +02:00
mintsuki c44f514738 misc: Rename UEFI and BIOS define macros 2022-09-02 02:29:12 +02:00
mintsuki 07080dcbc2 misc: blib.h -> misc.h 2022-08-26 23:44:47 +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 664a872dda editor: Add TERM_CONFIG_OVERRIDE to syntax highlighting 2022-08-15 18:40:52 +02:00
mintsuki 997c787c16 term/limine: Allow overriding terminal config in entry 2022-08-14 15:09:57 +02:00
mintsuki 7ade45b230 misc: struct e820_entry_t -> struct memmap_entry 2022-08-13 19:54:49 +02:00
Dmytro Bagrii b205ff9bd8 misc: Fix GRAPHICS config option recognition 2022-08-13 04:30:58 +03:00
mintsuki e5e125887b protos: Remove pointless returns added for autodetection 2022-07-13 07:40:53 +02:00
mintsuki 95272c5f1d protos: Add chainload_next protocol. Closes #191 2022-07-11 00:15:56 +02:00
peko 2f07cb36ac
Update menu.c 2022-06-19 16:27:05 +05:30
mintsuki 8981575db6 protos: Drop autodetection support 2022-06-15 02:12:27 +02:00
mintsuki 746d0ad529 protos: Drop stivale and stivale2 support 2022-06-14 03:56:30 +02:00
mintsuki cac57ced41 menu: Fix 2 uncaught NULL derefs 2022-04-22 16:42:30 +02:00
mintsuki 2917932d69 misc: Initialise terminal before randomising memory 2022-03-28 07:18:09 +02:00
mintsuki c2a21f9b29 misc: Readd missing RANDOMISE_MEMORY implementation 2022-03-27 23:33:34 +02:00
mintsuki 8b19de71e6 editor: Remove useless VALID_KEYS 2022-03-26 09:49:59 +01:00
mintsuki 49a8dfe4b2 config: Misc improvements 2022-03-22 04:39:51 +01:00
mintsuki a51f8a39c0 limine: Add modules request 2022-03-16 06:49:41 +01:00
mintsuki b2e614e7c2 limine: Introduce basic Limine protocol concept 2022-03-12 19:40:49 +01:00
mintsuki d6be41921f misc: New example background 2022-03-11 04:57:47 +01:00
mintsuki af092292ea term: Change default settings to prefer video to text mode 2022-03-07 21:11:17 +01:00
mintsuki 4b5780ddb4 menu: Use reverse video to highlight selected entry 2022-03-02 14:38:27 +01:00
mintsuki 9964c922e6 docs: Document serial support better 2022-03-02 14:32:22 +01:00
mintsuki 23ff2b0d2b misc: Ensure editor is not accessible from console if disabled 2022-03-02 13:31:09 +01:00
mintsuki 1984f401a1 build: Use config.h for generated constants 2022-02-20 23:05:53 +01:00
mintsuki 319326a7f5 misc: Misc output fixes for serial support 2022-02-07 02:10:57 +01:00
mintsuki 6e0fde5cfb menu: Support HOME and END shortcuts 2022-02-04 22:30:53 +01:00