Commit Graph
326 Commits
Author SHA1 Message Date
Michael Scire 2f12dd039f microkernel: hot paths are pretty fucking hot 2020-12-02 02:14:24 -08:00
Michael Scire f058d04933 kern: update KConditionVariable to support new has_waiter_flag rules 2020-12-02 01:28:21 -08:00
Michael Scire 8e1a46b951 kern: fix SvcGetResourceLimitPeakValue 2020-12-01 19:29:17 -08:00
Michael Scire 24db70602f kern: fix copy/paste error 2020-12-01 19:21:45 -08:00
Michael Scire 4ce3778d87 kern: fix bugs caused by UB + transition to -Os 2020-12-01 18:41:44 -08:00
Michael Scire 6cc21e4d98 kern: reduce KMemoryRegionAllocator slab size 2020-12-01 17:31:21 -08:00
Michael Scire 8936e4d5d9 kern: assume that uart has been setup by secmon 2020-12-01 17:30:42 -08:00
Michael Scire a56bdab820 kern: add new overflow checks on KMemoryRegions 2020-12-01 17:14:23 -08:00
Michael Scire 866310937a kern: fix assertion in the multi-region pool partition code 2020-12-01 17:03:42 -08:00
Michael Scire cc7cf49c88 kern: improve KMemoryManager pool detection 2020-12-01 17:03:00 -08:00
Michael Scire 1e9a3c3f91 kern: update KMemoryRegion to store last address rather than size 2020-12-01 16:42:25 -08:00
Michael Scire 5002b17c71 kern: add KAlpha/KBeta 2020-12-01 16:32:30 -08:00
Michael Scire 3886c8707f kern: stubs for Svc39, 3A, 46, 47 2020-12-01 16:23:09 -08:00
Michael Scire 25e1d34017 KConditionVariable/KAddressArbiter: no need for global compare thread 2020-12-01 16:19:39 -08:00
Michael Scire b421e3eadb kern: implement 64-virtual-core interface 2020-12-01 15:54:31 -08:00
Michael Scire 72671d39ab kern: cleanup KThread, optimize/normalize KThreadQueue/KWaitObject 2020-12-01 15:19:29 -08:00
Michael Scire a4c4cf22c9 kern: improve KSynchronizationObject, kill KSynchronization 2020-12-01 14:58:35 -08:00
Michael Scire 6ea1955e94 kern: update for new interrupt event locking scheme 2020-12-01 14:17:25 -08:00
Michael Scire e81025af2e kern: fix sleep save/resume for new x18/tpidr scheme 2020-12-01 14:09:09 -08:00
Michael Scire 791638e6ba kern: fix race-crash on interrupt controller save, improve fatal output 2020-12-01 13:56:01 -08:00
Michael Scire 2e0378c724 kern: KObjectContainer::Register -> void 2020-12-01 13:49:30 -08:00
Michael Scire 59ada14680 kern: Kill KCoreLocalRegion 2020-12-01 13:41:37 -08:00
Michael Scire 25e944f519 kern: remove more of clc 2020-12-01 13:08:47 -08:00
Michael Scire 3e87b8ff17 kern: move scheduler/interrupt task manager out of core local region 2020-12-01 13:03:44 -08:00
Michael Scire 55502fcd0c kern: update KHardwareTimer, move out of KCoreLocalRegion 2020-12-01 07:47:29 -08:00
Michael Scire d3e3292bb8 kern: use single interrupt manager object 2020-12-01 07:35:43 -08:00
Michael Scire 33c568963d kern: fix unnecessary align-down 2020-12-01 07:22:05 -08:00
Michael Scire c374f1c5ce kern: fix error in SeparatePages 2020-12-01 07:19:03 -08:00
Michael Scire b3efdebeaf kern: remove KPageTableBase::MakeAndOpenContiguousPageGroup 2020-12-01 06:54:53 -08:00
Michael Scire b393f8f348 kern: implement DisableDeviceAddressSpaceMerge 2020-12-01 06:53:22 -08:00
Michael Scire 74e0ea1033 kern: SvcGetResourceLimitPeakValue 2020-12-01 06:07:18 -08:00
Michael Scire 1738a308c4 kern: KMemoryManager::Allocate -> AllocateAndOpen 2020-12-01 06:01:44 -08:00
Michael Scire 8fe7373ad2 kern: implement kmemoryblock/kmemoryinfo merge disable 2020-12-01 04:57:09 -08:00
Michael Scire 83dd25b894 kern: remove KMemoryAttribute_AnyLocked 2020-12-01 04:33:46 -08:00
Michael Scire 5217a78637 kern: update KMemoryBlockManagerUpdateAllocator api 2020-12-01 04:25:05 -08:00
Michael Scire 2f0470ff1c kern: implement new software-reserved page table bits 2020-12-01 04:14:58 -08:00
Michael Scire e6733fb2d4 kern: update KPageTableBase for new disable-merge attrs 2020-12-01 03:33:46 -08:00
SciresM 166318ba77 sdmmc: implement driver suitable for fs + bootloader
* sdmmc: begin skeletoning sdmmc driver

* sdmmc: add most of SdHostStandardController

* sdmmc: implement most of SdmmcController

* sdmmc: Sdmmc2Controller

* sdmmc: skeleton implementation of Sdmmc1Controller

* sdmmc: complete abstract logic for Sdmmc1 power controller

* sdmmc: implement gpio handling for sdmmc1-register-control

* sdmmc: implement pinmux handling for sdmmc1-register-control

* sdmmc: fix building for arm32 and in stratosphere context

* sdmmc: implement voltage enable/set for sdmmc1-register-control

* util: move T(V)SNPrintf from kernel to util

* sdmmc: implement BaseDeviceAccessor

* sdmmc: implement MmcDeviceAccessor

* sdmmc: implement clock reset controller for register api

* sdmmc: fix bug in WaitWhileCommandInhibit, add mmc accessors

* exo: add sdmmc test program

* sdmmc: fix speed mode extension, add CheckMmcConnection for debug

* sdmmc: add DeviceDetector, gpio: implement client api

* gpio: modernize client api instead of doing it the lazy way

* sdmmc: SdCardDeviceAccessor impl

* sdmmc: update test program to read first two sectors of sd card

* sdmmc: fix vref sel

* sdmmc: finish outward-facing api (untested)

* ams: changes for libvapours including tegra register defs

* sdmmc: remove hwinit
2020-10-30 11:54:30 -07:00
Michael Scire 2ee2a4f1ac docs/fatal error: update for 0.15.0 2020-10-26 16:00:34 -07:00
Michael Scire 2e7214b6fa kern: perform rescheduling on dispatch re-enable (closes #1169) 2020-10-13 23:07:51 -07:00
Michael Scire 388f9e6455 kern: minor behavioral fixes to condvar/address arbiter 2020-10-12 01:06:19 -07:00
Michael Scire 48b4dd48a4 ams: expose reboot payload for kernel panic 2020-09-18 00:43:55 -07:00
Michael Scire dbe59fd041 kern: fix KCodeMemory SVCs when Owner process != Generator process 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 76957e502d kern: add build-define for logging to iram ringbuffer 2020-09-17 08:26:08 -07:00
Michael Scire e36fe62fca kern: lps driver fixes, sleep confirmed working on 1.0.0 2020-09-07 10:43:35 -07:00
Michael Scire 870b589379 kern: fix c/p error 2020-09-07 10:43:35 -07:00
Michael Scire acdce230da kern: add debug logging on smmu error interrupt 2020-09-07 10:43:35 -07:00
Michael Scire 34dc062c11 kern: finish 1.x lps driver 2020-09-07 10:43:35 -07:00
Michael Scire ab2568ddfb kern: add most of 1.x lps driver 2020-09-07 10:43:35 -07:00