Commit Graph

562 Commits

Author SHA1 Message Date
mintsuki
49ecb6b577 build: Get rid of RISCV_CFLAGS variable as it is now unnecessary 2023-07-26 17:04:54 -05:00
mintsuki
bc1896c5bb riscv64: Do not use global pointer register 2023-07-26 17:04:30 -05:00
mintsuki
b72d033510 elf: elf64_load(): Remove accidentally left in debug code 2023-07-09 03:40:06 +02:00
mintsuki
11f50a6aaa part: Require keypresses between entry displays in list_volumes() 2023-07-09 03:37:55 +02:00
mintsuki
79e50a82af misc: Use assembly for memory functions on x86 2023-07-09 03:09:45 +02:00
mintsuki
17e26c8c95 elf: Fix potential uninitialised usage of bss_size 2023-07-09 03:09:45 +02:00
mintsuki
9333f1ca8b limine/elf: Optimise not to scan .bss for requests 2023-07-08 23:44:50 +02:00
mintsuki
99d671ecf8 build: Drop -Wno-deprecated-declarations flag 2023-06-20 16:24:27 +02:00
mintsuki
7882d89b4e limine: Drop 5-level paging request support 2023-06-20 16:10:08 +02:00
mintsuki
1ad6d6013e limine: Drop terminal request support 2023-06-20 15:58:52 +02:00
mintsuki
2ac43a320f asm: Add missing section directives 2023-06-20 13:24:49 +02:00
mintsuki
2d6a1e4535 console: Add firmware type command 2023-06-20 11:10:33 +02:00
mintsuki
6e41938206 gensyms: Filter out non-function symbols 2023-06-20 08:54:53 +02:00
mintsuki
66268f7d7f pmm: Use fixed value of 1024 for recl entries count 2023-06-15 13:06:52 +02:00
mintsuki
cb14f44eb3 pmm: Fix change-memmap-in-use bug 2023-06-15 12:54:36 +02:00
mintsuki
910a0d84a0 vmm: Fix page_sizes values and move declaration to top 2023-06-15 08:21:48 +02:00
mintsuki
670b635ae8 config: Add and document ARCH built-in macro 2023-06-15 02:23:48 +02:00
mintsuki
bc8188e275 misc: limine.sys -> limine-bios.sys 2023-06-15 02:02:32 +02:00
mintsuki
7b1284808a build: Fix permissions of output files in makefile instead of release recipe 2023-06-15 01:33:17 +02:00
mintsuki
2b154138fe misc: Updates for new limine-efi 2023-06-12 05:57:47 +02:00
mintsuki
cde874fe80 misc: Updates for new flanterm 2023-06-10 19:23:50 +02:00
mintsuki
666c5dfcd1 riscv64: Update location of __global_pointer$ 2023-06-06 00:17:07 +02:00
mintsuki
13042bd25e build/riscv64: libgcc-riscv64 -> libgcc-riscv64-softfloat 2023-06-06 00:02:07 +02:00
mintsuki
74a6b8e125 protos/linux: Do not zero EFI memmap size on IA-32 EFI 2023-06-05 23:05:20 +02:00
xvanc
1f01ddfc6d
limine: scale the maximum KASLR offset based on the address space size 2023-06-04 13:50:26 -05:00
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
Bryce Lanham
fe083d3701 Fix netboot in configs where BLOCK_IO does not exist
For example, netbooting qemu-system-aarch64 with no drive specified will
result in OVMF not loading the BLOCK_IO_PROTOCOL, causing a panic in
disk.s2.c.
2023-06-01 03:33:13 -05:00
mintsuki
f26b651e5f disk/efi: Do not use DISK_IO protocol and fix buffer reuse bug 2023-05-30 21:36:09 +02:00
mintsuki
679fdd4351 misc: Use C instead of asm for mem*() family of functions 2023-05-30 12:23:31 +02:00
mintsuki
eac03c8c89 build/uefi: Remove now-useless -DGNU_EFI_USE_MS_ABI flag 2023-05-28 23:53:34 +02:00
mintsuki
0125dcd67a build/uefi: Pass -fshort-wchar to CC 2023-05-27 16:55:49 +02:00
mintsuki
7989064599 elf: Improve detection of relocatable ELFs 2023-05-13 00:05:50 +02:00
mintsuki
73462a5116 Revert "compress/gz: Add hack to allow macOS compressed GZs to load with stbi"
This reverts commit 1dd75a18ac.
2023-05-03 19:53:27 +02:00
mintsuki
f618eb26af Revert "misc: Revert back to using tinf for all GZ decompression"
This reverts commit 3438b8d235.
2023-05-03 19:53:27 +02:00
mintsuki
e9186e1859 Revert "uri: Backport pre-tinf-removal variable assignments"
This reverts commit 514522125b.
2023-05-03 19:53:27 +02:00
Bryce Lanham
e0c3e6bdce multiboot1: also fix elf32 section loading
As with the prior mb2 fix, use the correct size elf section header for
32 bit elf
2023-05-02 20:48:13 -05:00
Bryce Lanham
fdcb9a9243 multiboot2: fix 32 bit elf section loading
Existing code was using 64 bit elf section header unconditionally. This
commit fixes that :)
2023-05-02 20:15:43 -05:00
mintsuki
8dd7973e23 pxe: Add and use constant PXE ACK packet size and fix BIOS PXE ACK struct 2023-04-28 04:59:08 +02:00
mintsuki
36846549e0 menu: Do not initialise textmode terminal if QUIET=yes. Addresses #269 2023-04-26 23:49:22 +02:00
Bryce Lanham
2362f1a785 Implement Multiboot2 network tag
Added caching of the dhcp response in the pxe code, and then adding the
tag containing it.
2023-04-24 06:44:56 -05:00
Bryce Lanham
64a0c6073b Fix PXE BIOS boot when using a proxy DHCP server 2023-04-22 01:22:36 -05:00
mintsuki
c41e3969a6 build: Pass proper warning flags to nasm 2023-04-18 12:41:01 +02:00
mintsuki
e57050d9c7 multiboot1: Support TEXTMODE config as with Linux/mb2 protocols 2023-04-13 19:21:49 +02:00
mintsuki
93ae0e9afc textmode: Actually disable term hooking on non-managed initialisation 2023-04-13 18:49:26 +02:00
ミンツキ
3613997108
Merge pull request #263 from klange/mb2-textmode
multiboot2: Support TEXTMODE config as with linux
2023-04-12 16:24:14 +02:00
K. Lange
2da6225f9e multiboot2: ignore unsupported tags if they are marked optional 2023-04-12 19:53:24 +09:00
K. Lange
a3f84fc4a3 multiboot2: Support TEXTMODE config as with linux 2023-04-12 19:50:01 +09:00
mintsuki
240d9688b0 multiboot2: Fix lack of argument to panic format string 2023-04-12 09:56:28 +02:00
mintsuki
eba0183b6e build: Reorganise warning flags 2023-04-11 17:15:41 +02:00
mintsuki
ebd1953e51 build: Use uppercase PIE/PIC compilation flags 2023-04-11 15:57:02 +02:00
mintsuki
514522125b uri: Backport pre-tinf-removal variable assignments 2023-04-08 03:10:53 +02:00
mintsuki
3438b8d235 misc: Revert back to using tinf for all GZ decompression 2023-04-08 02:17:02 +02:00
mintsuki
b66184cfbd limine: Clarify ambiguity with response revision and internal modules 2023-03-30 03:51:59 +02:00
mintsuki
012605adf9 limine: Fix issue with internal modules and kernels in root dir 2023-03-30 02:43:52 +02:00
mintsuki
d0df21abb9 limine: Mark terminal as deprecated 2023-03-30 02:12:24 +02:00
mintsuki
01eeeb6e1d term: Drop in_bootloader for new Flanterm 2023-03-30 01:23:55 +02:00
mintsuki
779571339e misc: Updates for Flanterm rebrand 2023-03-29 22:43:06 +02:00
mintsuki
a2dd3449a8 limine: Fix framebuffer pointer in terminal struct being invalid without a framebuffer request 2023-03-29 11:04:53 +02:00
mintsuki
42027470c7 limine: Fix bug where internal modules are parsed with revision < 1 2023-03-25 00:59:26 +01:00
mintsuki
d0ee1e7d65 limine: Support relative-to-kernel paths for internal modules 2023-03-24 18:24:27 +01:00
mintsuki
698ca1a665 limine: Honour LIMINE_INTERNAL_MODULE_REQUIRED flag 2023-03-24 10:18:18 +01:00
mintsuki
830251e68e limine: Load internal modules before config modules 2023-03-24 09:07:40 +01:00
mintsuki
d4334699e3 limine: Implement internal modules concept 2023-03-24 01:02:31 +01:00
mintsuki
0196abf2ec build: Minor build system updates 2023-03-23 02:35:08 +01:00
mintsuki
2ea3f7e9d8 build: Minor build system updates 2023-03-23 01:02:58 +01:00
mintsuki
3bf159d81c compress: Rename modified tinfgzip wrapper to gzip 2023-03-16 22:49:24 +01:00
mintsuki
9663318102 build: Remove useless unset commands from common GNUmakefile 2023-03-16 17:01:41 +01:00
mintsuki
fadb9a7c13 build: Misc updates for new freestanding-toolchain 2023-03-16 03:38:53 +01:00
mintsuki
f71f506b0a build: configure: Change some variable names to be more friendly 2023-03-16 02:28:50 +01:00
mintsuki
9009404a11 build: Updates for newer freestanding-toolchain 2023-03-14 17:20:46 +01:00
mintsuki
828e3790a4 chainload: LoadOptionsSize should be in bytes. Fixes #254 2023-03-08 15:40:11 +01:00
mintsuki
246276a538 chainload: BIOS: do not rely on 0x7c00 being free 2023-03-07 13:07:28 +01:00
mintsuki
980c122475 vga_textmode: Minor cursor-related bug fixes 2023-03-07 13:07:28 +01:00
mintsuki
4ef529b4eb misc: Load BIOS port at 0xf000 instead of 0x8000 2023-03-07 02:21:09 +01:00
mintsuki
fc4e283ad5 stb_image: Fix free/realloc wrappers to handle being passed NULL 2023-03-05 19:01:31 +01:00
mintsuki
0f4beb1bfd gterm: Fix NULL dereference bug when no wallpaper used 2023-03-05 09:49:28 +01:00
mintsuki
1dd75a18ac compress/gz: Add hack to allow macOS compressed GZs to load with stbi 2023-03-05 09:08:37 +01:00
mintsuki
8bb12244be image: Use stbi_image_free() instead of freeing buffer ourselves 2023-03-05 08:47:38 +01:00
mintsuki
753bb820ae stb_image: More proper implementation of malloc/free/realloc macros 2023-03-05 08:29:27 +01:00
mintsuki
959c44658e image: Use stb_image for image loading 2023-03-05 07:57:54 +01:00
mintsuki
11ef3bced2 build: Honour CROSS_CPPFLAGS 2023-02-25 01:38:26 +01:00
mintsuki
9bcad9d258 build: Very minor QOL fixes 2023-02-20 22:24:21 +01:00
mintsuki
1e65ada438 Revert "fs: Drop ext* support"
This reverts commit caaf4f94a5.
2023-02-20 05:10:33 +01:00
mintsuki
c924d7b7e5 build: Misc quality-of-life fixes 2023-02-19 10:07:21 +01:00
mintsuki
ce7a552723 misc: Let freestanding-headers handle limits.h 2023-02-18 09:41:30 +01: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
e909489635 vga_textmode: Unbreak on trunk 2023-02-16 03:21:06 +01:00
mintsuki
a3f814b5f7 uri/tinfgzip: Minor fixes and layering improvement 2023-02-16 02:05:11 +01:00
mintsuki
3ae87be595 uri: Fix minor use-after-free bug 2023-02-15 21:09:46 +01:00
mintsuki
9b07351208 uri: Prevent memory leak when opening compressed files 2023-02-15 21:05:55 +01:00
mintsuki
143d3d85de stb/image: Comment out problematic functions 2023-02-15 11:53:07 +01:00
mintsuki
1099993b14 stb: Ignore some warnings coming from stb_image.h 2023-02-15 11:31:28 +01:00
mintsuki
71b3ae548b compress: Replace tinf's inflate implementation with stb_image's zlib 2023-02-15 11:21:53 +01:00
mintsuki
caaf4f94a5 fs: Drop ext* support 2023-02-15 11:21:53 +01:00
mintsuki
c30afde043 config: Do not allow recovering from checksum mismatch panic 2023-02-07 00:28:51 +01:00
mintsuki
843be07536 config: No longer allow continuing boot on checksum mismatches 2023-02-07 00:23:10 +01:00
mintsuki
8c7a98310a misc: Add support for enrolling config blake2b hash in executable 2023-02-06 23:58:19 +01:00
mintsuki
a7721872dd term: Expose support for out-of-band output control 2023-01-20 20:14:38 +01:00
mintsuki
28dd8a1062 file: Fix several bugs to do with handling of path field 2023-01-20 17:27:41 +01:00