Commit Graph

88 Commits

Author SHA1 Message Date
mintsuki
08423fb646 stivale: Slight change in how anchors work 2021-07-05 22:51:03 +02:00
mintsuki
591f601299 stivale: Use anchor struct definitions from public stivale headers 2021-07-05 12:20:47 +02:00
mintsuki
84e540ee48 stivale2: Implement kernel loading by anchor for non-ELF kernels 2021-07-05 10:20:35 +02:00
mintsuki
d62c4f67d5 stivale: Implement kernel loading by anchor for non-ELF kernels 2021-07-05 08:04:17 +02:00
mintsuki
85a500a668 multiboot1: Fix broken cast 2021-07-03 01:45:46 +02:00
mintsuki
05e7c27f01 multiboot1: Make sure to load modules at a valid address even when using a.out kludge 2021-07-03 01:02:32 +02:00
mintsuki
d53facc731 multiboot: Load modules right after kernel to emulate GRUB behaviour 2021-07-02 23:58:22 +02:00
mintsuki
652a6d2575 multiboot1: Reset textmode even if kernel does not request fb info 2021-07-02 04:34:00 +02:00
Kacper Słomiński
6d47bf9d81 multiboot1: account for memory that crosses 1MB when summing up sizes 2021-06-30 20:59:59 +02:00
Kacper Słomiński
78ec547086 multiboot1: don't mask the PIC when entering kernel
The spec states the PIC must left in the state the BIOS left it in.
2021-06-30 20:44:24 +02:00
Kacper Słomiński
7002918c91 multiboot1: add a.out kludge support 2021-06-30 20:16:30 +02:00
Kacper Słomiński
f84b33650e multiboot1: allocate kernel and modules using proper type
This prevents the code from allocating over the kernel and modules when
allocating memory.
The type is changed to usable when preparing the memory map.
2021-06-30 20:16:30 +02:00
mintsuki
2f08116acb misc: Fix potentially misleading strings 2021-06-30 18:44:31 +02:00
Kacper Słomiński
6bb204bbd9 multiboot1: add support for 64-bit ELFs 2021-06-29 16:58:15 +02:00
Kacper Słomiński
9115bc7b50 elf: allow elf64_load to use paddrs instead of vaddrs 2021-06-29 16:57:51 +02:00
Kacper Słomiński
4fb782449f protos: add initial multiboot1 implementation 2021-06-29 15:16:25 +02:00
mintsuki
7bf53f1406 pmm: Do not reclaim EfiLoader sections as usable 2021-06-15 03:10:59 +02:00
mintsuki
eb83d013ca disk: Misc bug fixes and improvements 2021-06-12 13:13:19 +02:00
mintsuki
abf1d90515 stivale32: Fix typo made when converting to AT&T syntax 2021-06-02 16:33:00 +02:00
mintsuki
1e935e10d3 linux: Fix wrong jmp instruction 2021-05-30 15:45:31 +02:00
mintsuki
6e78e33989 misc: Replace Intel-syntax inline assembly with GAS-syntax inline assembly; ensure we can build with clang 2021-05-29 18:07:28 +02:00
mintsuki
977b00f0b3 stivale2: Fix bug where when requesting higher half pointers the stivale2 struct pointer was still passed in the lower half 2021-05-23 03:34:36 +02:00
mintsuki
a6a88109d7 stivale2: Unbreak listing tags due to higher half pointers and verbose mode 2021-05-22 22:20:26 +02:00
mintsuki
0602e40cce stivale2: Actually pass tag pointers in linked list in the higher half if requested 2021-05-22 10:13:06 +02:00
mintsuki
110d2dc7d4 misc: Misc EFI-related adjustments 2021-05-20 01:16:39 +02:00
mintsuki
9676a3d09c stivale: Load up invalid IDT before jumping to kernel instead of leaking internal one 2021-05-19 08:29:21 +02:00
mintsuki
12ec203f46 chainload: EFI workarounds 2021-05-12 12:53:06 +02:00
mintsuki
f650e4b41b misc: Add verbose config option 2021-05-11 06:46:42 +02:00
mintsuki
0eb5af44aa Revert "stivale2: Reduce verbosity"
This reverts commit 2526b92ab3.
2021-05-11 06:12:47 +02:00
mintsuki
b73890cce5 Revert "stivale: Reduce verbosity"
This reverts commit 8b38bc55cb.
2021-05-11 06:12:33 +02:00
mintsuki
0687bd2760 Revert "linux: Reduce verbosity"
This reverts commit e228745e5c.
2021-05-11 06:12:22 +02:00
mintsuki
e228745e5c linux: Reduce verbosity 2021-05-11 02:15:44 +02:00
mintsuki
8b38bc55cb stivale: Reduce verbosity 2021-05-11 02:11:37 +02:00
mintsuki
2526b92ab3 stivale2: Reduce verbosity 2021-05-11 02:09:59 +02:00
mintsuki
1a83dfcf78 misc: Misc bug fixes 2021-05-07 00:27:49 +02:00
mintsuki
db3a41bc4c uefi: Implement chainloading support 2021-05-06 04:31:05 +02:00
mintsuki
fdfa0207e6 stivale: Panic if higher half addresses header flag is set for 32-bit kernels 2021-05-05 00:53:18 +02:00
mintsuki
a01e5ecd1a stivale2: Implement higher half returned addresses flag 2021-05-04 23:00:26 +02:00
mintsuki
4bd3a540a8 stivale: Implement higher half returned addresses flag 2021-05-04 15:17:36 +02:00
mintsuki
7750e14c10 stivale2: Preserve state of FS and GS segment registers across terminal print calls 2021-04-30 02:09:00 +02:00
mintsuki
1365d9656b linux: Make sure to align kernel and modules memory map allocations to page size 2021-04-29 00:45:02 +02:00
mintsuki
f2b172be71 linux: Pass additional EFI info to kernel 2021-04-28 23:41:34 +02:00
mintsuki
8475f98f08 linux: Pass EDID info onto kernel 2021-04-28 22:56:28 +02:00
mintsuki
033ceb3353 stivale: Implement SMBIOS related stuff. Fixes #81 2021-04-28 20:15:24 +02:00
mintsuki
c3db6d0c41 stivale: Implement KASLR config option 2021-04-15 04:32:49 +02:00
mintsuki
3c0fd2b56b stivale2: Make sure memory at 0x70000 is actually free as per spec 2021-04-15 04:08:20 +02:00
mintsuki
4e4017fb13 pmm: Rework conventional memory allocator 2021-04-15 02:21:38 +02:00
mintsuki
d9466f3d25 stivale2: Implement unmap NULL using 4KiB pages 2021-04-14 21:57:23 +02:00
mintsuki
5488c8818b stivale2: Implement unmap NULL feature 2021-04-14 11:06:14 +02:00
mintsuki
693945b157 stivale2: Implement cols and rows fields for terminal struct tag 2021-04-14 10:44:55 +02:00