summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_vulkan
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2021-06-12 15:52:27 +0200
committerFernando Sahmkow <fsahmkow27@gmail.com>2021-07-04 22:32:03 +0200
commit38165fb7e3e486b5099cfa76f5a09ec9f3201acd (patch)
treea80e66a254960c9c8c602f256cd37361c780d188 /src/video_core/renderer_vulkan
parentMerge pull request #6553 from FernandoS27/bite-a-bat-change-the-world (diff)
downloadyuzu-38165fb7e3e486b5099cfa76f5a09ec9f3201acd.tar
yuzu-38165fb7e3e486b5099cfa76f5a09ec9f3201acd.tar.gz
yuzu-38165fb7e3e486b5099cfa76f5a09ec9f3201acd.tar.bz2
yuzu-38165fb7e3e486b5099cfa76f5a09ec9f3201acd.tar.lz
yuzu-38165fb7e3e486b5099cfa76f5a09ec9f3201acd.tar.xz
yuzu-38165fb7e3e486b5099cfa76f5a09ec9f3201acd.tar.zst
yuzu-38165fb7e3e486b5099cfa76f5a09ec9f3201acd.zip
Diffstat (limited to 'src/video_core/renderer_vulkan')
-rw-r--r--src/video_core/renderer_vulkan/vk_rasterizer.cpp7
-rw-r--r--src/video_core/renderer_vulkan/vk_rasterizer.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.cpp b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
index 1c9120170..bd4d649cc 100644
--- a/src/video_core/renderer_vulkan/vk_rasterizer.cpp
+++ b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
@@ -557,6 +557,13 @@ void RasterizerVulkan::UnmapMemory(VAddr addr, u64 size) {
pipeline_cache.OnCPUWrite(addr, size);
}
+void RasterizerVulkan::ModifyGPUMemory(GPUVAddr addr, u64 size) {
+ {
+ std::scoped_lock lock{texture_cache.mutex};
+ texture_cache.UnmapGPUMemory(addr, size);
+ }
+}
+
void RasterizerVulkan::SignalSemaphore(GPUVAddr addr, u32 value) {
if (!gpu.IsAsync()) {
gpu_memory.Write<u32>(addr, value);
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.h b/src/video_core/renderer_vulkan/vk_rasterizer.h
index cb8c5c279..41459c5c5 100644
--- a/src/video_core/renderer_vulkan/vk_rasterizer.h
+++ b/src/video_core/renderer_vulkan/vk_rasterizer.h
@@ -72,6 +72,7 @@ public:
void OnCPUWrite(VAddr addr, u64 size) override;
void SyncGuestHost() override;
void UnmapMemory(VAddr addr, u64 size) override;
+ void ModifyGPUMemory(GPUVAddr addr, u64 size) override;
void SignalSemaphore(GPUVAddr addr, u32 value) override;
void SignalSyncPoint(u32 value) override;
void ReleaseFences() override;