diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-04-16 18:29:53 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-04-22 17:36:24 +0200 |
commit | f616dc0b591b783b3fb75ca89633f1c26cce05a9 (patch) | |
tree | 43a9c2052c5ceaad8cf6a69173b0817e54cc8f42 /src/video_core/gpu.h | |
parent | Fix GCC error. (diff) | |
download | yuzu-f616dc0b591b783b3fb75ca89633f1c26cce05a9.tar yuzu-f616dc0b591b783b3fb75ca89633f1c26cce05a9.tar.gz yuzu-f616dc0b591b783b3fb75ca89633f1c26cce05a9.tar.bz2 yuzu-f616dc0b591b783b3fb75ca89633f1c26cce05a9.tar.lz yuzu-f616dc0b591b783b3fb75ca89633f1c26cce05a9.tar.xz yuzu-f616dc0b591b783b3fb75ca89633f1c26cce05a9.tar.zst yuzu-f616dc0b591b783b3fb75ca89633f1c26cce05a9.zip |
Diffstat (limited to 'src/video_core/gpu.h')
-rw-r--r-- | src/video_core/gpu.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/video_core/gpu.h b/src/video_core/gpu.h index 943a5b110..5e3eb94e9 100644 --- a/src/video_core/gpu.h +++ b/src/video_core/gpu.h @@ -155,16 +155,22 @@ public: /// Calls a GPU method. void CallMethod(const MethodCall& method_call); + /// Flush all current written commands into the host GPU for execution. void FlushCommands(); + /// Synchronizes CPU writes with Host GPU memory. void SyncGuestHost(); + /// Signal the ending of command list. virtual void OnCommandListEnd(); - u64 RequestFlush(CacheAddr addr, std::size_t size); + /// Request a host GPU memory flush from the CPU. + u64 RequestFlush(VAddr addr, std::size_t size); + /// Obtains current flush request fence id. u64 CurrentFlushRequestFence() const { return current_flush_fence.load(std::memory_order_relaxed); } + /// Tick pending requests within the GPU. void TickWork(); /// Returns a reference to the Maxwell3D GPU engine. @@ -336,10 +342,10 @@ private: std::condition_variable sync_cv; struct FlushRequest { - FlushRequest(u64 fence, CacheAddr addr, std::size_t size) + FlushRequest(u64 fence, VAddr addr, std::size_t size) : fence{fence}, addr{addr}, size{size} {} u64 fence; - CacheAddr addr; + VAddr addr; std::size_t size; }; |