summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_vulkan
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-02-19 18:40:37 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2020-04-22 17:36:16 +0200
commitb7bc3c25496849661846f2fe42f591f2a81fbc87 (patch)
tree5c65f286d0ac58dfd46a42325a71548f20522f71 /src/video_core/renderer_vulkan
parentBufferCache: Refactor async managing. (diff)
downloadyuzu-b7bc3c25496849661846f2fe42f591f2a81fbc87.tar
yuzu-b7bc3c25496849661846f2fe42f591f2a81fbc87.tar.gz
yuzu-b7bc3c25496849661846f2fe42f591f2a81fbc87.tar.bz2
yuzu-b7bc3c25496849661846f2fe42f591f2a81fbc87.tar.lz
yuzu-b7bc3c25496849661846f2fe42f591f2a81fbc87.tar.xz
yuzu-b7bc3c25496849661846f2fe42f591f2a81fbc87.tar.zst
yuzu-b7bc3c25496849661846f2fe42f591f2a81fbc87.zip
Diffstat (limited to 'src/video_core/renderer_vulkan')
-rw-r--r--src/video_core/renderer_vulkan/vk_rasterizer.cpp16
-rw-r--r--src/video_core/renderer_vulkan/vk_rasterizer.h3
2 files changed, 16 insertions, 3 deletions
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.cpp b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
index 1d75a4766..507262c8f 100644
--- a/src/video_core/renderer_vulkan/vk_rasterizer.cpp
+++ b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
@@ -543,7 +543,7 @@ void RasterizerVulkan::SyncGuestHost() {
buffer_cache.SyncGuestHost();
}
-void RasterizerVulkan::SignalFence(GPUVAddr addr, u32 value) {
+void RasterizerVulkan::SignalSemaphore(GPUVAddr addr, u32 value) {
auto& gpu{system.GPU()};
auto& memory_manager{gpu.MemoryManager()};
memory_manager.Write<u32>(addr, value);
@@ -553,7 +553,19 @@ void RasterizerVulkan::SignalFence(GPUVAddr addr, u32 value) {
memory_manager.Write<u32>(addr, value);
return;
}
- fence_manager.SignalFence(addr, value);
+ fence_manager.SignalSemaphore(addr, value);
+ */
+}
+
+void RasterizerVulkan::SignalSyncPoint(u32 value) {
+ auto& gpu{system.GPU()};
+ gpu.IncrementSyncPoint(value);
+ /*
+ if (!gpu.IsAsync()) {
+ gpu.IncrementSyncPoint(value);
+ return;
+ }
+ fence_manager.SignalSyncPoint(value);
*/
}
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.h b/src/video_core/renderer_vulkan/vk_rasterizer.h
index 08a9af401..145bdf899 100644
--- a/src/video_core/renderer_vulkan/vk_rasterizer.h
+++ b/src/video_core/renderer_vulkan/vk_rasterizer.h
@@ -122,7 +122,8 @@ public:
void InvalidateRegion(VAddr addr, u64 size) override;
void OnCPUWrite(VAddr addr, u64 size) override;
void SyncGuestHost() override;
- void SignalFence(GPUVAddr addr, u32 value) override;
+ void SignalSemaphore(GPUVAddr addr, u32 value) override;
+ void SignalSyncPoint(u32 value) override;
void ReleaseFences() override;
void FlushAndInvalidateRegion(VAddr addr, u64 size) override;
void FlushCommands() override;