]> code.ossystems Code Review - meta-freescale.git/commitdiff
weston: T3DStressTest_Wayland displays abnormally while using G2D compositor
authorTom Hochstein <tom.hochstein@nxp.com>
Mon, 16 Jan 2017 19:52:22 +0000 (13:52 -0600)
committerOtavio Salvador <otavio@ossystems.com.br>
Wed, 25 Jan 2017 16:28:30 +0000 (14:28 -0200)
It need add g2d_finish after repaint_region and before copy to framebuffer.
Because if using dual dpu cores, the tasks on each core will be executed
sequently, but it can't ensure one task splited on dual cores can be finished
synchronously by hardware.

Upstream-Status: Inappropriate [i.MX specific]

Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
recipes-graphics/wayland/weston/0017-MGS-2343-ccc-XWLD-T3DStressTest_Wayland-displays-abn.patch [new file with mode: 0644]
recipes-graphics/wayland/weston_%.bbappend

diff --git a/recipes-graphics/wayland/weston/0017-MGS-2343-ccc-XWLD-T3DStressTest_Wayland-displays-abn.patch b/recipes-graphics/wayland/weston/0017-MGS-2343-ccc-XWLD-T3DStressTest_Wayland-displays-abn.patch
new file mode 100644 (file)
index 0000000..d0b82aa
--- /dev/null
@@ -0,0 +1,40 @@
+From 0cc335a411127feb05e16cbf2803058b2db1b405 Mon Sep 17 00:00:00 2001
+From: Meng Mingming <mingming.meng@nxp.com>
+Date: Thu, 27 Oct 2016 17:00:24 +0800
+Subject: [PATCH 1/2] MGS-2343 [#ccc] XWLD: T3DStressTest_Wayland displays
+ abnormally while using G2D compositor
+
+It need add g2d_finish after repaint_region and before copy to framebuffer.
+Because if using dual dpu cores, the tasks on each core will be executed
+sequently, but it can't ensure one task splited on dual cores can be finished
+synchronously by hardware.
+
+Upstream-Status: Inappropriate [i.MX specific]
+
+Date: Oct 27, 2016
+Signed-off-by: Meng Mingming <mingming.meng@nxp.com>
+---
+ src/g2d-renderer.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+Index: weston-1.11.0/src/g2d-renderer.c
+===================================================================
+--- weston-1.11.0.orig/src/g2d-renderer.c      2017-01-12 14:58:11.923607788 -0600
++++ weston-1.11.0/src/g2d-renderer.c   2017-01-12 18:08:33.328243476 -0600
+@@ -679,6 +679,8 @@
+                            pixman_region32_t *output_damage)
+ {
+       struct g2d_output_state *go = get_output_state(output);
++      struct weston_compositor *compositor = output->compositor;
++      struct g2d_renderer *gr = get_renderer(compositor);
+       int i;
+       use_output(output);
+@@ -691,6 +693,7 @@
+                             &go->buffer_damage[go->current_buffer]);
+       repaint_views(output, output_damage);
++      g2d_finish(gr->handle);
+       pixman_region32_copy(&output->previous_damage, output_damage);
+       wl_signal_emit(&output->frame_signal, output);
index b78a299a0b87922d6363a5548ada3f8455cd224b..aa13f27dfbeadb67c2da09585c4ba35ba8a8fa4a 100644 (file)
@@ -15,6 +15,7 @@ SRC_URI_append_imxgpu3d = " \
     file://0014-MGS-1987-Get-stride-from-the-FB-buffe.patch                \
     file://0015-MGS-2221-imx-171-Fix-weston-build-failed.patch             \
     file://0016-Link-compositor-to-egl.patch                               \
+    file://0017-MGS-2343-ccc-XWLD-T3DStressTest_Wayland-displays-abn.patch \
 "
 
 # The 'egl' configuration of weston requires gles support, and consideration