mintsuki
68ad2db755
dtb: Fix bugs introduced in cc05481b89f13c842645d5cacc78908d6a9f102e
2024-06-28 01:01:21 +02:00
mintsuki
cc05481b89
dtb: Fix bugs introduced in 45e036275af9867471e141444f7d07db97f5d0e9
2024-06-28 00:51:45 +02:00
mintsuki
45e036275a
dtb: Optionally reallocate and expand DTB memory as needed
2024-06-28 00:43:27 +02:00
mintsuki
2923125d90
lib/elf: Add additional ELF type sanity checks
2024-06-27 13:59:19 +02:00
mintsuki
5df8ca77c1
lib/elf: Only assume relocatable if ELF type is ET_DYN
2024-06-26 20:19:10 +02:00
mintsuki
50b147cbd7
lib/mem: Remove unused memcpy32to64() function
2024-06-26 20:00:26 +02:00
mintsuki
fa11b1f9a8
lib/getchar: Only apply EFI serial backspace workaround if serial == true
2024-06-25 14:34:54 +02:00
mintsuki
b46b896be7
menu: Minor change to multiboot1/2 unsupported messages
2024-06-25 13:50:30 +02:00
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
b3d7688449
misc/flanterm: Remove leftover feature flags
2024-06-16 20:10:20 +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
mintsuki
2a0913c1f3
lib/panic: efi: Disallow returning to menu after exiting boot services
2024-06-12 02:00:53 +02:00
mintsuki
da52f2317e
Merge pull request #371 from qookei/linux-aa64
...
Linux boot protocol support for AArch64
2024-06-11 23:43:07 +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
Kacper Słomiński
2a0de56ea4
pmm: Allocate memory from UEFI with EfiLoaderCode type
...
On AArch64 EfiLoaderData is remapped as non-executable, which means we couldn't
use it for the kernel in the Linux boot protocol.
2024-06-11 21:54:53 +02:00
Kacper Słomiński
288cb6e17e
lib: Add helpers for adding 32-bit /chosen properties
2024-06-11 21:54:22 +02:00
mintsuki
6b3d0e5966
lib/elf: Minor rework of dynamic segment parsing
2024-06-11 17:13:29 +02:00
mintsuki
00b3025fd3
lib/elf: Fix bug where the wrong struct was checked in elf64_load()
2024-06-10 00:25:21 +02:00
mintsuki
2795fdab90
Merge pull request #370 from ziyao233/outgoing/riscv/linux-protocol
...
Support Linux protocol on riscv64
2024-06-09 22:42:27 +02:00
Yao Zi
7767f24689
protos/linux_riscv64: support linux protocol on riscv64
2024-06-10 04:23:17 +08:00
Yao Zi
3a44b45029
lib/fdt: add fdt helpers
2024-06-10 04:20:41 +08:00
mintsuki
33db129c84
lib/elf: Reject relocatable ELFs in elf*_load_elsewhere()
2024-06-09 21:34:55 +02:00
mintsuki
70a0460a6e
lib/elf: Do not check for DT_RELAENT size for DT_PLTREL entries
2024-06-09 00:19:30 +02:00
mintsuki
8d5f6d1504
lib/elf: Panic on unresolved symbols, unless marked weak
2024-06-08 23:37:35 +02:00
mintsuki
1aab3b2951
misc/efi: Replace .padding with manual alignment
2024-06-08 16:11:17 +02:00
mintsuki
d14075daed
lib/elf: Ignore PT_LOAD PHDRs with 0 memsz
2024-06-08 01:19:42 +02:00
mintsuki
e52cba9a9e
lib/panic: Use ternary in 'return to' message
2024-06-08 00:48:50 +02:00
iillis
c16c25a232
Setting different error message for boot failure when booting from menu or booting from the editor
2024-06-07 23:31:28 +02:00
illis
cce8a70eee
When booting from editor fails you return to the editor while keeping the text as you were editing it ( #364 )
...
* When booting from editor fails you return to the editor while keeping the failing text
* Fixing syntax and menu render, and adding title backup
* Adding the buffer end and fixing blank bug
* Using strcpy() instead of memcpy for the title and relocating booting_from_editor = true;
2024-06-06 16:56:47 +02:00
mintsuki
d25b7bd0c6
build/linker: UEFI: New padding method that doesn't mangle PT_DYNAMIC
2024-06-05 16:53:00 +02:00
mintsuki
ffe25e3808
lib/elf: Stop parsing PT_DYNAMIC once DT_NULL reached
2024-06-05 11:30:57 +02:00
mintsuki
e6a742e8d0
lib/elf: Panic if ELF file contains DT_NEEDED tags
2024-06-04 03:09:08 +02:00
mintsuki
d694902642
lib/elf: Check if DT_PLTREL is DT_RELA
2024-06-04 03:02:55 +02:00
mintsuki
7a596fa9fe
lib/elf: Use __builtin_popcountll instead of __builtin_popcountg
2024-06-04 02:43:26 +02:00
mintsuki
77143b153c
lib/elf: Use __builtin_popcountg instead of __builtin_popcount
2024-06-04 02:31:01 +02:00
mintsuki
3ce1415a3a
lib/elf: Free allocated RELA structs for RELR
2024-06-04 02:11:06 +02:00
mintsuki
54e8882328
lib/elf: Fix a GCC uninitialised var warning
2024-06-04 02:06:03 +02:00
mintsuki
9789274c6d
lib/elf: Add RELR support
2024-06-04 01:45:04 +02:00
mintsuki
5a7052d135
lib/elf: Add more and better sanity checks
2024-06-03 22:34:45 +02:00
mintsuki
04f6957f17
lib/elf: Add support for R_*_NONE relocations
2024-06-03 03:29:14 +02:00
mintsuki
89bc8aad5e
lib/elf: Optimise is_relocatable() a bit
2024-06-03 02:28:21 +02:00
mintsuki
4c4d79b7fe
lib/elf: Move R_AARCH64_ABS64 case where it makes more sense
2024-06-03 01:53:23 +02:00
mintsuki
4b101ddb75
lib/elf: Remove stray semicolon in apply_relocations()
2024-06-03 01:03:10 +02:00
mintsuki
c9cbc359e7
lib/elf: aarch64: Support ABS64 reloc/add r_addend in JUMP_SLOT/GLOB_DAT relocs
2024-06-03 00:42:59 +02:00