aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/engines/maxwell_dma.cpp
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-04-20 02:16:56 -0400
committerFernando Sahmkow <fsahmkow27@gmail.com>2020-04-23 08:52:55 -0400
commit3fedcc2f6e001f0ed1fd791de4f9692570359eef (patch)
tree49109516beab33d825cc653d4e885107304da332 /src/video_core/engines/maxwell_dma.cpp
parenteb26e9e7117bf7a10ef6ca39d52bf6f00bd91859 (diff)
DMAPusher: Propagate multimethod writes into the engines.
Diffstat (limited to 'src/video_core/engines/maxwell_dma.cpp')
-rw-r--r--src/video_core/engines/maxwell_dma.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/engines/maxwell_dma.cpp b/src/video_core/engines/maxwell_dma.cpp
index 3bfed6ab8..51e606a10 100644
--- a/src/video_core/engines/maxwell_dma.cpp
+++ b/src/video_core/engines/maxwell_dma.cpp
@@ -36,6 +36,12 @@ void MaxwellDMA::CallMethod(const GPU::MethodCall& method_call) {
#undef MAXWELLDMA_REG_INDEX
}
+void MaxwellDMA::CallMultiMethod(u32 method, const u32* base_start, u32 amount, u32 methods_pending) {
+ for (std::size_t i = 0; i < amount; i++) {
+ CallMethod({method, base_start[i], 0, methods_pending - static_cast<u32>(i)});
+ }
+}
+
void MaxwellDMA::HandleCopy() {
LOG_TRACE(HW_GPU, "Requested a DMA copy");