aboutsummaryrefslogtreecommitdiff
path: root/src/core
AgeCommit message (Collapse)Author
2018-04-24Merge pull request #388 from bunnei/refactor-rasterizer-cachebunnei
Refactor rasterizer cache
2018-04-24gl_rasterizer_cache: Update to be based on GPU addresses, not CPU addresses.bunnei
2018-04-24loader: Move old logging macros over to new fmt-capable onesLioncash
2018-04-24service: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24vi: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24time: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24ssl: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24spl: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24sockets: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24sm: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24set: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24pctl: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24nvflinger: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24nvdrv: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24ns: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24nifm: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24nfp: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24lm: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24hid: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24friend: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24filesystem: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24fatal: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24audio: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24apm: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24aoc: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24am: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24acc: Move logging macros over to new fmt-compatible onesLioncash
2018-04-24Service/FS: implement IFileSystem::RenameFilemailwl
2018-04-23Merge pull request #370 from Subv/sync_primitivesbunnei
Kernel: Reworked the new kernel synchronization primitives.
2018-04-23Merge pull request #384 from Subv/nvhost-remapbunnei
Nvdrv/nvhost-as-gpu: Implemented the ioctl REMAP command.
2018-04-23Kernel: Implemented mutex priority inheritance.Subv
Verified with a hwtest and implemented based on reverse engineering. Thread A's priority will get bumped to the highest priority among all the threads that are waiting for a mutex that A holds. Once A releases the mutex and ownership is transferred to B, A's priority will return to normal and B's priority will be bumped.
2018-04-23NvDrv/nvhost-as-gpu: Ensure that the object passed to MapBufferEx has ↵Subv
already been allocated. Also added a consistency check and a comment for the case when the object id is different than its handle. The real nvservices doesn't make a distinction between ids and handles, each object gets an unique handle which doubles as its id.
2018-04-23Nvdrv/nvhost-as-gpu: Implemented the ioctl REMAP command.Subv
It takes a previously-reserved (AllocateSpace) GPU memory address and maps it to the address of the nvmap object passed to Remap.
2018-04-23Nvdrv: Assert when receiving an unimplemented ioctl in the nv* handlers.Subv
2018-04-20Kernel: Use 0x2C as default main thread priority for homebrew and lone NRO/NSOsSubv
2018-04-20Qt: Update the WaitTree widget to show info about the current mutex of each ↵Subv
thread.
2018-04-20Kernel: Remove unused ConditionVariable class.Subv
2018-04-20Kernel: Remove old and unused Mutex code.Subv
2018-04-20Kernel: Properly implemented svcWaitProcessWideKey and svcSignalProcessWideKeySubv
They work in tandem with guest code to provide synchronization primitives along with svcArbitrateLock/Unlock
2018-04-20Kernel: Corrected the implementation of svcArbitrateLock and svcArbitrateUnlock.Subv
Switch mutexes are no longer kernel objects, they are managed in userland and only use the kernel to handle the contention case. Mutex addresses store a special flag value (0x40000000) to notify the guest code that there are still some threads waiting for the mutex to be released. This flag is updated when a thread calls ArbitrateUnlock. TODO: * Fix svcWaitProcessWideKey * Fix svcSignalProcessWideKey * Remove the Mutex class.
2018-04-20Merge pull request #372 from lioncash/enumbunnei
resource_limit: Make ResourceTypes an enum class
2018-04-20core: Relocate g_service_manager to the System classLioncash
Converts the service manager from a global into an instance-based variable.
2018-04-20resource_limit: Make ResourceTypes an enum classLioncash
Prevents enum identifiers from leaking into the surrounding scope.
2018-04-20Merge pull request #340 from mailwl/vi-updatebunnei
Service/VI: stub SetLayerVisibility, fix GetDisplayResolution output
2018-04-20Merge pull request #367 from lioncash/clampbunnei
math_util: Remove the Clamp() function
2018-04-20math_util: Remove the Clamp() functionLioncash
C++17 adds clamp() to the standard library, so we can remove ours in favor of it.
2018-04-20Merge pull request #360 from lioncash/namespacesbunnei
service: Use nested namespace specifiers where applicable
2018-04-20Merge pull request #363 from lioncash/array-sizebunnei
common_funcs: Remove ARRAY_SIZE macro
2018-04-19common_funcs: Remove ARRAY_SIZE macroLioncash
C++17 has non-member size() which we can just call where necessary.
2018-04-19service: Use nested namespace specifiers where applicableLioncash
Tidies up namespace declarations