summaryrefslogtreecommitdiff
path: root/src/video_core/gpu.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2020-12-12 00:24:33 -0800
committerbunnei <bunneidev@gmail.com>2020-12-28 16:33:48 -0800
commit40571c073faa02a6a4301e7f0ce365ef50a400aa (patch)
treef36bf8633469b5fc370495477e3c7cbc6e97a9c6 /src/video_core/gpu.cpp
parent14c825bd1c37b2444e858bf1a75fb77455b4eb52 (diff)
video_core: gpu: Implement synchronous mode using threaded GPU.
Diffstat (limited to 'src/video_core/gpu.cpp')
-rw-r--r--src/video_core/gpu.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/video_core/gpu.cpp b/src/video_core/gpu.cpp
index f99a8a0de..6ab06775f 100644
--- a/src/video_core/gpu.cpp
+++ b/src/video_core/gpu.cpp
@@ -38,7 +38,7 @@ GPU::GPU(Core::System& system_, bool is_async_, bool use_nvdec_)
maxwell_dma{std::make_unique<Engines::MaxwellDMA>(system, *memory_manager)},
kepler_memory{std::make_unique<Engines::KeplerMemory>(system, *memory_manager)},
shader_notify{std::make_unique<VideoCore::ShaderNotify>()}, is_async{is_async_},
- gpu_thread{system_} {}
+ gpu_thread{system_, is_async_} {}
GPU::~GPU() = default;
@@ -524,7 +524,10 @@ void GPU::WaitIdle() const {
}
void GPU::OnCommandListEnd() {
- gpu_thread.OnCommandListEnd();
+ if (is_async) {
+ // This command only applies to asynchronous GPU mode
+ gpu_thread.OnCommandListEnd();
+ }
}
} // namespace Tegra