diff options
| author | 2021-04-24 19:22:09 -0400 | |
|---|---|---|
| committer | 2021-04-24 19:22:09 -0400 | |
| commit | 75e0d16caa994f0765f78268fb5a94496914d23b (patch) | |
| tree | 378eab8a370a1f95ad04d9828e1e6e74d3e8fbac /src/video_core | |
| parent | Merge pull request #6234 from Morph1984/stub-am (diff) | |
| download | yuzu-75e0d16caa994f0765f78268fb5a94496914d23b.tar.gz yuzu-75e0d16caa994f0765f78268fb5a94496914d23b.tar.xz yuzu-75e0d16caa994f0765f78268fb5a94496914d23b.zip | |
nvhost_vic: Fix device closure
Implements the OnClose method of the nvhost_vic device, and removes the remnants of an older implementation.
Also cleans up some of the surrounding code.
Diffstat (limited to 'src/video_core')
| -rw-r--r-- | src/video_core/gpu.cpp | 4 | ||||
| -rw-r--r-- | src/video_core/gpu.h | 4 |
2 files changed, 3 insertions, 5 deletions
diff --git a/src/video_core/gpu.cpp b/src/video_core/gpu.cpp index 7c42f1177..a38024242 100644 --- a/src/video_core/gpu.cpp +++ b/src/video_core/gpu.cpp | |||
| @@ -492,10 +492,8 @@ void GPU::PushCommandBuffer(Tegra::ChCommandHeaderList& entries) { | |||
| 492 | cdma_pusher->ProcessEntries(std::move(entries)); | 492 | cdma_pusher->ProcessEntries(std::move(entries)); |
| 493 | } | 493 | } |
| 494 | 494 | ||
| 495 | void GPU::ClearCommandBuffer() { | 495 | void GPU::ClearCdmaInstance() { |
| 496 | // This condition fires when a video stream ends, clear all intermediary data | ||
| 497 | cdma_pusher.reset(); | 496 | cdma_pusher.reset(); |
| 498 | LOG_INFO(Service_NVDRV, "NVDEC video stream ended"); | ||
| 499 | } | 497 | } |
| 500 | 498 | ||
| 501 | void GPU::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) { | 499 | void GPU::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) { |
diff --git a/src/video_core/gpu.h b/src/video_core/gpu.h index b1960ea86..8669e9940 100644 --- a/src/video_core/gpu.h +++ b/src/video_core/gpu.h | |||
| @@ -324,8 +324,8 @@ public: | |||
| 324 | /// Push GPU command buffer entries to be processed | 324 | /// Push GPU command buffer entries to be processed |
| 325 | void PushCommandBuffer(Tegra::ChCommandHeaderList& entries); | 325 | void PushCommandBuffer(Tegra::ChCommandHeaderList& entries); |
| 326 | 326 | ||
| 327 | /// Frees the CDMAPusher to free up resources | 327 | /// Frees the CDMAPusher instance to free up resources |
| 328 | void ClearCommandBuffer(); | 328 | void ClearCdmaInstance(); |
| 329 | 329 | ||
| 330 | /// Swap buffers (render frame) | 330 | /// Swap buffers (render frame) |
| 331 | void SwapBuffers(const Tegra::FramebufferConfig* framebuffer); | 331 | void SwapBuffers(const Tegra::FramebufferConfig* framebuffer); |