summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2014-12-19 05:40:10 +0100
committerbunnei <bunneidev@gmail.com>2014-12-19 05:40:10 +0100
commit017e6a488efa399bea0f5a3ca83be89bc9e1a678 (patch)
treefc37a7ed311c6ddfc5cd51b6dc4e64fa97ea327f
parentMerge pull request #308 from Subv/more_savedata (diff)
parentGSP_GPU: Shut up FlushDataCache (diff)
downloadyuzu-017e6a488efa399bea0f5a3ca83be89bc9e1a678.tar
yuzu-017e6a488efa399bea0f5a3ca83be89bc9e1a678.tar.gz
yuzu-017e6a488efa399bea0f5a3ca83be89bc9e1a678.tar.bz2
yuzu-017e6a488efa399bea0f5a3ca83be89bc9e1a678.tar.lz
yuzu-017e6a488efa399bea0f5a3ca83be89bc9e1a678.tar.xz
yuzu-017e6a488efa399bea0f5a3ca83be89bc9e1a678.tar.zst
yuzu-017e6a488efa399bea0f5a3ca83be89bc9e1a678.zip
-rw-r--r--src/core/hle/service/gsp_gpu.cpp26
1 files changed, 25 insertions, 1 deletions
diff --git a/src/core/hle/service/gsp_gpu.cpp b/src/core/hle/service/gsp_gpu.cpp
index db8027142..8c9ad2712 100644
--- a/src/core/hle/service/gsp_gpu.cpp
+++ b/src/core/hle/service/gsp_gpu.cpp
@@ -145,6 +145,30 @@ static void SetBufferSwap(Service::Interface* self) {
}
/**
+ * GSP_GPU::FlushDataCache service function
+ *
+ * This Function is a no-op, We aren't emulating the CPU cache any time soon.
+ *
+ * Inputs:
+ * 1 : Address
+ * 2 : Size
+ * 3 : Value 0, some descriptor for the KProcess Handle
+ * 4 : KProcess handle
+ * Outputs:
+ * 1 : Result of function, 0 on success, otherwise error code
+ */
+static void FlushDataCache(Service::Interface* self) {
+ u32* cmd_buff = Kernel::GetCommandBuffer();
+ u32 address = cmd_buff[1];
+ u32 size = cmd_buff[2];
+ u32 process = cmd_buff[4];
+
+ // TODO(purpasmart96): Verify return header on HW
+
+ cmd_buff[1] = RESULT_SUCCESS.raw; // No error
+}
+
+/**
* GSP_GPU::RegisterInterruptRelayQueue service function
* Inputs:
* 1 : "Flags" field, purpose is unknown
@@ -335,7 +359,7 @@ const Interface::FunctionInfo FunctionTable[] = {
{0x00050200, SetBufferSwap, "SetBufferSwap"},
{0x00060082, nullptr, "SetCommandList"},
{0x000700C2, nullptr, "RequestDma"},
- {0x00080082, nullptr, "FlushDataCache"},
+ {0x00080082, FlushDataCache, "FlushDataCache"},
{0x00090082, nullptr, "InvalidateDataCache"},
{0x000A0044, nullptr, "RegisterInterruptEvents"},
{0x000B0040, nullptr, "SetLcdForceBlack"},