Commit graph

1222 commits

Author SHA1 Message Date
Putta Khunchalee
c1dcf43d4b
Implements wrapper type to store per-CPU value (#983) 2024-09-14 18:34:35 +02:00
Putta Khunchalee
aa362f7b42
Initializes uma_zalloc_arg implementation (#982) 2024-09-14 15:58:47 +02:00
Putta Khunchalee
3fabe8d75f
Loads ID_AA64MMFR2_EL1 (#981) 2024-09-12 21:13:57 +02:00
Putta Khunchalee
b52793d9b5
Loads ID_AA64MMFR1_EL1 (#980) 2024-09-11 20:39:38 +02:00
Putta Khunchalee
3e1472a3a1
Moves src/Cargo.toml to top-level (#979) 2024-09-11 18:56:30 +02:00
Putta Khunchalee
c41cedf00d
Loads ID_AA64MMFR0_EL1 from HV_FEATURE_REG_ID_AA64MMFR0_EL1 (#978) 2024-09-10 22:45:32 +02:00
Putta Khunchalee
2c7fa2d06d
Merges VM into Hypervisor for macOS (#977) 2024-09-10 18:36:50 +02:00
Putta Khunchalee
376f8ce99e
Makes RAM belong to hypervisor (#976) 2024-09-09 20:45:48 +02:00
Putta Khunchalee
1e68099365
Initializes CPU settings page (#975) 2024-09-09 01:40:09 +07:00
Putta Khunchalee
46c4ec806c
Passes kernel config from VMM (#974) 2024-09-08 17:32:31 +02:00
Putta Khunchalee
637fd80913
Initializes malloc stats (#973) 2024-09-08 15:37:20 +02:00
Putta Khunchalee
a4148c67a9
Makes stage 2 heap honors layout alignment (#972) 2024-09-07 19:03:09 +02:00
Putta Khunchalee
08fd52596f
Implements malloc with size within page size (#971) 2024-09-07 17:12:38 +02:00
Putta Khunchalee
f5c085c165
Implements Vulkan device list (#970) 2024-09-07 11:45:05 +02:00
Putta Khunchalee
6ba6c6a1d5
Refactors CpuStates::set_pstate (#969) 2024-09-06 20:25:03 +02:00
Putta Khunchalee
36a4530082
Implements Hypervisor::cpu_features for Mac M1 (#968) 2024-09-06 19:08:08 +02:00
Putta Khunchalee
cc1dc7e43c
Checks ID_AA64MMFR0_EL1 for at least 36 bits physical address (#967) 2024-09-05 19:40:59 +02:00
Putta Khunchalee
2dadcebc9e
Adds Zulip link (#966) 2024-09-05 01:22:36 +07:00
Putta Khunchalee
4a2fef1c5e
Checks ID_AA64MMFR0_EL1 if page size is supported (#965) 2024-09-05 01:06:37 +07:00
Putta Khunchalee
42c68eca49
Makes VMM supports any page size on the host (#964) 2024-09-03 21:13:53 +02:00
Putta Khunchalee
8328fea43e
Removes alias type for hypervisor (#963) 2024-09-04 00:26:13 +07:00
Putta Khunchalee
17dfceb371
Relicenses obkrnl to dual licensed (#962) 2024-09-03 22:24:28 +07:00
Putta Khunchalee
cf537ffd29
Makes new contribution dual license (#961) 2024-09-02 18:32:36 +02:00
Putta Khunchalee
e2c7151eaf
Implements stage 2 kernel heap activation (#960) 2024-09-01 21:10:58 +02:00
Putta Khunchalee
2528bef04b
Initializes stage 2 kernel heap (#959) 2024-09-01 16:01:35 +02:00
Putta Khunchalee
b5448e64ac
Sets kernel GS (#957) 2024-09-01 12:44:05 +02:00
Putta Khunchalee
8bd35ba9ff
Implements stage 1 kernel heap (#956) 2024-08-31 16:41:08 +02:00
Putta Khunchalee
da46138ba6
Sets MAIR_EL1 (#955) 2024-08-28 22:16:14 +02:00
Putta Khunchalee
271159eff4
Implements Cpu::run for Mac M1 (#954) 2024-08-27 22:11:54 +02:00
Putta Khunchalee
27682945e6
Relocates the kernel for AArch64 (#953) 2024-08-26 17:52:28 +02:00
SuchAFuriousDeath
0c4f78929a
ignores PT_GNU_EH_FRAME (#952)
Co-authored-by: tompro <tomas.prochazka@apertia.cz>
2024-08-26 11:05:48 +07:00
Putta Khunchalee
583b98ec50
Enables VK_LAYER_KHRONOS_validation on debug build (#951) 2024-08-25 22:31:51 +02:00
Putta Khunchalee
5ec2e00bf4
Prints panic message (#949) 2024-08-25 20:13:12 +02:00
Putta Khunchalee
38449ce743
Implements display resolution settings (#948) 2024-08-25 16:10:40 +02:00
Putta Khunchalee
ffb3ef9ec8
Implements profile saving and loading (#947) 2024-08-24 20:08:12 +02:00
Putta Khunchalee
0f85fbb946
Revises console (#946) 2024-08-24 15:03:14 +02:00
Putta Khunchalee
c44798de47
Enables MMU and set PC to kernel entry point (#945) 2024-08-23 19:18:04 +02:00
Putta Khunchalee
f46b182d4d
Sets TTBR0_EL1 (#944) 2024-08-23 08:57:41 +02:00
Putta Khunchalee
8ba4a05c38
Builds 16K AArch64 page tables (#943) 2024-08-22 20:49:35 +02:00
Putta Khunchalee
c909802331
Sets TTBR1_EL1 for Mac M1 (#942) 2024-08-22 18:04:48 +02:00
Putta Khunchalee
9753c233a8
Sets TCR_EL1.TnSZ to 48-bit virtual addresses (#941) 2024-08-21 19:44:01 +02:00
Putta Khunchalee
cd1fe69189
Uses 16K page on AArch64 (#939) 2024-08-20 20:16:09 +02:00
Putta Khunchalee
37c2e56d04
Hooks Rust panic with QMessageBox (#938) 2024-08-20 19:11:35 +02:00
Putta Khunchalee
0a66e34632
Refactors kernel reader (#936) 2024-08-19 20:52:26 +02:00
Putta Khunchalee
fab5bef3ed
Reads page size from kernel note (#935) 2024-08-18 21:42:38 +02:00
Putta Khunchalee
0bd471b4c1
Exposes kernel page size via ELF note (#934) 2024-08-18 17:37:02 +02:00
Putta Khunchalee
30b712b152
Prepares VMM to supports multiple page size (#933) 2024-08-18 11:15:39 +02:00
Putta Khunchalee
b7838d825c
Revises console to use memory-mapped I/O (#932) 2024-08-17 20:16:48 +02:00
VocalFan
98f9c38216
Check for Vulkan when building (#930) 2024-08-17 12:28:46 +07:00
Putta Khunchalee
5042bdc46c
Produces PIE kernel for AArch64 (#929) 2024-08-15 21:09:41 +02:00