Commit Graph

2439 Commits

Author SHA1 Message Date
Subv 0cbdc51126 Services/APT: Use the right error codes in ReceiveParameter and GlanceParameter when the parameter doesn't exist. 2017-07-21 14:59:21 -05:00
Subv 8d8af4107f Services/APT: Use boost::optional for the APT parameter structure. 2017-07-21 14:59:20 -05:00
bunnei 3fc4ccce57 telemetry: Log performance, configuration, and system data. 2017-07-17 21:32:28 -04:00
B3n30 2f96c4d775 stubbed frd::UnscrambleLocalFriendCode (#2827) 2017-07-16 21:32:08 -05:00
Weiyi Wang 4bf8c56b48 Merge pull request #2784 from wwylele/font-archive
load shared font from system archive
2017-07-16 20:12:55 +03:00
bunnei 6c8c5bbcb7 web_service: Add CMake flag to enable. 2017-07-11 18:33:41 -04:00
bunnei eded47da7e telemetry_session: Use TelemetryJson to submit real telemetry. 2017-07-11 18:33:40 -04:00
bunnei 8f3ac83ce4 web_service: Add skeleton project. 2017-07-10 00:15:40 -04:00
bunnei 2c3df70d97 settings: Add telemetry endpoint URL. 2017-07-10 00:15:39 -04:00
Sebastian Valle 038b59ca3c Merge pull request #2815 from mailwl/bossp
Service/boss:P: Add some functions to FunctionTable
2017-07-08 13:58:40 -05:00
bunnei eca281b3ef Merge pull request #2797 from yuriks/cached-vma-free-crash
Memory: Fix crash when unmapping a VMA covering cached surfaces
2017-07-08 14:07:47 -04:00
mailwl 36d9eaba14 Service/boss:P: Add some functions to FunctionTable 2017-07-01 12:21:38 +03:00
Sebastian Valle c184a63255 Merge pull request #2793 from Subv/replyandreceive
Kernel/SVC: Partially implemented svcReplyAndReceive
2017-06-29 17:05:22 -05:00
Subv cd907b8cde Kernel/SVC: Pass the current thread as a parameter to ClientSession::SendSyncRequest. 2017-06-29 12:30:34 -05:00
wwylele 717f7e56ad gpu: add comments for TextureCopy 2017-06-29 13:09:23 +03:00
wwylele f1d1d5d8ed gpu: fix edge cases for TextureCopy 2017-06-27 23:20:23 +03:00
Sebastian Valle e1b9ed4365 Merge pull request #2778 from Subv/uds_more
Services/UDS: Stub SendTo to generate the unencrypted data frames with the right headers
2017-06-26 19:35:52 -05:00
Subv 58612f4a31 UDS: Use the ToDS and FromDS fields to properly calculate the AAD used during encryption. 2017-06-26 12:24:14 -05:00
Subv cd394fbeaf UDS: Move the UDS keyslot used to generate the CCMP key to the AES::KeySlotID enum. 2017-06-26 12:24:13 -05:00
Subv d2ba08707d UDS: Run clang-format. 2017-06-26 12:24:11 -05:00
Subv 1fc6fa3d6b UDS: Added functions to encrypt and decrypt the data frames.
The responsibility of encryption and encapsulation into an 802.11 MAC frame will fall into the callers of GenerateDataPayload.
2017-06-26 12:24:09 -05:00
Subv 059f8a8825 Kernel/Sessions: Clean up the list of pending request threads of a session when the client endpoint is closed. 2017-06-25 23:38:29 -05:00
Subv f678e7e3b9 Kernel/SVC: Partially implemented svcReplyAndReceive.
It behaves mostly as WaitSynchronizationN with wait_all = false, except for IPC buffer translation.

The target thread of an IPC response will now wake up when responding.
IPC buffer translation is currently not implemented.
Error passing back to svcSendSyncRequest is currently not implemented.
2017-06-25 23:38:28 -05:00
wwylele 456ccc24ea apt: load shared font from system archive 2017-06-26 01:38:12 +03:00
wwylele 7b618a0580 apt/shared_font: don't relocate zero offset 2017-06-26 00:43:23 +03:00
Subv ab78b9d946 Kernel/ServerSession: Keep track of which threads have issued sync requests. 2017-06-25 14:47:25 -05:00
Yuri Kunde Schlesner 67a32afbae Kernel: Implement AcceptSession SVC 2017-06-23 11:26:37 -07:00
Yuri Kunde Schlesner ea86900654 Kernel: Fix SVC wrapper for CreatePort
The return parameters were flipped.
2017-06-23 11:22:04 -07:00
Yuri Kunde Schlesner ce52d3e547 Kernel: Implement CreateSessionToPort SVC 2017-06-23 11:22:02 -07:00
Yuri Kunde Schlesner 94e9409c69 Merge pull request #2798 from yuriks/svc-create-session
Kernel: Implement CreateSession SVC
2017-06-23 11:18:49 -07:00
Yuri Kunde Schlesner 494aa33776 Kernel: Implement CreateSession SVC 2017-06-22 00:39:27 -07:00
Yuri Kunde Schlesner 3d58489b0f Memory: Fix crash when unmapping a VMA covering cached surfaces
Unmapping pages tries to flush any cached GPU surfaces touching that
region. When a cached page is invalidated, GetPointerFromVMA() is used
to restore the original pagetable pointer. However, since that VMA has
already been deleted, this hits an UNREACHABLE case in that function.

Now when this happens, just set the page type to Unmapped and continue,
which arrives at the correct end result.
2017-06-21 22:56:31 -07:00
Yuri Kunde Schlesner 93552a54c0 Kernel/IPC: Support translation of null handles
Missed this in my first implementation. Thanks to @wwylele for pointing
out that this was missing.
2017-06-21 14:27:03 -07:00
Weiyi Wang b9fac62554 Merge pull request #2789 from yuriks/misc-kernel
Trivial no-op additions
2017-06-21 20:34:12 +03:00
Yuri Kunde Schlesner 5e01d42878 Merge pull request #2790 from yuriks/remove-movefrom
Remove ResultVal::MoveFrom
2017-06-20 22:04:09 -07:00
Yuri Kunde Schlesner 79e81d2b71 Memory: Add enum definitions for the n3DS FCRAM size 2017-06-20 22:03:25 -07:00
Sebastian Valle 6d958bd204 Merge pull request #2779 from Subv/uds_more2
UDS: Added a hook for updating the connection status when a client connects to the network.
2017-06-21 02:29:00 +00:00
Yuri Kunde Schlesner 3cf6fe8626 ResultVal: Remove MoveFrom()
Replace it with std::move(result_val).Unwrap(), or Foo().Unwrap() in
case you already have an rvalue.
2017-06-18 19:03:15 -07:00
Yuri Kunde Schlesner e386c8ad5b ResultVal: Add an rvalue overload of Unwrap() 2017-06-18 18:49:46 -07:00
Yuri Kunde Schlesner e564c8798f Kernel: Add comment about the extended linear heap area 2017-06-18 18:38:40 -07:00
Yuri Kunde Schlesner 88f3c16ce6 Kernel/IPC: Make HLERequestContext usable from outside kernel 2017-06-18 16:05:12 -07:00
Subv d48f5b55bb UDS: Clarify comment about the first 4 bytes of the SecureData header.
It is likely that these 4 bytes are actually a different header, part of some protocol that encapsulates the SecureData protocol.
2017-06-15 12:08:55 -05:00
Subv 2fac6e6f8c UDS: Return the correct error messages in SendTo when not connected to a network or trying to send to itself. 2017-06-15 12:08:54 -05:00
Subv 24bc07c5f3 UDS: Stub SendTo to generate the unencrypted data frame with the right headers. 2017-06-15 12:08:53 -05:00
Subv 60192d066e UDS: Added a hook for updating the connection status when a client connects to the network. 2017-06-15 11:57:49 -05:00
Sebastian Valle 2d35a08d96 Services/UDS: Set the proper bit in the ConnectionStatus structure when creating a network. (#2738)
* Services/UDS: Set the proper bit in the ConnectionStatus structure when creating a network.

This lets the application know that the host was successfully added to the session.

* Services/UDS: Reset the connection status when destroying the network

* Services/UDS: Reset the connection status's bitmask of changed nodes after reporting it to the game.
2017-06-13 22:00:58 +03:00
Yuri Kunde Schlesner 05d4d75ff5 Kernel/IPC: Use boost::small_vector for HLE context objects 2017-06-11 16:34:13 -07:00
Yuri Kunde Schlesner 41502f3469 Kernel: Allow clearing request_objects to re-use buffer space
Reduces the necessary allocation to max(in_handles, out_handles) rather
than (in_handles + out_handles).
2017-06-11 13:10:21 -07:00
Yuri Kunde Schlesner be54164695 Kernel: Basic support for IPC translation for HLE services 2017-06-11 13:10:21 -07:00
Yuri Kunde Schlesner b23625c1fb Service/sm: Convert srv: to use IPC helpers 2017-06-11 13:10:21 -07:00