Commit Graph

1386 Commits

Author SHA1 Message Date
Jeremy Soller 33b8fcecfb Sync x86_64 trampoline with bootloader 2022-08-26 08:08:24 -06:00
Jeremy Soller fb1bdf7c3e Ignore null bytes from pl011 uart 2022-08-25 20:10:35 -06:00
Jeremy Soller 6a3fc5a68a Send SIGSEGV on aarch64 exception 2022-08-25 20:00:53 -06:00
Jeremy Soller 80b8382cd7 Fix aarch64 kfx size 2022-08-25 18:40:19 -06:00
Jeremy Soller 82ac7a66f7 Only save preserved regs in aarch64 context switch 2022-08-25 18:23:51 -06:00
Jeremy Soller 52434b359c Disable building aarch64 asm 2022-08-25 18:12:43 -06:00
Jeremy Soller ff738074d2 Cleanup aarch64 code 2022-08-25 15:46:27 -06:00
Jeremy Soller afd82ba4bb Save/restore aarch64 FPU regs 2022-08-25 09:30:53 -06:00
Jeremy Soller 31680bf5b9 Do not set tpidr_el0 from kernel 2022-08-25 08:46:26 -06:00
Jeremy Soller b3b5bb8a91 Simplify handling of aarch64 env regs 2022-08-25 08:12:07 -06:00
Jeremy Soller f7e8026494 Set aarch64 thread pointers 2022-08-24 19:21:36 -06:00
Jeremy Soller 545a561a26 Set ptrace regs for aarch64 2022-08-24 19:03:30 -06:00
Jeremy Soller 84704353af Support address space change on aarch64 2022-08-24 18:54:42 -06:00
Jeremy Soller 6d3fa8b374 Enable clone_handler on aarch64 2022-08-24 15:50:10 -06:00
Jeremy Soller b20a71113c Implement aarch64 switch_to_inner using naked function 2022-08-24 13:24:37 -06:00
Jeremy Soller fb34e4eddf Partially implement stack trace on aarch64 2022-08-24 12:34:31 -06:00
Jeremy Soller 0ed9f03317 Use push/pop scratch for aarch64 signal handler 2022-08-24 12:29:48 -06:00
Jeremy Soller 613968dc30 Use push/pop scratch for x86 signal handler 2022-08-24 11:39:31 -06:00
Jeremy Soller 113a7164bb Use push/pup scratch for x86_64 signal handler 2022-08-24 11:11:50 -06:00
Jeremy Soller 310a0dda08 Some aarch64 register struct updates 2022-08-24 08:56:57 -06:00
Jeremy Soller bb12da2b68 Update syscall 2022-08-24 08:53:37 -06:00
Jeremy Soller 54d9d011aa Use framebuffer virtual address 2022-08-23 20:07:30 -06:00
Jeremy Soller 2b8af1cf07 Ignore areas outside 1GiB and combine memory areas on x86 2022-08-23 15:41:29 -06:00
Jeremy Soller aa51e9812d Use PAT flags on x86 2022-08-22 19:54:14 -06:00
Jeremy Soller f3e23af9ec Update rmm 2022-08-22 18:49:42 -06:00
Jeremy Soller 06d952979f Implement debugger for x86 2022-08-22 08:41:35 -06:00
Jeremy Soller 58104649db Set limits for x86 GDT entries 2022-08-21 14:56:59 -06:00
Jeremy Soller 538ad9e57f Remove debug message when writing x86 EnvRegisters 2022-08-21 13:22:58 -06:00
Jeremy Soller d3fbbd5918 Pre-allocate x86 kernel PD entries 2022-08-21 13:21:59 -06:00
Jeremy Soller bdba700c21 Disable syscall debugging 2022-08-20 21:52:09 -06:00
Jeremy Soller 76a46c54b8 Fix stack selector on x86 2022-08-20 21:51:21 -06:00
Jeremy Soller c750ee26a8 Implement setting FS/GS offset on x86 2022-08-20 21:21:32 -06:00
Jeremy Soller 01e4bc899e Fix compilation on x86 2022-08-20 18:11:57 -06:00
Jeremy Soller d3f42989c9 Fix compilation on x86_64 2022-08-20 14:51:05 -06:00
Jeremy Soller 9dd069c8ca Support proc partially with aarch64 2022-08-20 14:45:45 -06:00
Jeremy Soller 9b8abfc5d7 Copy exception handlers from early_init 2022-08-20 13:48:13 -06:00
Jeremy Soller 44d5e6573a Updated utable switching code for aarch64 2022-08-20 13:31:20 -06:00
Jeremy Soller fe7def2797 Update to use TableKind on x86_64 2022-08-20 13:16:23 -06:00
Jeremy Soller 01df1c20da Use TableKind everywhere 2022-08-20 13:06:52 -06:00
Jeremy Soller 3911fc616a Update rmm 2022-08-20 13:01:01 -06:00
Jeremy Soller 849b854bd0 Implement usermode for aarch64 2022-08-20 09:34:12 -06:00
Jeremy Soller c7e5466bd7 Fix aarch64 switch_to_inner functino definition 2022-08-20 09:15:26 -06:00
Jeremy Soller 157dbc7b4d Convert aarch64 context switching to asm macro 2022-08-20 09:08:14 -06:00
Jeremy Soller 9ca2484079 Get aarch64 kernel to boot to the point of needing context switch 2022-08-19 21:40:04 -06:00
Jeremy Soller 82ad6e2fa7 Remove devmap region from aarch64, use physmap instead 2022-08-19 21:01:10 -06:00
Jeremy Soller ba64d82818 Make kstart the aarch64 entry point 2022-08-19 21:00:47 -06:00
Jeremy Soller 97b4d31355 Match aarch64 PHYS_OFFSET with x86_64 2022-08-19 20:54:02 -06:00
Jeremy Soller a1411353a9 Update rmm 2022-08-19 19:52:39 -06:00
Jeremy Soller 49fcafac45 Fix building on aarch64 2022-08-19 16:12:42 -06:00
Jeremy Soller 38361661e6 Add proc scheme stubs for aarch64 2022-08-19 16:00:35 -06:00