diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2023-08-26 22:00:43 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2023-08-26 22:00:43 +0200 |
commit | 8beda6a2bf4da0c9673a0532d8e80c9e5e534ced (patch) | |
tree | e8cf119ade45e7e459cb4227122e318e5fa0b12e /src | |
parent | bc4e58eb5180a1755d76a24ddc7684cc5d70f2b1 (diff) |
DMA Pusher: Fix regression caused by guest memory optimizations
Diffstat (limited to 'src')
-rw-r--r-- | src/video_core/dma_pusher.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/video_core/dma_pusher.cpp b/src/video_core/dma_pusher.cpp index 9f1b340a9..ab28951b6 100644 --- a/src/video_core/dma_pusher.cpp +++ b/src/video_core/dma_pusher.cpp @@ -83,6 +83,14 @@ bool DmaPusher::Step() { dma_state.dma_get, command_list_header.size * sizeof(u32)); } } + if (Settings::IsGPULevelHigh() && dma_state.method < MacroRegistersStart) { + Core::Memory::GpuGuestMemory<Tegra::CommandHeader, + Core::Memory::GuestMemoryFlags::SafeRead> + headers(memory_manager, dma_state.dma_get, command_list_header.size, + &command_headers); + ProcessCommands(headers); + return true; + } Core::Memory::GpuGuestMemory<Tegra::CommandHeader, Core::Memory::GuestMemoryFlags::UnsafeRead> headers(memory_manager, dma_state.dma_get, command_list_header.size, &command_headers); |