Kacper Słomiński
aed3b3348e
protos/linux_risc: Properly fill VirtualStart in memory map
...
This lets Linux use UEFI runtime services.
2024-06-16 20:46:23 +02:00
mintsuki
8c75c55a92
misc/uefi: Switch from EfiLoaderData to EfiLoaderCode at 2 more allocation sites
2024-06-16 18:27:55 +02:00
mintsuki
9fb6423002
protos/linux: riscv64: Fix protocol version check
2024-06-16 07:40:50 +02:00
mintsuki
74aa228702
protos/linux: Rename files to avoid unnecessary diffs (2)
2024-06-15 21:30:37 +02:00
mintsuki
2541760b98
protos/linux: Rename files to avoid unnecessary diffs (1)
2024-06-15 21:30:06 +02:00
mintsuki
440ba05e08
protos/linux: Rename files (2)
2024-06-12 02:07:39 +02:00
mintsuki
56b7a32dfc
protos/linux: Rename files (1)
2024-06-12 02:07:12 +02:00
Kacper Słomiński
c95ad88004
protos/linux: Add support for AArch64
2024-06-11 21:59:30 +02:00
Kacper Słomiński
f49dbd4ae9
protos/linux: Fill DTB with information about UEFI
...
Also create a new DTB if one is not available. This replicates what Linux's
EFISTUB does internally before handing control over to the kernel proper.
2024-06-11 21:58:02 +02:00
Yao Zi
7767f24689
protos/linux_riscv64: support linux protocol on riscv64
2024-06-10 04:23:17 +08:00
mintsuki
5a7052d135
lib/elf: Add more and better sanity checks
2024-06-03 22:34:45 +02:00
Philipp Schuster
63d29af182
multiboot2: fix efi{32,64]_ih generation
2024-05-22 23:06:06 +02:00
mintsuki
cd9efbf8b6
limine: Define and implement base revision 2
2024-05-03 19:31:12 +02:00
mintsuki
51304b359d
limine: Remove left over start marker comparison code
2024-05-03 07:01:11 +02:00
mintsuki
ba86da93e0
limine: Document and implement requests start marker
2024-05-03 06:43:49 +02:00
Philipp Schuster
b715948575
misc: init typos for spell checking
2024-04-05 16:42:15 +02:00
mintsuki
001a442750
limine: Add support for MAX_PAGING_MODE config option
2024-03-31 09:04:39 +02:00
cospplredman
ba5c0004e6
fixed header guard names
...
made them more standard compliant
2024-03-20 03:06:55 +01:00
mintsuki
1d45bf541e
protocols/limine: Add support for requests delimiter
2024-03-13 14:58:56 +01:00
Philipp Schuster
1407f48af1
multiboot2: better logging of unknown and unsupported tags
2024-01-31 16:17:18 +01:00
Philipp Schuster
f5c449ac00
multiboot2: don't fail on 0x9 tag when 0x3 is available
...
A kernel can define multiple entries. Even if they are marked as required,
it makes no sense to panic when there is a valid and expected alternative.
Further, this aligns the behavior with GRUB2.
This solution is however simple, as it expects that all tags appear in
natural order. However, every developer that is sane will order them
naturally.
2024-01-31 16:17:18 +01:00
mintsuki
4b7911ebd5
limine: Only print missing internal module warning on verbose
2024-01-07 01:52:21 +01:00
mintsuki
cc579a8da2
limine: Add compressed internal modules support. Closes #324
2024-01-07 01:52:21 +01:00
mintsuki
101d04493d
limine: Gate EFI memory map feature out of BIOS port
2023-12-07 00:31:45 +01:00
mintsuki
302d57e47d
limine: Add EFI memory map feature
2023-12-07 00:31:45 +01:00
mintsuki
40313b25ec
multiboot2: Add support for console flags header tag
2023-12-07 00:31:45 +01:00
mintsuki
d527109ca8
multiboot2: Fix some warnings discovered by GCC
2023-12-07 00:31:45 +01:00
mintsuki
38af3f9843
multiboot2: Initial support for relocatable header tag
2023-12-07 00:31:45 +01:00
mintsuki
4321d910f6
limine: Fix bug where on 32-bit ports, .limine_reqs section was not parsed correctly
2023-11-03 06:24:58 +01:00
mintsuki
4ade725b78
limine: Deprecate .limine_reqs and remove it as of base revision 1
2023-11-03 06:24:58 +01:00
mintsuki
30397df228
limine: Specify and implement base revision 1 memory mappings
2023-11-03 06:24:58 +01:00
mintsuki
2c8c0c3deb
Revert "misc: Converge with 5.x"
...
This reverts commit f9682543fd6ba603ced0135053893c66712a857b.
2023-11-03 06:24:58 +01:00
mintsuki
8c2ef81414
limine: Add way for kernel to determine whether base revision is supported
2023-11-03 06:24:58 +01:00
mintsuki
553c7b2945
limine: Slight change of how base revision is determined
2023-11-03 06:24:58 +01:00
mintsuki
f4b78bec63
limine: Add support for base protocol revisions
2023-11-03 06:24:58 +01:00
mintsuki
a0127f9f40
pmm: Add MEMMAP_MAX macro and use it instead of hardcoding 256
2023-10-24 18:38:18 +02:00
mintsuki
c1f5b21177
misc: Remove unnecessary ifdefs added in previous commits
2023-10-06 12:25:44 -05:00
mintsuki
b474b6bad0
misc: Only allocate memory and modules above 4GiB on 64-bit platforms
2023-10-06 12:25:44 -05:00
mintsuki
5323bce117
pmm: Allow allocations above 4GiB and use them in freadall()
2023-10-06 12:25:44 -05:00
mintsuki
a83dafe6f4
misc: Add section .note.GNU-stack to assembly files
2023-09-28 06:56:28 -05:00
mintsuki
87a88bf565
smp: Remove dead 32-bit trampoline code
2023-09-23 17:37:38 -05:00
mintsuki
042a6e9554
misc: Backports from trunk
2023-09-16 15:12:14 -05:00
xvanc
e3d65aa628
riscv: refactor smp init
2023-09-16 11:28:15 -05:00
mintsuki
b54c3fc9cc
protos/chainload: Fix bug that could result in bogus oom errors. Fixes #302
2023-09-11 17:16:19 -05:00
Kacper Słomiński
916aa370b2
protos: chainload: Allocate memory for the null terminator in cmdline
2023-09-11 17:16:19 -05:00
mintsuki
e6a67c80a6
x86/gdt: Mark accessed flag in descriptors
2023-09-09 10:08:44 -05:00
mintsuki
d66df6b38a
limine: Do not return SMBIOS response if not present
2023-08-10 19:26:54 -05:00
Kacper Słomiński
dc68fcaff7
limine: Use a higher-half pointer for the stack on AArch64
2023-07-26 17:05:33 -05:00
mintsuki
9333f1ca8b
limine/elf: Optimise not to scan .bss for requests
2023-07-08 23:44:50 +02:00
mintsuki
7882d89b4e
limine: Drop 5-level paging request support
2023-06-20 16:10:08 +02:00