diff options
author | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2015-09-14 22:00:45 +0200 |
---|---|---|
committer | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2015-09-14 22:00:45 +0200 |
commit | b3af7aad9e37ee49feb9ff4e34ed4314f7ed644b (patch) | |
tree | ac792d257440cf78d0c0bdf2e515da5fc4943bff /src/core/hle/service/gsp_gpu.h | |
parent | Merge pull request #1111 from LittleWhite-tb/qt-close-renderwindow (diff) | |
parent | GSP: Implement command 0x05, used for flushing caches (diff) | |
download | yuzu-b3af7aad9e37ee49feb9ff4e34ed4314f7ed644b.tar yuzu-b3af7aad9e37ee49feb9ff4e34ed4314f7ed644b.tar.gz yuzu-b3af7aad9e37ee49feb9ff4e34ed4314f7ed644b.tar.bz2 yuzu-b3af7aad9e37ee49feb9ff4e34ed4314f7ed644b.tar.lz yuzu-b3af7aad9e37ee49feb9ff4e34ed4314f7ed644b.tar.xz yuzu-b3af7aad9e37ee49feb9ff4e34ed4314f7ed644b.tar.zst yuzu-b3af7aad9e37ee49feb9ff4e34ed4314f7ed644b.zip |
Diffstat (limited to 'src/core/hle/service/gsp_gpu.h')
-rw-r--r-- | src/core/hle/service/gsp_gpu.h | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/core/hle/service/gsp_gpu.h b/src/core/hle/service/gsp_gpu.h index 8bcb30ad1..0e2f7a21e 100644 --- a/src/core/hle/service/gsp_gpu.h +++ b/src/core/hle/service/gsp_gpu.h @@ -31,7 +31,8 @@ enum class InterruptId : u8 { /// GSP command ID enum class CommandId : u32 { REQUEST_DMA = 0x00, - SET_COMMAND_LIST_LAST = 0x01, + /// Submits a commandlist for execution by the GPU. + SUBMIT_GPU_CMDLIST = 0x01, // Fills a given memory range with a particular value SET_MEMORY_FILL = 0x02, @@ -42,8 +43,8 @@ enum class CommandId : u32 { // Conceptionally similar to SET_DISPLAY_TRANSFER and presumable uses the same hardware path SET_TEXTURE_COPY = 0x04, - - SET_COMMAND_LIST_FIRST = 0x05, + /// Flushes up to 3 cache regions in a single command. + CACHE_FLUSH = 0x05, }; /// GSP thread interrupt relay queue @@ -106,7 +107,10 @@ struct Command { struct { u32 address; u32 size; - } set_command_list_last; + u32 flags; + u32 unused[3]; + u32 do_flush; + } submit_gpu_cmdlist; struct { u32 start1; @@ -138,6 +142,13 @@ struct Command { u32 flags; } texture_copy; + struct { + struct { + u32 address; + u32 size; + } regions[3]; + } cache_flush; + u8 raw_data[0x1C]; }; }; |