aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/hle/service/y2r_u.cpp
diff options
context:
space:
mode:
authorGravatar tfarley <tfarleygithub@gmail.com>2015-05-22 14:49:42 -0700
committerGravatar tfarley <tfarleygithub@gmail.com>2015-05-22 15:51:34 -0700
commit62668688e1055dbfcbff824acfd9c9f970fc2c09 (patch)
treef922946de22f54bf0c0aaaff01371f5ca7a2fc57 /src/core/hle/service/y2r_u.cpp
parent16fbba3c2a21bf92e9dd6d17c89da9bccf339691 (diff)
Flush for y2r (moflex)
Diffstat (limited to 'src/core/hle/service/y2r_u.cpp')
-rw-r--r--src/core/hle/service/y2r_u.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/core/hle/service/y2r_u.cpp b/src/core/hle/service/y2r_u.cpp
index ce822e99..15987e02 100644
--- a/src/core/hle/service/y2r_u.cpp
+++ b/src/core/hle/service/y2r_u.cpp
@@ -9,7 +9,11 @@
#include "core/hle/hle.h"
#include "core/hle/kernel/event.h"
#include "core/hle/service/y2r_u.h"
+#include "core/mem_map.h"
+#include "core/memory.h"
+
#include "video_core/utils.h"
+#include "video_core/video_core.h"
////////////////////////////////////////////////////////////////////////////////////////////////////
// Namespace Y2R_U
@@ -260,6 +264,13 @@ static void StartConversion(Service::Interface* self) {
break;
}
}
+
+ // dst_image_size would seem to be perfect for this, but it doesn't include the stride :(
+ u32 total_output_size = conversion_params.input_lines *
+ (conversion_params.dst_transfer_unit + conversion_params.dst_stride);
+ VideoCore::g_renderer->hw_rasterizer->NotifyFlush(
+ Memory::VirtualToPhysicalAddress(conversion_params.dst_address), total_output_size);
+
LOG_DEBUG(Service_Y2R, "called");
completion_event->Signal();