summaryrefslogtreecommitdiff
path: root/src/video_core/gpu.cpp
diff options
context:
space:
mode:
authorGravatar Chloe Marcec2021-03-30 20:37:40 +1100
committerGravatar Chloe Marcec2021-03-30 20:37:40 +1100
commitbf1c1788cab4740d8c46c30ad8a97021b2e858f9 (patch)
tree3d3228a9369adcfe1db58c698b4ba84e86376300 /src/video_core/gpu.cpp
parentMerge pull request #6109 from german77/gestureID (diff)
downloadyuzu-bf1c1788cab4740d8c46c30ad8a97021b2e858f9.tar.gz
yuzu-bf1c1788cab4740d8c46c30ad8a97021b2e858f9.tar.xz
yuzu-bf1c1788cab4740d8c46c30ad8a97021b2e858f9.zip
nvdrv: Cleanup CDMA Processor on device closure
Brings us a step closer to unifying all channels to share a common interface.
Diffstat (limited to 'src/video_core/gpu.cpp')
-rw-r--r--src/video_core/gpu.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/video_core/gpu.cpp b/src/video_core/gpu.cpp
index c61f44619..811e248a3 100644
--- a/src/video_core/gpu.cpp
+++ b/src/video_core/gpu.cpp
@@ -480,11 +480,7 @@ void GPU::PushCommandBuffer(Tegra::ChCommandHeaderList& entries) {
480 if (!use_nvdec) { 480 if (!use_nvdec) {
481 return; 481 return;
482 } 482 }
483 // This condition fires when a video stream ends, clear all intermediary data 483
484 if (entries[0].raw == 0xDEADB33F) {
485 cdma_pusher.reset();
486 return;
487 }
488 if (!cdma_pusher) { 484 if (!cdma_pusher) {
489 cdma_pusher = std::make_unique<Tegra::CDmaPusher>(*this); 485 cdma_pusher = std::make_unique<Tegra::CDmaPusher>(*this);
490 } 486 }
@@ -496,6 +492,13 @@ void GPU::PushCommandBuffer(Tegra::ChCommandHeaderList& entries) {
496 cdma_pusher->ProcessEntries(std::move(entries)); 492 cdma_pusher->ProcessEntries(std::move(entries));
497} 493}
498 494
495void GPU::ClearCommandBuffer() {
496 // This condition fires when a video stream ends, clear all intermediary data
497 if (cdma_pusher) {
498 cdma_pusher.reset();
499 }
500}
501
499void GPU::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) { 502void GPU::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) {
500 gpu_thread.SwapBuffers(framebuffer); 503 gpu_thread.SwapBuffers(framebuffer);
501} 504}