summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorpurpasmart96 <kanzoconfigz@hotmail.com>2014-12-18 06:35:12 +0100
committerpurpasmart96 <kanzoconfigz@hotmail.com>2014-12-19 01:39:55 +0100
commitb2c64eb5ff4f0dfcbc8218b20d26541c89bda514 (patch)
tree052eea81d16453803e3fa93eb8b66b39a450bd5c /src
parentMerge pull request #298 from lioncash/flags (diff)
downloadyuzu-b2c64eb5ff4f0dfcbc8218b20d26541c89bda514.tar
yuzu-b2c64eb5ff4f0dfcbc8218b20d26541c89bda514.tar.gz
yuzu-b2c64eb5ff4f0dfcbc8218b20d26541c89bda514.tar.bz2
yuzu-b2c64eb5ff4f0dfcbc8218b20d26541c89bda514.tar.lz
yuzu-b2c64eb5ff4f0dfcbc8218b20d26541c89bda514.tar.xz
yuzu-b2c64eb5ff4f0dfcbc8218b20d26541c89bda514.tar.zst
yuzu-b2c64eb5ff4f0dfcbc8218b20d26541c89bda514.zip
Diffstat (limited to 'src')
-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"},