Commit Graph

1892 Commits

Author SHA1 Message Date
Michael Scire
7f3ccf945a kern: refactor FindFreeArea region search logic per 20.0.0 changes 2025-05-09 12:10:07 -07:00
Michael Scire
0d0f533805 kern: update instruction cache invalidation logic in KPageTableBase to reflect 20.0.0 changes 2025-05-09 12:10:07 -07:00
Michael Scire
7656a0e770 kern: reorder resource manager implementation 2025-05-09 12:10:06 -07:00
Michael Scire
5aa54772e6 kern: support null resource limit in KSecureSystemResource 2025-05-09 12:10:06 -07:00
Michael Scire
1e67468804 kern: adjust system registers during exception handling on MTE-violation or kernel address fault 2025-05-09 12:10:05 -07:00
Michael Scire
fa7577c87b kern: update UserspaceAccess functions for 20.0.0 changes 2025-05-09 12:10:05 -07:00
Michael Scire
73dd0b5019 kern: update KAddressSpaceInfo to reflect 20.0.0 changes 2025-05-09 12:10:04 -07:00
Michael Scire
16fb7ca067 kern: invert meaning of KTargetSystem/KSystemControl bools 2025-05-09 12:10:04 -07:00
Michael Scire
f30d109429 erpt: update ids for 20.0.0 2025-05-09 12:10:03 -07:00
Michael Scire
c04caeec8f fusee/exo/ams: update with new keydata/version enums 2025-05-09 12:10:02 -07:00
Michael Scire
437ef0004a ams: various fixes to support booting debug configuration 2025-05-09 12:10:02 -07:00
Michael Scire
715eff2102 kern: update KernelLdr for 19.0.0 (new checks, dummy function call).
Also, fix a few very embarassing mistakes in kernel ldr:
* We have been mapping the page table region RWX for a few years now, accidentally.
* My attempt at making initial page tables not use bit 58 was broken in multiple ways.
2025-05-09 12:10:01 -07:00
Michael Scire
4c9b758348 crypto: implement CmacGenerator 2025-05-09 12:10:01 -07:00
Michael Scire
a6ebdbf3af fs: fix uninit warnings on windows localfilesystem 2025-05-09 12:10:00 -07:00
Michael Scire
90f32279a8 libstrat: re-nolto files when compiling for windows-audit 2025-05-09 12:09:59 -07:00
Michael Scire
e590e1adc5 strat: ldr::PlatformId -> ncm::ContentMetaPlatform 2025-05-09 12:09:59 -07:00
Michael Scire
989fb7be0c svc: bump supported kernel version 2024-10-15 21:51:47 -07:00
Michael Scire
5d1a1eca26 kern: support reboot to fatal error on mariko 2024-10-15 21:51:46 -07:00
Michael Scire
18473ebbe9 kern: Perform page table validity pass during KPageTableImpl::InitializeForKernel 2024-10-15 21:51:46 -07:00
Michael Scire
4f9b30bd86 kern: fix more page table refactor bugs 2024-10-15 21:51:45 -07:00
Michael Scire
1c2ed77c67 kern: first round of page table refactor bug fixes 2024-10-15 21:51:45 -07:00
Michael Scire
1466c59252 kern: update KPageTable::Map for new refactor 2024-10-15 21:51:44 -07:00
Michael Scire
235cff531b kern: update ChangePermissions to use new iteration logic 2024-10-15 21:51:44 -07:00
Michael Scire
73062fd8f8 kern: update KPageTable::Finalize for the refactor 2024-10-15 21:51:44 -07:00
Michael Scire
eaef8d20a1 kern: use new merge pages api 2024-10-15 21:51:43 -07:00
Michael Scire
1d7ad43fdc kern: implement KPageTableImpl merge 2024-10-15 21:51:43 -07:00
Michael Scire
b40b203614 kern: continue page table refactor, implement separate/unmap 2024-10-15 21:51:43 -07:00
Michael Scire
fe06100001 kern: start KPageTable(Impl) refactor, use array-with-levels for KPageTableImpl 2024-10-15 21:51:42 -07:00
Michael Scire
ad6124a39d ldr: ProgramInfo is 0x410 now, and fix debug flags for hbl 2024-10-15 21:51:42 -07:00
Michael Scire
b34a796490 pm: add new 19.0.0 commands
This is functionally correct, but I have no idea what these are meant to represent.
These functions are completely unused on NX.
2024-10-15 21:51:41 -07:00
Michael Scire
55281ebb22 ns_mitm: update to support new 19.0.0 command 2024-10-15 21:51:41 -07:00
Michael Scire
6063a0347e ro: support NROs with read-only first page 2024-10-15 21:51:41 -07:00
Michael Scire
03d859792e kern: invoke supervisor mode thread functions from C++ context with valid stack frame 2024-10-15 21:51:40 -07:00
Michael Scire
28ad01341a kern: specify allowable ipc client memory attr via inverted-whitelist, not blacklist 2024-10-15 21:51:40 -07:00
Michael Scire
adc3f5e155 kern: add minimum alignment support to KMemoryManager 2024-10-15 21:51:39 -07:00
Michael Scire
b70e367745 kern/ldr: add support for --x executables 2024-10-15 21:51:39 -07:00
Michael Scire
49f2449073 kern/strat: update for new DebugFlags capability semantics 2024-10-15 21:51:38 -07:00
Michael Scire
b0566b8dc7 kern: simplify KProcess max memory calculation 2024-10-15 21:51:38 -07:00
Michael Scire
98d2aae984 kern: move KTargetSystem into .rodata, split init/verify 2024-10-15 21:51:38 -07:00
Michael Scire
18d59ac4ac kern: fix debug build 2024-10-15 21:51:37 -07:00
Michael Scire
0c85274c14 kern: allocate all TTBR0 pages during init, use procidx as asid 2024-10-15 21:51:37 -07:00
Michael Scire
42332ee1bc kern: clear gicd/gicc pointers in KInterruptController::Finalize 2024-10-15 21:51:36 -07:00
Michael Scire
7e3638f261 kern: fix KMemoryBlock ctor reorder warn 2024-10-15 21:51:36 -07:00
Michael Scire
989b494a86 kern: eliminate use of KMemoryInfo, shuffle KMemoryBlock fields 2024-10-15 21:51:36 -07:00
Michael Scire
7be7c1ba7c kern: KAddressSpaceInfo now takes CreateProcessFlags in getters 2024-10-15 21:51:35 -07:00
Michael Scire
89bfecb6b6 kern/svc: update WaitForAddress to support 64-bit WaitIfEqual 2024-10-15 21:51:35 -07:00
Michael Scire
63d83fe69d kern: add InfoType_TransferMemoryHint 2024-10-15 21:51:34 -07:00
Michael Scire
2466767e68 erpt: add new IDs/categories 2024-10-15 21:51:34 -07:00
Michael Scire
dc3bb3fde7 fusee/exo/ams: update with new keydata/version enums 2024-10-15 21:51:33 -07:00
Michael Scire
06d82b52ff kern/creport: use mod0 to locate symbol table for all modules 2024-10-15 21:51:33 -07:00