summaryrefslogtreecommitdiffstats
path: root/recipes-graphics
diff options
context:
space:
mode:
authorNeena Busireddy <neena.busireddy@freescale.com>2016-01-04 20:39:19 -0600
committerOtavio Salvador <otavio@ossystems.com.br>2016-04-19 15:03:25 -0300
commit533220ec56fe69c33f37dbb3cb4e3382573e8d0c (patch)
tree27f5f07168c84f5e149b19855271e5c1997c39a6 /recipes-graphics
parent483f58f76ecf35e80c10e166f2c46d7bca66d246 (diff)
downloadmeta-freescale-533220ec56fe69c33f37dbb3cb4e3382573e8d0c.tar.gz
weston: Add patches to fix bugs
- Patch to fix setenv and clear environments. - Patch to fix screen blur for Qt5 CinematicExperience. Signed-off-by: Neena Busireddy <neena.busireddy@freescale.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Diffstat (limited to 'recipes-graphics')
-rw-r--r--recipes-graphics/wayland/weston/0004-MGS-1235-Fix-setenv-and-clear-environments.patch41
-rw-r--r--recipes-graphics/wayland/weston/0005-MGS-1252-Fix-for-Qt5_CinematicExperience-will-meet-s.patch93
-rw-r--r--recipes-graphics/wayland/weston_%.bbappend5
3 files changed, 138 insertions, 1 deletions
diff --git a/recipes-graphics/wayland/weston/0004-MGS-1235-Fix-setenv-and-clear-environments.patch b/recipes-graphics/wayland/weston/0004-MGS-1235-Fix-setenv-and-clear-environments.patch
new file mode 100644
index 00000000..e4f8cd9c
--- /dev/null
+++ b/recipes-graphics/wayland/weston/0004-MGS-1235-Fix-setenv-and-clear-environments.patch
@@ -0,0 +1,41 @@
1From d09d0595b472d6bae35e78272fc670d494f6e408 Mon Sep 17 00:00:00 2001
2From: Prabhu <prabhu.sundararaj@freescale.com>
3Date: Tue, 17 Nov 2015 22:00:42 -0600
4Subject: [PATCH] MGS-1235 : Fix setenv and clear environments
5
6When setenv is set with parameter null causing crash.
7Fixed with unsetenv to restore to previous state
8
9Date: Nov 17, 2015
10Signed-off-by: Prabhu <prabhu.sundararaj@freescale.com>
11
12-1235
13---
14 src/compositor-fbdev.c | 11 ++++++++++-
15 1 file changed, 10 insertions(+), 1 deletion(-)
16
17diff --git a/src/compositor-fbdev.c b/src/compositor-fbdev.c
18index ed25576..c6b8e5a 100644
19--- a/src/compositor-fbdev.c
20+++ b/src/compositor-fbdev.c
21@@ -598,7 +598,16 @@ fbdev_output_create(struct fbdev_backend *backend,
22 fprintf(stderr, "failed to create window\n");
23 return 0;
24 }
25- setenv("FB_FRAMEBUFFER_0", fbenv, 1);
26+ /* restore the previous value*/
27+ if(fbenv != NULL)
28+ {
29+ setenv("FB_FRAMEBUFFER_0", fbenv, 1);
30+ }
31+ else
32+ {
33+ unsetenv("FB_FRAMEBUFFER_0");
34+ }
35+
36
37 if (gal2d_renderer->output_create(&output->base,
38 output->display,
39--
402.5.1
41
diff --git a/recipes-graphics/wayland/weston/0005-MGS-1252-Fix-for-Qt5_CinematicExperience-will-meet-s.patch b/recipes-graphics/wayland/weston/0005-MGS-1252-Fix-for-Qt5_CinematicExperience-will-meet-s.patch
new file mode 100644
index 00000000..82d37986
--- /dev/null
+++ b/recipes-graphics/wayland/weston/0005-MGS-1252-Fix-for-Qt5_CinematicExperience-will-meet-s.patch
@@ -0,0 +1,93 @@
1From 515b1f1c1902ae22914a93982935e2328d2240d2 Mon Sep 17 00:00:00 2001
2From: Yong Gan <b45748@freescale.com>
3Date: Thu, 19 Nov 2015 15:30:24 +0800
4Subject: [PATCH 2/2] MGS-1252: Fix for Qt5_CinematicExperience will meet
5 screen blur
6
7When the Qt5_CinematicExperience is created, window creates with 1920x1080
8and the starting coordiantes more than screen coordinate.
9Ths cause access beyond the surface and system hang on lcd display
10
11Date: Nov 18, 2015
12Signed-off-by: Prabhu <prabhu.sundararaj@freescale.com>
13---
14 src/gal2d-renderer.c | 30 ++++++++++++++++++------------
15 1 file changed, 18 insertions(+), 12 deletions(-)
16
17diff --git a/src/gal2d-renderer.c b/src/gal2d-renderer.c
18index c68f02c..6e7d640 100644
19--- a/src/gal2d-renderer.c
20+++ b/src/gal2d-renderer.c
21@@ -661,12 +661,11 @@ repaint_region(struct weston_view *ev, struct weston_output *output, struct gal2
22 gcsRECT srcRect = {0};
23 gcsRECT dstrect = {0};
24 gctUINT32 horFactor, verFactor;
25- int useStretch =1;
26 int useFilterBlit = 0;
27 gctUINT srcWidth = 0;
28 gctUINT srcHeight = 0;
29 gctUINT32 srcStride[3];
30- gceSURF_FORMAT srcFormat;;
31+ gceSURF_FORMAT srcFormat;
32 gctUINT32 srcPhyAddr[3];
33 gctUINT32 dstPhyAddr[3];
34 gctUINT dstWidth = 0;
35@@ -702,14 +701,16 @@ repaint_region(struct weston_view *ev, struct weston_output *output, struct gal2
36 srcRect.right = ev->surface->width;
37 srcRect.bottom = ev->surface->height;
38
39- if(useFilterBlit)
40+ dstsurface = go->nNumBuffers > 1 ?
41+ go->renderSurf[go->activebuffer] :
42+ go->offscreenSurface;
43+ gcmVERIFY_OK(gcoSURF_GetAlignedSize(dstsurface, &dstWidth, &dstHeight, (gctINT *)&dstStrides));
44+ gcmVERIFY_OK(gcoSURF_Lock(dstsurface, &dstPhyAddr[0], gcvNULL));
45+ gcmVERIFY_OK(gcoSURF_Unlock(dstsurface, gcvNULL));
46+
47+ if(galIsYUVFormat(srcFormat) == gcvSTATUS_TRUE)
48 {
49- dstsurface = go->nNumBuffers > 1 ?
50- go->renderSurf[go->activebuffer] :
51- go->offscreenSurface;
52- gcmVERIFY_OK(gcoSURF_GetAlignedSize(dstsurface, &dstWidth, &dstHeight, (gctINT *)&dstStrides));
53- gcmVERIFY_OK(gcoSURF_Lock(dstsurface, &dstPhyAddr[0], gcvNULL));
54- gcmVERIFY_OK(gcoSURF_Unlock(dstsurface, gcvNULL));
55+ useFilterBlit = 1;
56 }
57 else
58 {
59@@ -739,7 +740,7 @@ repaint_region(struct weston_view *ev, struct weston_output *output, struct gal2
60 dstrect.right = bb_rects[0].x2;
61 dstrect.bottom = bb_rects[0].y2;
62
63- if(dstrect.right < 0 || dstrect.bottom < 0)
64+ if(dstrect.right < 0 || dstrect.bottom < 0 || dstrect.left > dstWidth || dstrect.top > dstHeight)
65 {
66 break;
67 }
68@@ -829,8 +830,7 @@ repaint_region(struct weston_view *ev, struct weston_output *output, struct gal2
69 }
70 else
71 {
72- if(useStretch)
73- gcmVERIFY_OK(galGetStretchFactors(&srcRect, &dstrect, &horFactor, &verFactor));
74+ gcmVERIFY_OK(galGetStretchFactors(&srcRect, &dstrect, &horFactor, &verFactor));
75
76 if(verFactor == 65536 && horFactor == 65536)
77 {
78@@ -839,6 +839,12 @@ repaint_region(struct weston_view *ev, struct weston_output *output, struct gal2
79 }
80 else
81 {
82+ dstrect.right = dstrect.right < dstWidth ? dstrect.right : dstWidth;
83+ dstrect.bottom = dstrect.bottom < dstHeight ? dstrect.bottom : dstHeight;
84+ srcRect.right = srcRect.right < dstWidth ? srcRect.right : dstWidth;
85+ srcRect.bottom = srcRect.bottom < dstHeight ? srcRect.bottom : dstHeight;
86+
87+ gcmVERIFY_OK(galGetStretchFactors(&srcRect, &dstrect, &horFactor, &verFactor));
88 /* Program the stretch factors. */
89 gcmVERIFY_OK(gco2D_SetStretchFactors(gr->gcoEngine2d, horFactor, verFactor));
90
91--
921.9.1
93
diff --git a/recipes-graphics/wayland/weston_%.bbappend b/recipes-graphics/wayland/weston_%.bbappend
index a7496daa..6c8ba6d0 100644
--- a/recipes-graphics/wayland/weston_%.bbappend
+++ b/recipes-graphics/wayland/weston_%.bbappend
@@ -1,6 +1,9 @@
1FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" 1FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
2 2
3SRC_URI_append_mx6 = " file://0001-MGS-840-Add-i.MX6-support-for-weston.patch" 3SRC_URI_append_mx6 = " \
4 file://0001-MGS-840-Add-i.MX6-support-for-weston.patch \
5 file://0004-MGS-1235-Fix-setenv-and-clear-environments.patch \
6 file://0005-MGS-1252-Fix-for-Qt5_CinematicExperience-will-meet-s.patch"
4 7
5PACKAGECONFIG_append_mx6q = " cairo-glesv2" 8PACKAGECONFIG_append_mx6q = " cairo-glesv2"
6PACKAGECONFIG_append_mx6dl = " cairo-glesv2" 9PACKAGECONFIG_append_mx6dl = " cairo-glesv2"