summaryrefslogtreecommitdiff
path: root/src/video_core/gpu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_core/gpu.cpp')
-rw-r--r--src/video_core/gpu.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/video_core/gpu.cpp b/src/video_core/gpu.cpp
index 705765c99..ba9ba082f 100644
--- a/src/video_core/gpu.cpp
+++ b/src/video_core/gpu.cpp
@@ -59,6 +59,7 @@ struct GPU::Impl {
59 maxwell_3d->BindRasterizer(rasterizer); 59 maxwell_3d->BindRasterizer(rasterizer);
60 fermi_2d->BindRasterizer(rasterizer); 60 fermi_2d->BindRasterizer(rasterizer);
61 kepler_compute->BindRasterizer(rasterizer); 61 kepler_compute->BindRasterizer(rasterizer);
62 kepler_memory->BindRasterizer(rasterizer);
62 maxwell_dma->BindRasterizer(rasterizer); 63 maxwell_dma->BindRasterizer(rasterizer);
63 } 64 }
64 65
@@ -502,8 +503,13 @@ struct GPU::Impl {
502 case BufferMethods::SemaphoreAddressHigh: 503 case BufferMethods::SemaphoreAddressHigh:
503 case BufferMethods::SemaphoreAddressLow: 504 case BufferMethods::SemaphoreAddressLow:
504 case BufferMethods::SemaphoreSequence: 505 case BufferMethods::SemaphoreSequence:
506 break;
505 case BufferMethods::UnkCacheFlush: 507 case BufferMethods::UnkCacheFlush:
508 rasterizer->SyncGuestHost();
509 break;
506 case BufferMethods::WrcacheFlush: 510 case BufferMethods::WrcacheFlush:
511 rasterizer->SignalReference();
512 break;
507 case BufferMethods::FenceValue: 513 case BufferMethods::FenceValue:
508 break; 514 break;
509 case BufferMethods::RefCnt: 515 case BufferMethods::RefCnt:
@@ -513,7 +519,7 @@ struct GPU::Impl {
513 ProcessFenceActionMethod(); 519 ProcessFenceActionMethod();
514 break; 520 break;
515 case BufferMethods::WaitForInterrupt: 521 case BufferMethods::WaitForInterrupt:
516 ProcessWaitForInterruptMethod(); 522 rasterizer->WaitForIdle();
517 break; 523 break;
518 case BufferMethods::SemaphoreTrigger: { 524 case BufferMethods::SemaphoreTrigger: {
519 ProcessSemaphoreTriggerMethod(); 525 ProcessSemaphoreTriggerMethod();