Michael Scire
|
53e7aa0a20
|
kern: add KPageTableBase::Read/WriteDebugIoMemory
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
1fce7b08b1
|
kern: update KMemoryBlockManagerUpdaterAllocator for new ctor/init semantics
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
c216f92a91
|
kern: swap tpidr_el1/cntv_cval_el0 as scratch vs exception stack
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
2f930c2d5f
|
kern: support immortal processes
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
256eb92f4c
|
kern: update process/thread for new running/termination semantics
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
f67d1b7026
|
kern: update KInterruptEvent to store core id
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
e64fef109c
|
kern: update pinned thread priority rules
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
2fb258ca7e
|
kern: update KInitialPageTable/KInitialPageAllocator
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
962cf97150
|
kern: KLinkedList no longer exists
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
4b9e7c7d27
|
kern: bump svc limit to 192 from 128
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
d84dcb653d
|
ams: prefer construct_at/destroy_at over placement new/explicit destructor
|
2021-03-21 20:30:40 -07:00 |
|
Michael Scire
|
aff0da9427
|
ams: remove TYPED_STORAGE() macro in favor of template
|
2021-03-21 18:47:30 -07:00 |
|
Michael Scire
|
621520c30b
|
kern: fix support for virtual core IDs
|
2021-02-05 14:59:03 -08:00 |
|
Michael Scire
|
1e643f7ab0
|
kern: further codegen tweaks
|
2021-01-08 02:35:29 -08:00 |
|
Michael Scire
|
4aa18b06e8
|
kern: greatly improve codegen for atomics, scheduler
|
2021-01-08 02:13:43 -08:00 |
|
Michael Scire
|
8bfda27e0e
|
kern: remove target-firmware logic for kernel loader
|
2020-12-29 12:21:41 -08:00 |
|
Michael Scire
|
113ab8439d
|
kern: fix KTrace buffer memory region type to match official kernel
|
2020-12-28 00:57:45 -08:00 |
|
Michael Scire
|
968f50bc07
|
kern: refactor to use m_ for member variables
|
2020-12-18 13:31:01 -08:00 |
|
Michael Scire
|
f7e83a72a9
|
kern: fix generic KDevicePageTable
|
2020-12-16 14:33:07 -08:00 |
|
Michael Scire
|
f6b847177a
|
kern: fix LegacyNFiq interrupt ID
|
2020-12-16 14:28:24 -08:00 |
|
Michael Scire
|
a6d40e85f1
|
kern: fix linear region printing output
|
2020-12-14 21:18:14 -08:00 |
|
Michael Scire
|
4b71e3a87e
|
kern: implement process cpu utilization debug
|
2020-12-12 05:34:31 -08:00 |
|
Michael Scire
|
9a6cca7499
|
kern: add page table contents debug
|
2020-12-11 19:30:48 -08:00 |
|
Michael Scire
|
7fb902d8fb
|
kern: update for 11.0.1
|
2020-12-11 02:59:09 -08:00 |
|
Michael Scire
|
be8473cf65
|
kern: implement memory debug
|
2020-12-10 16:32:19 -08:00 |
|
Michael Scire
|
1a6e003a5d
|
kern: add kernel object debug
|
2020-12-10 03:31:57 -08:00 |
|
Michael Scire
|
0acd79c8c2
|
kern: implement port debug
|
2020-12-10 01:44:27 -08:00 |
|
Michael Scire
|
8a4bf6a0a8
|
kern: add handle table/process/suspend/resume debug
|
2020-12-09 23:44:36 -08:00 |
|
Michael Scire
|
af259eabda
|
kern: implement thread call stack debug
|
2020-12-09 22:49:04 -08:00 |
|
Michael Scire
|
bcc7eed037
|
kern: add debug thread dump
|
2020-12-09 05:59:54 -08:00 |
|
Michael Scire
|
2de85c633a
|
exo/meso/fusee: support dynamic control of log port/baud rate
|
2020-12-07 19:25:06 -08:00 |
|
Michael Scire
|
972283032a
|
kern: tweak KScopedAutoObject
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
57f935391d
|
kern: allow non-inline GetObjectForIpc
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
4804e1e1e0
|
kern: fix KHandleTable null deref in ipc
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
4ae74b9b4e
|
kern: session mapping getters are on the hotpath
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
3c8e7de915
|
kern: fix bugs caused by UB + transition to -Os
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
3d4ab95ab2
|
kern: allow non-inline KSchedulerLock::Lock
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
152def19c0
|
kern: build as -Os instead of -O2
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
2b483866c7
|
kern: assume that uart has been setup by secmon
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
7e1da15f6e
|
kern: update Initialize0 to account for new ordering
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
0a1465f198
|
kern: add new overflow checks on KMemoryRegions
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
1ca64cf2a1
|
kern: improve KMemoryManager pool detection
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
aac8af8bf5
|
kern: update KMemoryRegion to store last address rather than size
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
5da6b60008
|
kern: add KAlpha/KBeta
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
56c6e4244a
|
kern: remove now unused SetupFor*Compare funcs
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
c8ebd7eea0
|
KConditionVariable/KAddressArbiter: no need for global compare thread
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
28f9b534b6
|
kern: implement 64-virtual-core interface
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
8b2ed36698
|
kern: cleanup KThread, optimize/normalize KThreadQueue/KWaitObject
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
1852fe8612
|
kern: improve KSynchronizationObject, kill KSynchronization
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
b60054dba1
|
kern: update for new interrupt event locking scheme
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
783f1077be
|
kern: KObjectContainer::Register -> void
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
b0debd72a7
|
kern: Kill KCoreLocalRegion
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
24d545701c
|
kern: remove more of clc
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
aae565629e
|
kern: move scheduler/interrupt task manager out of core local region
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
bee629b8ad
|
kern: update KHardwareTimer, move out of KCoreLocalRegion
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
5cb237d030
|
kern: use single interrupt manager object
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
08cfee54fa
|
kern: fix re-order/assert in KMemoryBlock
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
7b279ab863
|
kern: remove KPageTableBase::MakeAndOpenContiguousPageGroup
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
6a85f7225d
|
kern: implement DisableDeviceAddressSpaceMerge
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
f469dfbeb3
|
kern: SvcGetResourceLimitPeakValue
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
cc11d452e5
|
kern: KMemoryManager::Allocate -> AllocateAndOpen
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
3bce008170
|
kern: implement kmemoryblock/kmemoryinfo merge disable
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
3383509da6
|
kern: remove KMemoryAttribute_AnyLocked
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
281dcf232a
|
kern: update KMemoryBlockManagerUpdateAllocator api
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
71a2fe1bb6
|
kern: implement new software-reserved page table bits
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
4a216dc928
|
kern: update KPageTableBase for new disable-merge attrs
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
2e7214b6fa
|
kern: perform rescheduling on dispatch re-enable (closes #1169)
|
2020-10-13 23:07:51 -07:00 |
|
Michael Scire
|
9b65daf439
|
kern: default to release config
|
2020-09-17 08:26:08 -07:00 |
|
Michael Scire
|
4acdc899f5
|
kern: generate fatal error on panic
|
2020-09-17 08:26:08 -07:00 |
|
Michael Scire
|
4dc728824f
|
kern: skeleton legacy lps driver
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
49af4fae32
|
kern: begin 1.0.0 backwards compat changes (kips run, full boot fails)
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
e8ffbe630f
|
kern: support 2-pool layout on 2.x-4.x instead of modern 4-pool layout
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
ce95af89ef
|
kern: change terminology metadata -> management
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
546e2de300
|
kern: pool management should be within carveout
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
11b120b667
|
kern: fix phys/virt pool management mixup
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
1983f86875
|
kern: revamp KMemoryRegionType to better encode derivation hierarchies
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
d50c7c5c79
|
kern: PMC must be user-mappable for 1.0.0 compat
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
bb11c57e7d
|
kern: fix warn-errors
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
fac502aaa3
|
kern: fix KTypedAddress, strengthen assertions
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
47f2e93a42
|
kern: add version bounds checking
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
56ec55f3c4
|
kern: avoid hardcoding maximum board memory size
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
1a262c1063
|
kern: improve resource region size definitions/calculations
|
2020-08-18 15:17:40 -07:00 |
|
fincs
|
68e29b56b6
|
kern: add stubbed KDevicePageTable implementation for systems without iommu
|
2020-08-18 15:17:40 -07:00 |
|
fincs
|
b917ea283e
|
kern: make GetTargetFirmware a compile-time constant when not building for Switch
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
48e8562033
|
kern: use common GIC implementation for arm/arm64
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
f07bd0e337
|
kern: correct flushing of init arguments
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
b5f2698bf0
|
kern: fix multicore instruction cache invalidation
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
f058536b59
|
kern: add tracing for irq/scheduling
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
8e5c0a9663
|
kern: cleanup some KMemoryManager functions
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
1b63002f91
|
kern: refactor KMemoryLayout
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
cda15f08d8
|
kern: mark KThread/KProcess.GetId() final to save virtual calls
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
e1bd6fb874
|
kern: fix missing scheduler updates in KLightLock/Exception, fix RequestScheduleOnInterrupt
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
920b017677
|
kern: implement svc trace
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
f9d68db3f6
|
kern: SvcChangeKernelTraceState
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
73798cb812
|
kern: build with -Wextra
|
2020-08-17 14:20:24 -07:00 |
|
Michael Scire
|
51b5c3d87d
|
ams: avoid UB infinite loops
|
2020-08-13 17:28:29 -07:00 |
|
Michael Scire
|
5d462c626c
|
kern: SvcReturnFromException
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
5c4fbf5c67
|
kern SvcGetDebugThreadContext, SvcSetDebugThreadContext
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3afd723b92
|
kern: SvcGetDebugThreadParam
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
e1f3bb10a5
|
kern: clean up majority of TODOs
|
2020-07-31 14:50:52 -07:00 |
|