Commit graph

17548 commits

Author SHA1 Message Date
bunnei
9e80ed0809 Merge pull request #6156 from lioncash/lock-discard
kernel: Mark lock helper classes as [[nodiscard]]
2021-04-09 21:42:26 -07:00
bunnei
002c82fe84 Merge pull request #6113 from german77/playhistory
Friend: Stub GetPlayHistoryRegistrationKey
2021-04-09 20:50:13 -07:00
bunnei
888de61586 Merge pull request #6158 from german77/hidServiceTables
hid: Update service function tables
2021-04-09 16:10:06 -07:00
bunnei
43a5590457 Merge pull request #6162 from degasus/no_spin_loops
video_core: Avoid spin loops.
2021-04-09 11:52:18 -07:00
bunnei
57175bbfcb Merge pull request #6164 from Morph1984/service-update-12.x
service: Update service function tables
2021-04-09 10:59:27 -07:00
Morph
ffe138c59f ns: Update to 12.x 2021-04-09 00:49:47 -04:00
Morph
3abe1c588a aoc_u: Update to 12.x 2021-04-09 00:49:47 -04:00
Morph
992661e1f3 nim: Update to 12.x 2021-04-09 00:49:47 -04:00
Morph
2b9c5d0621 npns: Update to 12.x 2021-04-09 00:49:47 -04:00
Morph
6e9d0a685b bgtc: Update to 12.x and implement OpenTaskService 2021-04-09 00:49:47 -04:00
Morph
cbc35097e3 vi: Update to 12.x 2021-04-09 00:49:47 -04:00
Morph
b29271ae6d erpt: Update to 12.x 2021-04-09 00:49:46 -04:00
Morph
05af8f0000 btm: Update to 12.x 2021-04-09 00:49:46 -04:00
Morph
2f151af4f0 btdrv: Update to 12.x 2021-04-09 00:49:46 -04:00
bunnei
670bc84c9b Merge pull request #6168 from Morph1984/stub-SetNpadAnalogStickUseCenterClamp
service: hid: Stub SetAnalogStickUseCenterClamp
2021-04-08 21:16:47 -07:00
bunnei
f82684b920 Merge pull request #6155 from ameerj/kernel-12-rescnt
kernel: Increase event and session counts
2021-04-08 18:21:00 -07:00
bunnei
a1689d896d Merge pull request #6157 from Morph1984/am-update-12.x
service: am: Update service function tables
2021-04-08 16:37:59 -07:00
bunnei
c6fe54ec26 Merge pull request #6062 from ameerj/auto-stub
service: Add a toggle for auto stub fallback
2021-04-08 15:32:41 -07:00
bunnei
f90f9efda0 Merge pull request #6145 from lat9nq/nvhost_empty_memcpy
nvhost_nvdec_common: Avoid memcpy with null pointers
2021-04-08 13:23:05 -07:00
bunnei
1ecfc8c501 Merge pull request #6154 from lioncash/svcrange2
svc: Expand SVC tables
2021-04-08 09:21:55 -07:00
Morph
19b6ca175f service: hid: Stub SetAnalogStickUseCenterClamp
- Used by eBASEBALLパワフルプロ野球2020
2021-04-08 03:41:06 -04:00
bunnei
0fdb95b191 Merge pull request #6160 from Morph1984/fs-update-12.x
service: fs: Update service function tables
2021-04-07 20:54:42 -07:00
bunnei
d95f1ee25d Merge pull request #6143 from lat9nq/nvhost_null_memcpy
nvhost_ctrl_gpu: Avoid sending null pointer to memcpy
2021-04-07 16:50:22 -07:00
bunnei
58a4a78b03 Merge pull request #6159 from Morph1984/acc-update-12.x
service: acc: Update service function tables
2021-04-07 14:37:59 -07:00
Markus Wick
c529592f63 video_core: Use a CV for blocking commands.
There is no need for a busy loop here. Let's just use a condition variable to save some power.
2021-04-07 22:38:52 +02:00
Markus Wick
48492bbb9b video_core/gpu_thread: Keep the write lock for allocating the fence.
Else the fence might get submited out-of-order into the queue, which makes testing them pointless.
Overhead should be tiny as the mutex is just moved from the queue to the writing code.
2021-04-07 22:38:52 +02:00
Markus Wick
37ae463f9e video_core/gpu_thread: Implement a ShutDown method.
This was implicitly done by `is_powered_on = false`, however the explicit method allows us to block until the GPU is actually gone.

This should fix a race condition while removing the other subsystems while the GPU is still active.
2021-04-07 22:38:52 +02:00
Markus Wick
b529aba9ce common/threadsafe_queue: Provide Wait() method.
It shall block until there is something to consume in the queue.

And use it for the GPU emulation instead of the spin loop.
This is only in booting the emulator, however in BOTW this is the case for about 1 second.
2021-04-07 22:38:52 +02:00
bunnei
7b2593bf33 Merge pull request #6130 from degasus/better_assert_handling
common: Move assert failure handling into a cpp file.
2021-04-07 13:35:41 -07:00
bunnei
0faeb989ae Merge pull request #6153 from lioncash/svcrange
process_capability: Handle extended SVC range
2021-04-07 13:01:40 -07:00
bunnei
0b402075bf Merge pull request #6161 from Morph1984/audio-update-12.x
service: audio: Update service function tables
2021-04-07 10:39:05 -07:00
Morph
8e0af1dfc7 hwopus: Update to 12.x 2021-04-07 02:57:39 -04:00
Morph
7459159160 IFile: Update to 12.x 2021-04-07 02:49:19 -04:00
Morph
919ae391b6 fsp-srv: Update to 12.x 2021-04-07 02:46:29 -04:00
Morph
80c77942b0 dauth_o: Update to 11.x 2021-04-07 02:15:55 -04:00
Morph
6bf678129e acc_u1: Update to 12.x 2021-04-07 02:15:55 -04:00
Morph
a08f4eb309 acc_su: Update to 12.x 2021-04-07 02:15:55 -04:00
german77
db13bf47f3 hid: Update service function tables 2021-04-07 01:15:38 -05:00
Morph
7918ed83c0 ISelfController: Update to 11.x 2021-04-07 02:00:19 -04:00
Morph
147cda9523 IApplicationFunctions: Update to 11.x 2021-04-07 01:59:35 -04:00
Morph
19dd87d858 IDebugFunctions: Update to 12.x 2021-04-07 01:53:04 -04:00
Morph
502bef82a9 ICommonStateGetter: Update to 12.x 2021-04-07 01:53:04 -04:00
Morph
a0dade1318 IGlobalStateController: Update to 12.x 2021-04-07 01:53:04 -04:00
Morph
8d7f255da5 IHomeMenuFunctions: Update to 12.x 2021-04-07 01:53:04 -04:00
Lioncash
a875393fdb Amend bizarre clang-format suggestions 2021-04-07 01:52:08 -04:00
Lioncash
1af23a44b4 k_scoped_scheduler_lock_and_sleep: Mark class as [[nodiscard]]
Prevents logic bugs from slipping through.
2021-04-07 01:45:04 -04:00
Lioncash
e295cb0474 k_scoped_lock: delete copy and move assignment operators
If we delete the copy and move constructor, we should also be deleting
the copy and move assignment operators (and even if this were intended,
it would be pretty odd to not document why it's done this way).
2021-04-07 01:25:57 -04:00
Lioncash
923efb53d7 k_scoped_lock: Mark class as [[nodiscard]]
Prevents logic bugs of the kind described in the previous commit from
slipping through.
2021-04-07 01:23:08 -04:00
Lioncash
cd6ea98890 k_scheduler: Mark KScopedSchedulerLock as [[nodiscard]]
Prevents logic bugs like:

KScopedSchedulerLock{kernel};

instead of:

KScopedSchedulerLock lk{kernel};

from slipping through.
2021-04-07 01:19:29 -04:00
ameerj
c7a0ebbba7 kernel: Increase event and session counts
12.x increased the number of available sessions and event resource counts
2021-04-07 01:01:05 -04:00