Commit Graph

3354 Commits

Author SHA1 Message Date
David
2f64443d3b Implemented NVHOST_IOCTL_CHANNEL_GET_WAITBASE (#440)
* Implemented NVHOST_IOCTL_CHANNEL_GET_WAITBASE

struct + 4 seems to be hard coded at 0 and struct + 0 seems to be ignored?

* IocGetWaitbase -> IocChannelGetWaitbaseCommand

* Added super late fixes
2018-05-22 17:41:19 -04:00
bunnei
d15d8a9d74 Merge pull request #456 from Subv/unmap_buffer
Implemented nvhost-as-gpu's UnmapBuffer and nvmap's Free ioctls.
2018-05-20 23:54:50 -04:00
greggameplayer
48188573d6 Correct audio command numbers & add or rename some functions (#455)
* Add unknown function at the number command 2

* correct audout:u commands numbers

* correct audrec:u cmd number & add Unknown function

* correct IAudioDevice command numbers

* correct codecctl cmd numbers & rename the 8 function

* correct place of unknown function & fix clang-format
2018-05-20 23:48:44 -04:00
bunnei
c1cb9d16e1 Merge pull request #457 from Subv/mutex_waiters
Mutex: Do not assert when the mutex waiting threads list isn't empty on mutex release.
2018-05-20 23:44:44 -04:00
bunnei
6465a738d2 Merge pull request #445 from greggameplayer/patch-2
Properly rename functions of Fatal Module & add ThrowFatal to this module
2018-05-20 23:42:57 -04:00
Subv
77ae573dd8 Mutex: Do not assert when the mutex waiting threads list isn't empty on mutex release.
A thread may own multiple mutexes at the same time, and only release one of them while other threads are waiting for the other mutexes.
2018-05-20 14:41:58 -05:00
Subv
3934fd6100 GPU: Implemented the nvmap Free ioctl.
It releases a reference to an nvmap object
2018-05-20 14:25:57 -05:00
Subv
b0816c6229 GPU: Implemented nvhost-as-gpu's UnmapBuffer ioctl.
It removes a mapping previously created with the MapBufferEx ioctl.
2018-05-20 14:25:56 -05:00
Sebastian Valle
caf09dd999 Merge pull request #443 from ogniK5377/ipc-500
Added IPC RequestWithContext & ControlWithContext
2018-05-19 17:03:30 -05:00
greggameplayer
c436bb8409 Add and correct some Error Modules (#444)
* Add and correct some Error Modules
2018-05-19 17:02:24 -05:00
Subv
b4dfc95b64 Kernel/SVC: Signal the highest priority threads first in svcSignalProcessWideKey. 2018-05-19 16:58:30 -05:00
Subv
54ee84ccda Kernel/Threads: Reschedule the proper core when operating on that core's threads. 2018-05-19 16:57:44 -05:00
Subv
3676d65937 SVC: Removed unused WaitSynchronization1 function 2018-05-19 16:56:33 -05:00
greggameplayer
73403ea229 rename fatal:u functions & add ThrowFatal 2018-05-18 23:32:22 +02:00
greggameplayer
364fb0b47a Properly update fatal.h void name 2018-05-18 23:30:56 +02:00
greggameplayer
a3d8f81a4f Properly rename fatal module functions 2018-05-18 23:28:30 +02:00
David Marcec
9d033c49c5 Added RequestWithContext & ControlWithContext 2018-05-17 14:03:52 -07:00
Hexagon12
78edee6788 Updated nfp with more service names 2018-05-13 13:08:58 +03:00
bunnei
8f34d1cdc3 Merge pull request #436 from bunnei/multi-core
Initial support for multi-core
2018-05-11 12:59:23 -04:00
David Marcec
49126c08fd More accurate GetTPCMasks impl 2018-05-10 21:01:39 -07:00
bunnei
d7529c668a core: Add several missing docstrings. 2018-05-10 19:34:54 -04:00
bunnei
718a71843a thread: Rename mask to affinity_masks. 2018-05-10 19:34:53 -04:00
bunnei
187b2684c5 core: Run all CPU cores separately, even in single-thread mode. 2018-05-10 19:34:53 -04:00
bunnei
b38cb3cf5b thread: Support core change on ResumeFromWait and improve ChangeCore. 2018-05-10 19:34:53 -04:00
bunnei
b626902984 scheduler: Protect scheduling functions with a global mutex. 2018-05-10 19:34:52 -04:00
bunnei
bb674c639b thread: Initialize ideal_core and mask members. 2018-05-10 19:34:52 -04:00
bunnei
9ae80d3328 threading: Reschedule only on cores that are necessary. 2018-05-10 19:34:52 -04:00
bunnei
63e380ac05 svc: Implement GetThreadCoreMask and SetThreadCoreMask. 2018-05-10 19:34:51 -04:00
bunnei
8f08d3476c thread: Implement ChangeCore function. 2018-05-10 19:34:50 -04:00
bunnei
114fe3f2ab svc: SignalProcessWideKey should apply to all cores. 2018-05-10 19:34:49 -04:00
bunnei
1d11348f7e svc: Implement GetCurrentProcessorNumber. 2018-05-10 19:34:49 -04:00
bunnei
3e4416179e core: Add a configuration setting for use_multi_core. 2018-05-10 19:34:47 -04:00
bunnei
703e1b7fb4 core: Support session close with multicore. 2018-05-10 19:34:47 -04:00
bunnei
c5e0d82b9c core: Implement multicore support. 2018-05-10 19:34:46 -04:00
bunnei
17e8c38264 core: Create a thread for each CPU core, keep in lock-step with a barrier. 2018-05-10 19:34:46 -04:00
bunnei
56f512f16a core: Move common CPU core things to its own class. 2018-05-10 19:34:46 -04:00
Hexagon12
6f034978bd Stubs for QLaunch (#428)
* Stubs for QLaunch

* Wiped unrelated stuff

* Addressed comment

* Dropped GetPopFromGeneralChannelEvent
2018-05-07 11:27:30 -04:00
Max Thomas
8fb0979b3d hid: Tweaks, Analog Sticks (#435)
* hid: Update mouse/keyboard state

* hid: Working analog sticks

* hid: Nits

* hid: Nits

* hid: Update mystery sections

* hid: Tweaks
2018-05-07 11:06:02 -04:00
bunnei
9e3bd2cb65 Merge pull request #434 from lioncash/vdtor
memory_hook: Default virtual destructor in the cpp file
2018-05-03 15:09:14 -04:00
Lioncash
ffaa741df8 memory_hook: Default virtual destructor in the cpp file
Prevents creating multiple copies of the vtable in every translation unit that uses the class.
Also silences a -Wweak-vtables warning
2018-05-03 08:12:16 -04:00
Lioncash
4fdb83a407 core_timing: Don't include the log header in core timing's header
Avoids propagating logging macros and facilities to files that may not need them.
This also allows hiding an internal constant.
2018-05-03 08:00:15 -04:00
bunnei
06e953cfea Merge pull request #431 from lioncash/fmt
general: Make formatting of logged hex values more straightforward
2018-05-02 15:24:41 -04:00
Lioncash
dbd0182410 general: Make formatting of logged hex values more straightforward
This makes the formatting expectations more obvious (e.g. any zero padding specified
is padding that's entirely dedicated to the value being printed, not any pretty-printing
that also gets tacked on).
2018-05-02 09:49:36 -04:00
bunnei
76ec3f381f ipc: Add support for PopIpcInterface() method.
- This can be used for domain objects as inputs to service functions.
2018-05-01 21:57:44 -04:00
bunnei
0402c59cd8 Merge pull request #429 from Subv/ioctl_corruption
GPU: Don't write to invalid memory locations when handling ioctls that don't have an output.
2018-05-01 16:28:54 -04:00
David
09927a5981 GetSharedFontInOrderOfPriority (#381)
* GetSharedFontInOrderOfPriority

* Update pl_u.cpp

* Ability to use ReadBuffer and WriteBuffer with different buffer indexes, fixed up GetSharedFontInOrderOfPriority

* switched to NGLOG

* Update pl_u.cpp

* Update pl_u.cpp

* language_code is actually language code and not index

* u32->u64

* final cleanups
2018-05-01 16:28:36 -04:00
Subv
aceb380e07 GPU: Don't write to invalid memory locations when handling ioctls that don't have an output. 2018-05-01 14:54:15 -05:00
Lioncash
5d170ef55b core_timing: Namespace all functions and constants in core_timing's header
All of these variables and functions are related to timings and should be within the namespace.
2018-04-30 03:32:59 -04:00
Lioncash
7f198086e7 string_util: Remove StringFromFormat() and related functions
Given we utilize fmt, we don't need to provide our own functions for formatting anymore
2018-04-29 18:52:33 -04:00
bunnei
98859d4498 am: Fix GetDesiredLanguage implementation. 2018-04-29 11:07:07 -04:00