Michael Scire
|
dd799d3909
|
kern: remove KMemoryAttribute_AnyLocked
|
2020-12-02 06:53:09 -08:00 |
|
Michael Scire
|
f152b16639
|
kern: update KMemoryBlockManagerUpdateAllocator api
|
2020-12-02 06:53:09 -08:00 |
|
Michael Scire
|
5f885a3b22
|
kern: implement new software-reserved page table bits
|
2020-12-02 06:53:08 -08:00 |
|
Michael Scire
|
394112f9ac
|
kern: update KPageTableBase for new disable-merge attrs
|
2020-12-02 06:53:08 -08:00 |
|
Michael Scire
|
0f3085b8f6
|
kern: perform rescheduling on dispatch re-enable (closes #1169)
|
2020-10-26 16:03:08 -07:00 |
|
Michael Scire
|
0b7648e7fc
|
kern: default to release config
|
2020-09-17 08:34:22 -07:00 |
|
Michael Scire
|
ba45f73e40
|
kern: generate fatal error on panic
|
2020-09-17 08:34:22 -07:00 |
|
Michael Scire
|
b4dbd97381
|
kern: skeleton legacy lps driver
|
2020-09-07 10:51:51 -07:00 |
|
Michael Scire
|
22f2946671
|
kern: begin 1.0.0 backwards compat changes (kips run, full boot fails)
|
2020-09-07 10:51:50 -07:00 |
|
Michael Scire
|
1aedaa0f91
|
kern: support 2-pool layout on 2.x-4.x instead of modern 4-pool layout
|
2020-09-07 10:51:50 -07:00 |
|
Michael Scire
|
6cf1e0cece
|
kern: change terminology metadata -> management
|
2020-09-07 10:51:50 -07:00 |
|
Michael Scire
|
0c246b88bd
|
kern: pool management should be within carveout
|
2020-09-07 10:51:49 -07:00 |
|
Michael Scire
|
d61f1ddef7
|
kern: fix phys/virt pool management mixup
|
2020-09-07 10:51:49 -07:00 |
|
Michael Scire
|
00a43ac776
|
kern: revamp KMemoryRegionType to better encode derivation hierarchies
|
2020-09-07 10:51:49 -07:00 |
|
Michael Scire
|
ae14cf51b5
|
kern: PMC must be user-mappable for 1.0.0 compat
|
2020-09-07 10:51:48 -07:00 |
|
Michael Scire
|
ec6535bd4b
|
kern: fix warn-errors
|
2020-09-07 10:51:47 -07:00 |
|
Michael Scire
|
8b88149742
|
kern: fix KTypedAddress, strengthen assertions
|
2020-09-07 10:51:46 -07:00 |
|
Michael Scire
|
658b92e17a
|
kern: add version bounds checking
|
2020-09-07 10:51:45 -07:00 |
|
Michael Scire
|
576892ff32
|
kern: avoid hardcoding maximum board memory size
|
2020-09-07 10:51:45 -07:00 |
|
Michael Scire
|
5bc3307ffa
|
kern: improve resource region size definitions/calculations
|
2020-09-07 10:51:45 -07:00 |
|
fincs
|
e1876a293f
|
kern: add stubbed KDevicePageTable implementation for systems without iommu
|
2020-09-07 10:51:42 -07:00 |
|
fincs
|
ec558b3828
|
kern: make GetTargetFirmware a compile-time constant when not building for Switch
|
2020-09-07 10:51:42 -07:00 |
|
Michael Scire
|
78161021f4
|
kern: use common GIC implementation for arm/arm64
|
2020-09-07 10:51:41 -07:00 |
|
Michael Scire
|
4a50b00cab
|
kern: correct flushing of init arguments
|
2020-09-07 10:51:41 -07:00 |
|
Michael Scire
|
888f5cdd20
|
kern: fix multicore instruction cache invalidation
|
2020-09-07 10:51:40 -07:00 |
|
Michael Scire
|
d2dd922f47
|
kern: add tracing for irq/scheduling
|
2020-09-07 10:51:39 -07:00 |
|
Michael Scire
|
b876337ffd
|
kern: cleanup some KMemoryManager functions
|
2020-09-07 10:51:39 -07:00 |
|
Michael Scire
|
f0b455de83
|
kern: refactor KMemoryLayout
|
2020-09-07 10:51:39 -07:00 |
|
Michael Scire
|
3d800b407e
|
kern: mark KThread/KProcess.GetId() final to save virtual calls
|
2020-09-07 10:51:38 -07:00 |
|
Michael Scire
|
6f177e3e84
|
kern: fix missing scheduler updates in KLightLock/Exception, fix RequestScheduleOnInterrupt
|
2020-09-07 10:51:38 -07:00 |
|
Michael Scire
|
4a91046154
|
kern: implement svc trace
|
2020-09-07 10:51:37 -07:00 |
|
Michael Scire
|
db93ab974d
|
kern: SvcChangeKernelTraceState
|
2020-09-07 10:51:37 -07:00 |
|
Michael Scire
|
dc59a2d2e5
|
kern: build with -Wextra
|
2020-09-07 10:51:36 -07:00 |
|
Michael Scire
|
9f7bc49438
|
ams: avoid UB infinite loops
|
2020-08-14 17:36:37 -07:00 |
|
Michael Scire
|
227b9603cd
|
kern: SvcReturnFromException
|
2020-08-01 15:31:46 -07:00 |
|
Michael Scire
|
f80eb2c26f
|
kern SvcGetDebugThreadContext, SvcSetDebugThreadContext
|
2020-08-01 15:31:45 -07:00 |
|
Michael Scire
|
ff9d3ee1d6
|
kern: SvcGetDebugThreadParam
|
2020-08-01 15:31:45 -07:00 |
|
Michael Scire
|
bb044b1934
|
kern: clean up majority of TODOs
|
2020-08-01 15:31:44 -07:00 |
|
Michael Scire
|
1c733577b4
|
kern: SvcGetDebugEventInfo64From32
|
2020-08-01 15:31:44 -07:00 |
|
Michael Scire
|
c7f108082b
|
kern: resolve MESOSPHERE_UNIMPLEMENTEDs other than UserException
|
2020-08-01 15:31:44 -07:00 |
|
Michael Scire
|
3d5f2b7258
|
kern: Add real SvcBreak implementation
|
2020-08-01 15:31:43 -07:00 |
|
Michael Scire
|
b576737418
|
kern: SvcBreakDebugProcess, SvcTerminateDebugProcess
|
2020-08-01 15:31:43 -07:00 |
|
Michael Scire
|
179427687b
|
kern: SvcSetHardwareBreakPoint
|
2020-08-01 15:31:43 -07:00 |
|
Michael Scire
|
3b9403f3fc
|
kern: Svc(Legacy)ContinueDebugEvent
|
2020-08-01 15:31:42 -07:00 |
|
Michael Scire
|
a5d7e8328b
|
kern: SvcQueryPhysicalAddress
|
2020-08-01 15:31:42 -07:00 |
|
Michael Scire
|
83020ce2c4
|
kern: SvcGetThreadList
|
2020-08-01 15:31:41 -07:00 |
|
Michael Scire
|
a0de667005
|
kern: SvcGetLastThreadInfo, SvcGetDebugFutureThreadInfo
|
2020-08-01 15:31:41 -07:00 |
|
Michael Scire
|
641e92e6a0
|
kern: SvcFlushDataCache, SvcFlushEntireDataCache
|
2020-08-01 15:31:41 -07:00 |
|
Michael Scire
|
ef6ede3aeb
|
kern: SvcReadDebugProcessMemory, SvcWriteDebugProcessMemory
|
2020-08-01 15:31:40 -07:00 |
|
Michael Scire
|
0cfd30b9c1
|
kern: panic on failure-to-open auto object in debug config
|
2020-08-01 15:31:40 -07:00 |
|
Michael Scire
|
911a81430a
|
kern: switch memset to optimized impl
|
2020-08-01 15:31:39 -07:00 |
|
Michael Scire
|
c39da750f2
|
SvcQueryDebugProcessMemory
|
2020-08-01 15:31:38 -07:00 |
|
Michael Scire
|
85932bb91e
|
kern: fix ARM vs THUMB mode selection on 32-bit entry
|
2020-08-01 15:31:38 -07:00 |
|
Michael Scire
|
e8021705d8
|
kern: SendSyncRequestLight, ReplyAndReceiveLight
|
2020-08-01 15:31:37 -07:00 |
|
Michael Scire
|
a7cc9dd743
|
kern: fix slab heap atomics
|
2020-08-01 15:31:37 -07:00 |
|
Michael Scire
|
a7de710f09
|
kern: implement KCodeMemory (and SVCs)
|
2020-08-01 15:31:36 -07:00 |
|
Michael Scire
|
c64e490663
|
kern: implement SvcGetThreadContext3
|
2020-08-01 15:31:35 -07:00 |
|
Michael Scire
|
be1314cb88
|
kern: implement thread pinning/SvcSynchronizePreemptionState
|
2020-08-01 15:31:34 -07:00 |
|
Michael Scire
|
b98450c9cf
|
kern: Map L1/L2 blocks when possible
|
2020-08-01 15:31:34 -07:00 |
|
Michael Scire
|
89cc6468f9
|
kern: improve KLightLock accuracy
|
2020-08-01 15:31:34 -07:00 |
|
Michael Scire
|
e096d11e3a
|
kern: fix assertion in KThread::(Try)Suspend
|
2020-08-01 15:31:33 -07:00 |
|
Michael Scire
|
fe566cd5f9
|
kern: fix hardware timer task corruption on core migration
|
2020-08-01 15:31:33 -07:00 |
|
Michael Scire
|
6935929c33
|
kern: SvcMapPhysicalMemoryUnsafe, SvcUnmapPhysicalMemoryUnsafe
|
2020-08-01 15:31:33 -07:00 |
|
Michael Scire
|
a56e8ca4b0
|
kern: General system stability improvements to enhance the user's experience.
|
2020-08-01 15:31:32 -07:00 |
|
Michael Scire
|
590036eeb8
|
kern: Fix bug in thread core migration
|
2020-08-01 15:31:32 -07:00 |
|
Michael Scire
|
10415aefee
|
kern: SvcUnmapPhysicalMemory, cleanup thread pinning
|
2020-08-01 15:31:31 -07:00 |
|
Michael Scire
|
dc8fccd168
|
kern: implement SvcMapPhysicalMemory
|
2020-08-01 15:31:31 -07:00 |
|
Michael Scire
|
4822da6fea
|
kern: finish SvcGetInfo
|
2020-08-01 15:31:30 -07:00 |
|
Michael Scire
|
b2af44006f
|
kern: Implement SecureMemory (system resource)
|
2020-08-01 15:31:30 -07:00 |
|
Michael Scire
|
a22d1d04f2
|
kern: implement SvcSleepSystem
|
2020-08-01 15:31:30 -07:00 |
|
Michael Scire
|
16ce69e333
|
kern: SvcInvalidateProcessDataCache
|
2020-08-01 15:31:30 -07:00 |
|
Michael Scire
|
4c5bab3a5b
|
kern: fix resource leak bugs
|
2020-08-01 15:31:29 -07:00 |
|
Michael Scire
|
c0c9fe5fd3
|
kern: SvcMapProcessCodeMemory, SvcUnmapProcessCodeMemory
|
2020-08-01 15:31:29 -07:00 |
|
Michael Scire
|
600a069f00
|
kern SvcGetCurrentProcessorNumber, SvcSetProcessActivity, half of SvcSetThreadActivity
|
2020-08-01 15:31:29 -07:00 |
|
Michael Scire
|
bfca682c3f
|
kern: SvcGetThreadCoreMask, SvcSetThreadCoreMask
|
2020-08-01 15:31:28 -07:00 |
|
Michael Scire
|
0cfdef738d
|
kern: implement transfer memory (and SVCs)
|
2020-08-01 15:31:28 -07:00 |
|
Michael Scire
|
670824fa0a
|
kern: implement process exit
|
2020-08-01 15:31:27 -07:00 |
|
Michael Scire
|
417ed5f01c
|
kern: implement SvcSetMemoryAttribute
|
2020-08-01 15:31:27 -07:00 |
|
Michael Scire
|
4d03635829
|
kern: fix bugs in interrupt permittance, DpcManager init
|
2020-08-01 15:31:26 -07:00 |
|
Michael Scire
|
df019af185
|
kern: SvcGetProcessInfo, SvcTerminateProcess
|
2020-08-01 15:31:26 -07:00 |
|
Michael Scire
|
0013041509
|
kern: KConditionVariable::SignalImpl
|
2020-08-01 15:31:26 -07:00 |
|
Michael Scire
|
fe48b9163d
|
kern: fully implement KSharedMemory (and Svcs)
|
2020-08-01 15:31:25 -07:00 |
|
Michael Scire
|
8cad49ee02
|
kern: add KProcess::Initialize (for non-kip processes)
|
2020-08-01 15:31:25 -07:00 |
|
Michael Scire
|
fcffa49fd5
|
kern: implement first half of SvcCreateProcess
|
2020-08-01 15:31:25 -07:00 |
|
Michael Scire
|
e760bd7038
|
kern: implement SvcMapProcessMemory, SvcUnmapProcessMemory
|
2020-08-01 15:31:24 -07:00 |
|
Michael Scire
|
4b3fb40ed9
|
kern: implement KThread::Finalize
|
2020-08-01 15:31:24 -07:00 |
|
Michael Scire
|
b26547b38c
|
kern: KDevicePageTable::Finalize, InfoType_RandomEntropy
|
2020-08-01 15:31:24 -07:00 |
|
Michael Scire
|
f8476cc761
|
kern: finish SvcGetSystemInfo
|
2020-08-01 15:31:23 -07:00 |
|
Michael Scire
|
70385eeec9
|
kern: fix asid tlb invalidation
|
2020-08-01 15:31:23 -07:00 |
|
Michael Scire
|
69274df795
|
kern: dump page table on user exception
|
2020-08-01 15:31:23 -07:00 |
|
Michael Scire
|
e30c8b6ac8
|
kern: implement SvcCancelSynchronization
|
2020-08-01 15:31:22 -07:00 |
|
Michael Scire
|
80f8b8b9b0
|
kern: fix bug in SvcSetThreadPriority
|
2020-08-01 15:31:21 -07:00 |
|
Michael Scire
|
ae68a9c38d
|
kern: SvcCreateSession, KDebug finalization
|
2020-08-01 15:31:21 -07:00 |
|
Michael Scire
|
eeb12eb4a2
|
kern: implement SvcDebugActiveProcess, svcGetDebugEvent, SvcWaitProcessWideKeyAtomic
|
2020-08-01 15:31:21 -07:00 |
|
Michael Scire
|
ba1d964100
|
kern: fix bug in KPageTableBase::SetupForIpcServer
|
2020-08-01 15:31:20 -07:00 |
|
Michael Scire
|
29a3bafb6f
|
kern: fix kscheduler interrupt api, adjust debug logging
|
2020-08-01 15:31:20 -07:00 |
|
Michael Scire
|
900a90a843
|
kern: fix bug in up/downcasting of scoped auto objects
|
2020-08-01 15:31:19 -07:00 |
|
Michael Scire
|
a22c0a84dd
|
kern: implement SvcSignalToAddress, SvcWaitForAddress
|
2020-08-01 15:31:19 -07:00 |
|
Michael Scire
|
811cf0768a
|
kern: add KAddressArbiter::WaitIfEqual
|
2020-08-01 15:31:19 -07:00 |
|
Michael Scire
|
e36b225951
|
kern: implement SvcSetHeapSize
|
2020-08-01 15:31:18 -07:00 |
|