* also clean up the older patches

Signed-off-by: Karthik Ramanan <a0393...@ti.com>
---
 ...drm-fix-hotplug-weston-termination-proble.patch | 112 ------------------
 ...r-drm-support-RGB565-with-pixman-renderer.patch | 125 ---------------------
 ...v-seat-restrict-udev-enumeration-to-card0.patch |  36 +++---
 ...abling-DRM-backend-with-multiple-displays.patch |  60 ----------
 ...-Enabling-DRM-backend-with-multiple-displ.patch |  60 ----------
 .../0002-Weston-Allow-visual_id-to-be-0.patch      |  31 -----
 .../0002-weston-Allow-visual_id-to-be-0.patch      |  34 ++++++
 ...virtual-keyboard-display-issue-for-QT5-ap.patch |  39 -------
 ...virtual-keyboard-display-issue-for-QT5-ap.patch |  42 +++++++
 .../0004-Weston-Fix-touch-screen-crash-issue.patch |  36 ------
 .../0004-weston-Fix-touch-screen-crash-issue.patch |  39 +++++++
 .../recipes-graphics/wayland/weston_2.0.0.bbappend |  13 +--
 12 files changed, 140 insertions(+), 487 deletions(-)
 delete mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0001-compositor-drm-fix-hotplug-weston-termination-proble.patch
 delete mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0001-compositor-drm-support-RGB565-with-pixman-renderer.patch
 delete mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0001-weston-Enabling-DRM-backend-with-multiple-displays.patch
 delete mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0001-weston1.9.0-Enabling-DRM-backend-with-multiple-displ.patch
 delete mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0002-Weston-Allow-visual_id-to-be-0.patch
 create mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0002-weston-Allow-visual_id-to-be-0.patch
 delete mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0003-Weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
 create mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0003-weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
 delete mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0004-Weston-Fix-touch-screen-crash-issue.patch
 create mode 100644 
meta-arago-distro/recipes-graphics/wayland/weston/0004-weston-Fix-touch-screen-crash-issue.patch

diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-compositor-drm-fix-hotplug-weston-termination-proble.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0001-compositor-drm-fix-hotplug-weston-termination-proble.patch
deleted file mode 100644
index fde38d5..0000000
--- 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-compositor-drm-fix-hotplug-weston-termination-proble.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From 8497d95cc77af9bbdbbce03878e9fd273d94ba7f Mon Sep 17 00:00:00 2001
-From: Eric Ruei <e-ru...@ti.com>
-Date: Wed, 7 Dec 2016 15:25:25 -0500
-Subject: [PATCH] compositor-drm: fix hotplug weston termination problem
-
-The weston_compositor_exit() is always invoked at function update_outputs()
-if all connector ids are greater than 31 because the 32-bit 
b->connector_allocator
-will be zero. Need to increase the size of both crtc_allocator and
-connector_allocator from 32-bit to 64-bit until a better solution is 
implemented.
-
-Upstream-Status: Submitted [wayland-de...@lists.freedesktop.org]
-
-Signed-off-by: Eric Ruei <e-ru...@ti.com>
----
- src/compositor-drm.c | 30 +++++++++++++++---------------
- 1 file changed, 15 insertions(+), 15 deletions(-)
-
-diff --git a/src/compositor-drm.c b/src/compositor-drm.c
-index 6485b39..e4d889f 100644
---- a/src/compositor-drm.c
-+++ b/src/compositor-drm.c
-@@ -103,8 +103,8 @@ struct drm_backend {
-       struct gbm_device *gbm;
-       uint32_t *crtcs;
-       int num_crtcs;
--      uint32_t crtc_allocator;
--      uint32_t connector_allocator;
-+      uint64_t crtc_allocator;
-+      uint64_t connector_allocator;
-       struct wl_listener session_listener;
-       uint32_t format;
- 
-@@ -1360,8 +1360,8 @@ drm_output_destroy(struct weston_output *output_base)
-                      &output->connector_id, 1, &origcrtc->mode);
-       drmModeFreeCrtc(origcrtc);
- 
--      b->crtc_allocator &= ~(1 << output->crtc_id);
--      b->connector_allocator &= ~(1 << output->connector_id);
-+      b->crtc_allocator &= ~(1ULL << output->crtc_id);
-+      b->connector_allocator &= ~(1ULL << output->connector_id);
- 
-       if (b->use_pixman) {
-               drm_output_fini_pixman(output);
-@@ -1842,8 +1842,8 @@ find_crtc_for_connector(struct drm_backend *b,
-               drmModeFreeEncoder(encoder);
- 
-               for (i = 0; i < resources->count_crtcs; i++) {
--                      if (possible_crtcs & (1 << i) &&
--                          !(b->crtc_allocator & (1 << resources->crtcs[i])))
-+                      if (possible_crtcs & (1ULL << i) &&
-+                          !(b->crtc_allocator & (1ULL << 
resources->crtcs[i])))
-                               return i;
-               }
-       }
-@@ -2404,9 +2404,9 @@ create_output_for_connector(struct drm_backend *b,
- 
-       output->crtc_id = resources->crtcs[i];
-       output->pipe = i;
--      b->crtc_allocator |= (1 << output->crtc_id);
-+      b->crtc_allocator |= (1ULL << output->crtc_id);
-       output->connector_id = connector->connector_id;
--      b->connector_allocator |= (1 << output->connector_id);
-+      b->connector_allocator |= (1ULL << output->connector_id);
- 
-       output->original_crtc = drmModeGetCrtc(b->drm.fd, output->crtc_id);
-       output->dpms_prop = drm_get_prop(b->drm.fd, connector, "DPMS");
-@@ -2511,8 +2511,8 @@ err_free:
-       }
- 
-       drmModeFreeCrtc(output->original_crtc);
--      b->crtc_allocator &= ~(1 << output->crtc_id);
--      b->connector_allocator &= ~(1 << output->connector_id);
-+      b->crtc_allocator &= ~(1ULL << output->crtc_id);
-+      b->connector_allocator &= ~(1ULL << output->connector_id);
-       free(output);
- 
-       return -1;
-@@ -2658,7 +2658,7 @@ update_outputs(struct drm_backend *b, struct udev_device 
*drm_device)
-       drmModeRes *resources;
-       struct drm_output *output, *next;
-       int x = 0, y = 0;
--      uint32_t connected = 0, disconnects = 0;
-+      uint64_t connected = 0, disconnects = 0;
-       int i;
- 
-       resources = drmModeGetResources(b->drm.fd);
-@@ -2680,9 +2680,9 @@ update_outputs(struct drm_backend *b, struct udev_device 
*drm_device)
-                       continue;
-               }
- 
--              connected |= (1 << connector_id);
-+              connected |= (1ULL << connector_id);
- 
--              if (!(b->connector_allocator & (1 << connector_id))) {
-+              if (!(b->connector_allocator & (1ULL << connector_id))) {
-                       struct weston_output *last =
-                               container_of(b->compositor->output_list.prev,
-                                            struct weston_output, link);
-@@ -2707,8 +2707,8 @@ update_outputs(struct drm_backend *b, struct udev_device 
*drm_device)
-       if (disconnects) {
-               wl_list_for_each_safe(output, next, &b->compositor->output_list,
-                                     base.link) {
--                      if (disconnects & (1 << output->connector_id)) {
--                              disconnects &= ~(1 << output->connector_id);
-+                      if (disconnects & (1ULL << output->connector_id)) {
-+                              disconnects &= ~(1ULL << output->connector_id);
-                               weston_log("connector %d disconnected\n",
-                                      output->connector_id);
-                               drm_output_destroy(&output->base);
--- 
-1.9.1
-
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-compositor-drm-support-RGB565-with-pixman-renderer.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0001-compositor-drm-support-RGB565-with-pixman-renderer.patch
deleted file mode 100644
index 0d77f52..0000000
--- 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-compositor-drm-support-RGB565-with-pixman-renderer.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-From 91b452fa515b94928d32af6e1b1b0405469747fd Mon Sep 17 00:00:00 2001
-From: Tomi Valkeinen <tomi.valkei...@ti.com>
-Date: Wed, 8 Mar 2017 13:05:38 -0500
-Subject: [PATCH] compositor-drm: support RGB565 with pixman renderer
-
-At the moment only XRGB8888 is supported when using pixman renderer.
-This patch adds support also for RGB565.
-
-Signed-off-by: Tomi Valkeinen <tomi.valkei...@ti.com>
-Reviewed-by: Daniel Stone <dani...@collabora.com>
-Reviewed-by: Derek Foreman <der...@osg.samsung.com>
-Signed-off-by: Daniel Stone <dani...@collabora.com>
----
- src/compositor-drm.c | 62 ++++++++++++++++++++++++++++++++++++++++++++++------
- 1 file changed, 55 insertions(+), 7 deletions(-)
-
-diff --git a/src/compositor-drm.c b/src/compositor-drm.c
-index fd89627..443b69a 100644
---- a/src/compositor-drm.c
-+++ b/src/compositor-drm.c
-@@ -262,10 +262,12 @@ drm_fb_destroy_callback(struct gbm_bo *bo, void *data)
- }
- 
- static struct drm_fb *
--drm_fb_create_dumb(struct drm_backend *b, unsigned width, unsigned height)
-+drm_fb_create_dumb(struct drm_backend *b, unsigned width, unsigned height,
-+                 uint32_t format)
- {
-       struct drm_fb *fb;
-       int ret;
-+      uint32_t bpp, depth;
- 
-       struct drm_mode_create_dumb create_arg;
-       struct drm_mode_destroy_dumb destroy_arg;
-@@ -275,8 +277,20 @@ drm_fb_create_dumb(struct drm_backend *b, unsigned width, 
unsigned height)
-       if (!fb)
-               return NULL;
- 
-+      switch (format) {
-+              case GBM_FORMAT_XRGB8888:
-+                      bpp = 32;
-+                      depth = 24;
-+                      break;
-+              case GBM_FORMAT_RGB565:
-+                      bpp = depth = 16;
-+                      break;
-+              default:
-+                      return NULL;
-+      }
-+
-       memset(&create_arg, 0, sizeof create_arg);
--      create_arg.bpp = 32;
-+      create_arg.bpp = bpp;
-       create_arg.width = width;
-       create_arg.height = height;
- 
-@@ -289,8 +303,29 @@ drm_fb_create_dumb(struct drm_backend *b, unsigned width, 
unsigned height)
-       fb->size = create_arg.size;
-       fb->fd = b->drm.fd;
- 
--      ret = drmModeAddFB(b->drm.fd, width, height, 24, 32,
--                         fb->stride, fb->handle, &fb->fb_id);
-+      ret = -1;
-+
-+      if (!b->no_addfb2) {
-+              uint32_t handles[4], pitches[4], offsets[4];
-+
-+              handles[0] = fb->handle;
-+              pitches[0] = fb->stride;
-+              offsets[0] = 0;
-+
-+              ret = drmModeAddFB2(b->drm.fd, width, height,
-+                                  format, handles, pitches, offsets,
-+                                  &fb->fb_id, 0);
-+              if (ret) {
-+                      weston_log("addfb2 failed: %m\n");
-+                      b->no_addfb2 = 1;
-+              }
-+      }
-+
-+      if (ret) {
-+              ret = drmModeAddFB(b->drm.fd, width, height, depth, bpp,
-+                                 fb->stride, fb->handle, &fb->fb_id);
-+      }
-+
-       if (ret)
-               goto err_bo;
- 
-@@ -1879,17 +1914,30 @@ drm_output_init_pixman(struct drm_output *output, 
struct drm_backend *b)
- {
-       int w = output->base.current_mode->width;
-       int h = output->base.current_mode->height;
-+      uint32_t format = output->gbm_format;
-+      uint32_t pixman_format;
-       unsigned int i;
- 
--      /* FIXME error checking */
-+      switch (format) {
-+              case GBM_FORMAT_XRGB8888:
-+                      pixman_format = PIXMAN_x8r8g8b8;
-+                      break;
-+              case GBM_FORMAT_RGB565:
-+                      pixman_format = PIXMAN_r5g6b5;
-+                      break;
-+              default:
-+                      weston_log("Unsupported pixman format 0x%x\n", format);
-+                      return -1;
-+      }
- 
-+      /* FIXME error checking */
-       for (i = 0; i < ARRAY_LENGTH(output->dumb); i++) {
--              output->dumb[i] = drm_fb_create_dumb(b, w, h);
-+              output->dumb[i] = drm_fb_create_dumb(b, w, h, format);
-               if (!output->dumb[i])
-                       goto err;
- 
-               output->image[i] =
--                      pixman_image_create_bits(PIXMAN_x8r8g8b8, w, h,
-+                      pixman_image_create_bits(pixman_format, w, h,
-                                                output->dumb[i]->map,
-                                                output->dumb[i]->stride);
-               if (!output->image[i])
--- 
-1.9.1
-
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-udev-seat-restrict-udev-enumeration-to-card0.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0001-udev-seat-restrict-udev-enumeration-to-card0.patch
index 515f06c..5ec9cd7 100644
--- 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-udev-seat-restrict-udev-enumeration-to-card0.patch
+++ 
b/meta-arago-distro/recipes-graphics/wayland/weston/0001-udev-seat-restrict-udev-enumeration-to-card0.patch
@@ -1,7 +1,7 @@
-From e8e7a9f7dfa164a75fdbdca87622a2e13334478a Mon Sep 17 00:00:00 2001
-From: Anand Balagopalakrishnan <ana...@ti.com>
-Date: Sat, 23 Jan 2016 22:48:07 +0530
-Subject: [PATCH 1/1] udev-seat: restrict udev enumeration to card0
+From e57e9245dcb5d1349467c7fc36d153f3336f6a1a Mon Sep 17 00:00:00 2001
+From: Karthik Ramanan <a0393...@ti.com>
+Date: Mon, 12 Mar 2018 10:46:29 +0530
+Subject: [PATCH 1/4] udev-seat: restrict udev enumeration to card0
 
 In case of separate GPU and Display devices as found in embedded systems, we
 could have modeset node and render node controlled by different drivers.
@@ -16,22 +16,24 @@ to display is returned as the primary DRM device.
 Upstream-Status: Pending
 
 Signed-off-by: Anand Balagopalakrishnan <ana...@ti.com>
+Signed-off-by: Karthik Ramanan <a0393...@ti.com>
 ---
- src/compositor-drm.c |    2 +-
+ libweston/compositor-drm.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-diff --git a/src/compositor-drm.c b/src/compositor-drm.c
-index 6777bf8..59c2cc5 100644
---- a/src/compositor-drm.c
-+++ b/src/compositor-drm.c
-@@ -2827,7 +2827,7 @@ find_primary_gpu(struct drm_backend *b, const char *seat)
-
-       e = udev_enumerate_new(b->udev);
-       udev_enumerate_add_match_subsystem(e, "drm");
+diff --git a/libweston/compositor-drm.c b/libweston/compositor-drm.c
+index 1d38f05..649b4f5 100644
+--- a/libweston/compositor-drm.c
++++ b/libweston/compositor-drm.c
+@@ -2957,7 +2957,7 @@ find_primary_gpu(struct drm_backend *b, const char *seat)
+ 
+       e = udev_enumerate_new(b->udev);
+       udev_enumerate_add_match_subsystem(e, "drm");
 -      udev_enumerate_add_match_sysname(e, "card[0-9]*");
 +      udev_enumerate_add_match_sysname(e, "card0");
+ 
+       udev_enumerate_scan_devices(e);
+       drm_device = NULL;
+-- 
+1.9.1
 
-       udev_enumerate_scan_devices(e);
-       drm_device = NULL;
---
-1.7.9.5
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-weston-Enabling-DRM-backend-with-multiple-displays.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0001-weston-Enabling-DRM-backend-with-multiple-displays.patch
deleted file mode 100644
index 2f215c9..0000000
--- 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-weston-Enabling-DRM-backend-with-multiple-displays.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From b1829ce962aa4e13d737edb54130bdce05f068f0 Mon Sep 17 00:00:00 2001
-From: Karthik Ramanan <a0393...@ti.com>
-Date: Wed, 17 Dec 2014 09:21:49 +0530
-Subject: [PATCH] weston: Enabling DRM backend with multiple displays
-
-There are three main issues that this patch tries to address
-
- 1. Black screen when running weston
- 2. Support for multiple displays
- 3. Handling missing VBlanks
-
-There is an issue with missing VBlanks for LCD and
-HDMI connectors which leads to display not getting refreshed.
-This patch can be considered as a workaround.
-
-Signed-off-by: Karthik Ramanan <a0393...@ti.com>
----
- src/compositor-drm.c |   10 ++++++++--
- 1 files changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/src/compositor-drm.c b/src/compositor-drm.c
-index e4496e7..3b22aa3 100644
---- a/src/compositor-drm.c
-+++ b/src/compositor-drm.c
-@@ -646,7 +646,7 @@ drm_output_repaint(struct weston_output *output_base,
-                       .request.sequence = 1,
-               };
- 
--              if ((!s->current && !s->next) ||
-+              if ((!s->current && !s->next) &&
-                   !drm_sprite_crtc_supported(output_base, s->possible_crtcs))
-                       continue;
- 
-@@ -757,6 +757,7 @@ page_flip_handler(int fd, unsigned int frame,
- {
-       struct drm_output *output = (struct drm_output *) data;
-       uint32_t msecs;
-+      uint32_t bail;
- 
-       /* We don't set page_flip_pending on start_repaint_loop, in that case
-        * we just want to page flip to the current buffer to get an accurate
-@@ -769,9 +770,14 @@ page_flip_handler(int fd, unsigned int frame,
- 
-       output->page_flip_pending = 0;
- 
-+      if(output->vblank_pending) {
-+              weston_log("VBlank is pending for connector = %d, frame = 
%d\n", output->connector_id, frame);
-+              bail = 1;
-+      }
-+
-       if (output->destroy_pending)
-               drm_output_destroy(&output->base);
--      else if (!output->vblank_pending) {
-+      else if (!output->vblank_pending || bail ) {
-               msecs = sec * 1000 + usec / 1000;
-               weston_output_finish_frame(&output->base, msecs);
- 
--- 
-1.7.9.5
-
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-weston1.9.0-Enabling-DRM-backend-with-multiple-displ.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0001-weston1.9.0-Enabling-DRM-backend-with-multiple-displ.patch
deleted file mode 100644
index 3efceb5..0000000
--- 
a/meta-arago-distro/recipes-graphics/wayland/weston/0001-weston1.9.0-Enabling-DRM-backend-with-multiple-displ.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 15d9f155fdb3abffc348e81b1560702801994715 Mon Sep 17 00:00:00 2001
-From: Karthik Ramanan <a0393...@ti.com>
-Date: Mon, 11 Jan 2016 11:51:30 -0500
-Subject: [PATCH 1/2] weston1.9.0: Enabling DRM backend with multiple displays
-
-There are three main issues that this patch tries to address
-
- 1. Black screen when running weston
- 2. Support for multiple displays
- 3. Handling missing VBlanks
-
-There is an issue with missing VBlanks for LCD and
-HDMI connectors which leads to display not getting refreshed.
-This patch can be considered as a workaround.
-
-Signed-off-by: Karthik Ramanan <a0393...@ti.com>
----
- src/compositor-drm.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/src/compositor-drm.c b/src/compositor-drm.c
-index 6777bf8..15ddba8 100644
---- a/src/compositor-drm.c
-+++ b/src/compositor-drm.c
-@@ -686,7 +686,7 @@ drm_output_repaint(struct weston_output *output_base,
-                       .request.sequence = 1,
-               };
- 
--              if ((!s->current && !s->next) ||
-+              if ((!s->current && !s->next) &&
-                   !drm_sprite_crtc_supported(output, s->possible_crtcs))
-                       continue;
- 
-@@ -847,6 +847,7 @@ page_flip_handler(int fd, unsigned int frame,
- {
-       struct drm_output *output = (struct drm_output *) data;
-       struct timespec ts;
-+      uint32_t bail;
-       uint32_t flags = PRESENTATION_FEEDBACK_KIND_VSYNC |
-                        PRESENTATION_FEEDBACK_KIND_HW_COMPLETION |
-                        PRESENTATION_FEEDBACK_KIND_HW_CLOCK;
-@@ -864,9 +865,14 @@ page_flip_handler(int fd, unsigned int frame,
- 
-       output->page_flip_pending = 0;
- 
-+      if(output->vblank_pending) {
-+              weston_log("VBlank is pending for connector = %d, frame = 
%d\n", output->connector_id, frame);
-+              bail = 1;
-+      }
-+
-       if (output->destroy_pending)
-               drm_output_destroy(&output->base);
--      else if (!output->vblank_pending) {
-+      else if (!output->vblank_pending || bail ) {
-               ts.tv_sec = sec;
-               ts.tv_nsec = usec * 1000;
-               weston_output_finish_frame(&output->base, &ts, flags);
--- 
-1.9.1
-
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0002-Weston-Allow-visual_id-to-be-0.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0002-Weston-Allow-visual_id-to-be-0.patch
deleted file mode 100644
index 39c8401..0000000
--- 
a/meta-arago-distro/recipes-graphics/wayland/weston/0002-Weston-Allow-visual_id-to-be-0.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 5b5de6a814b43ca023a92b85b407b3d061dbc64f Mon Sep 17 00:00:00 2001
-From: Eric Ruei <e-ru...@ti.com>
-Date: Thu, 9 Mar 2017 14:32:24 -0500
-Subject: [PATCH 2/4] Weston: Allow visual_id to be 0
-
-The inquiry of visual id from egl API eglGetConfigAttrib(EGL_NATIVE_VISUAL_ID)
-is an optional feature. The visual id will be set to 0 if this feature is
-not supported. Therefore, the return condition @function 
match_config_to_visual()
-should be (id == visual_id || id == 0) instead of (id == visual_id)
-
-Signed-off-by: Eric Ruei <e-ru...@ti.com>
----
- src/gl-renderer.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/gl-renderer.c b/src/gl-renderer.c
-index 23c0cd7..4c1f170 100644
---- a/src/gl-renderer.c
-+++ b/src/gl-renderer.c
-@@ -2462,7 +2462,7 @@ match_config_to_visual(EGLDisplay egl_display,
-                               &id))
-                       continue;
- 
--              if (id == visual_id)
-+              if (id == visual_id || id == 0)
-                       return i;
-       }
- 
--- 
-1.9.1
-
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0002-weston-Allow-visual_id-to-be-0.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0002-weston-Allow-visual_id-to-be-0.patch
new file mode 100644
index 0000000..a354d94
--- /dev/null
+++ 
b/meta-arago-distro/recipes-graphics/wayland/weston/0002-weston-Allow-visual_id-to-be-0.patch
@@ -0,0 +1,34 @@
+From 5695eab02bb88318bf99d568b6d0e4592d5f9981 Mon Sep 17 00:00:00 2001
+From: Karthik Ramanan <a0393...@ti.com>
+Date: Mon, 12 Mar 2018 10:47:02 +0530
+Subject: [PATCH 2/4] weston: Allow visual_id to be 0
+
+The inquiry of visual id from egl API eglGetConfigAttrib(EGL_NATIVE_VISUAL_ID)
+is an optional feature. The visual id will be set to 0 if this feature is
+not supported. Therefore, the return condition @function 
match_config_to_visual()
+should be (id == visual_id || id == 0) instead of (id == visual_id)
+
+Upstream status: Pending
+
+Signed-off-by: Eric Ruei <e-ru...@ti.com>
+Signed-off-by: Karthik Ramanan <a0393...@ti.com>
+---
+ libweston/gl-renderer.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libweston/gl-renderer.c b/libweston/gl-renderer.c
+index c6091af..9299dc6 100644
+--- a/libweston/gl-renderer.c
++++ b/libweston/gl-renderer.c
+@@ -2575,7 +2575,7 @@ match_config_to_visual(EGLDisplay egl_display,
+                               &id))
+                       continue;
+ 
+-              if (id == visual_id)
++              if (id == visual_id || id == 0)
+                       return i;
+       }
+ 
+-- 
+1.9.1
+
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0003-Weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0003-Weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
deleted file mode 100644
index bdf5626..0000000
--- 
a/meta-arago-distro/recipes-graphics/wayland/weston/0003-Weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 0d15218ced5bf2e6f3d05758f0f5f21c2a0303f2 Mon Sep 17 00:00:00 2001
-From: Eric Ruei <e-ru...@ti.com>
-Date: Thu, 9 Mar 2017 14:33:08 -0500
-Subject: [PATCH 3/4] Weston: Fix virtual keyboard display issue for QT5
- application
-
-The virtual keyboard does pop up as expected, however, it will never hide
-even when the application is terminated. This problem is due to the order
-of the text APIs( text_input_activate and test_input_show_input_panel) are
-invoked in QT5 and a potential bug of the API implementation. The virtual
-keyboard works as expected if the test_input_show_input_panel() is invoked
-prior to the test_input_activate() as most of the weston sample applications
-do. However, the problem will show up if that order is reversed and the reason
-why is that the current_panel is not set in this case and hence this panel
-cannot be hidden.
-
-It is required to set the current_panel to the text_input when the input_panel
-becomes visible at the first time.
-
-Signed-off-by: Eric Ruei <e-ru...@ti.com>
----
- src/text-backend.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/text-backend.c b/src/text-backend.c
-index ab4667f..36c70a5 100644
---- a/src/text-backend.c
-+++ b/src/text-backend.c
-@@ -337,6 +337,7 @@ text_input_show_input_panel(struct wl_client *client,
-                              text_input->surface);
-               wl_signal_emit(&ec->update_input_panel_signal,
-                              &text_input->cursor_rectangle);
-+              text_input->manager->current_panel = text_input;
-       }
- }
- 
--- 
-1.9.1
-
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0003-weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0003-weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
new file mode 100644
index 0000000..8d285fa
--- /dev/null
+++ 
b/meta-arago-distro/recipes-graphics/wayland/weston/0003-weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
@@ -0,0 +1,42 @@
+From 9c3cf93336b77a1eecc1d72ffec3b113161a822b Mon Sep 17 00:00:00 2001
+From: Karthik Ramanan <a0393...@ti.com>
+Date: Mon, 12 Mar 2018 10:54:45 +0530
+Subject: [PATCH 3/4] weston: Fix virtual keyboard display issue for QT5
+ application
+
+The virtual keyboard does pop up as expected, however, it will never hide
+even when the application is terminated. This problem is due to the order
+of the text APIs( text_input_activate and test_input_show_input_panel) are
+invoked in QT5 and a potential bug of the API implementation. The virtual
+keyboard works as expected if the test_input_show_input_panel() is invoked
+prior to the test_input_activate() as most of the weston sample applications
+do. However, the problem will show up if that order is reversed and the reason
+why is that the current_panel is not set in this case and hence this panel
+cannot be hidden.
+
+It is required to set the current_panel to the text_input when the input_panel
+becomes visible at the first time.
+
+Upstream status: Pending
+
+Signed-off-by: Eric Ruei <e-ru...@ti.com>
+Signed-off-by: Karthik Ramanan <a0393...@ti.com>
+---
+ compositor/text-backend.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/compositor/text-backend.c b/compositor/text-backend.c
+index bf5c45c..d8b0bb1 100644
+--- a/compositor/text-backend.c
++++ b/compositor/text-backend.c
+@@ -340,6 +340,7 @@ text_input_show_input_panel(struct wl_client *client,
+                              text_input->surface);
+               wl_signal_emit(&ec->update_input_panel_signal,
+                              &text_input->cursor_rectangle);
++              text_input->manager->current_panel = text_input;
+       }
+ }
+ 
+-- 
+1.9.1
+
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0004-Weston-Fix-touch-screen-crash-issue.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0004-Weston-Fix-touch-screen-crash-issue.patch
deleted file mode 100644
index 673ca3d..0000000
--- 
a/meta-arago-distro/recipes-graphics/wayland/weston/0004-Weston-Fix-touch-screen-crash-issue.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 8958bf21960a475d2933e688d0da9a0d2186d509 Mon Sep 17 00:00:00 2001
-From: Eric Ruei <e-ru...@ti.com>
-Date: Thu, 9 Mar 2017 14:34:18 -0500
-Subject: [PATCH 4/4] Weston: Fix touch screen crash issue
-
-Touch screen operation causes the weston to crash with segment fault sometimes.
-The crash occurs when the coordinate (x,y) passed to the weston input module
-is outside the view window, hence the weston compositor is not able to pick
-up a display view and there is no code to detect this condition at function
-notify_touch().
-
-Signed-off-by: Eric Ruei <e-ru...@ti.com>
----
- src/input.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/src/input.c b/src/input.c
-index 8fe898c..0f72d23 100644
---- a/src/input.c
-+++ b/src/input.c
-@@ -1848,6 +1848,12 @@ notify_touch(struct weston_seat *seat, uint32_t time, 
int touch_id,
-                * until all touch points are up again. */
-               if (touch->num_tp == 1) {
-                       ev = weston_compositor_pick_view(ec, x, y, &sx, &sy);
-+                      if (!ev)
-+                      {
-+                              weston_log("notify_touch: 
weston_compositor_pick_view(%d, %d) failed to find a view!\n",
-+                                                      wl_fixed_to_int(x), 
wl_fixed_to_int(y));
-+                              return;
-+                      }
-                       weston_touch_set_focus(touch, ev);
-               } else if (!touch->focus) {
-                       /* Unexpected condition: We have non-initial touch but
--- 
-1.9.1
-
diff --git 
a/meta-arago-distro/recipes-graphics/wayland/weston/0004-weston-Fix-touch-screen-crash-issue.patch
 
b/meta-arago-distro/recipes-graphics/wayland/weston/0004-weston-Fix-touch-screen-crash-issue.patch
new file mode 100644
index 0000000..4849d5b
--- /dev/null
+++ 
b/meta-arago-distro/recipes-graphics/wayland/weston/0004-weston-Fix-touch-screen-crash-issue.patch
@@ -0,0 +1,39 @@
+From 60250e9dc57fe56148c8a24bba107bce8a873fb4 Mon Sep 17 00:00:00 2001
+From: Karthik Ramanan <a0393...@ti.com>
+Date: Mon, 12 Mar 2018 10:56:28 +0530
+Subject: [PATCH 4/4] weston: Fix touch screen crash issue
+
+Touch screen operation causes the weston to crash with segment fault sometimes.
+The crash occurs when the coordinate (x,y) passed to the weston input module
+is outside the view window, hence the weston compositor is not able to pick
+up a display view and there is no code to detect this condition at function
+notify_touch().
+
+Upstream status: pending
+
+Signed-off-by: Eric Ruei <e-ru...@ti.com>
+Signed-off-by: Karthik Ramanan <a0393...@ti.com>
+---
+ libweston/input.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/libweston/input.c b/libweston/input.c
+index 4fedc55..bcb2f28 100644
+--- a/libweston/input.c
++++ b/libweston/input.c
+@@ -2185,6 +2185,12 @@ notify_touch(struct weston_seat *seat, uint32_t time, 
int touch_id,
+                * until all touch points are up again. */
+               if (touch->num_tp == 1) {
+                       ev = weston_compositor_pick_view(ec, x, y, &sx, &sy);
++                      if (!ev)
++                      {
++                              weston_log("notify_touch: 
weston_compositor_pick_view(%d, %d) failed to find a view!\n",
++                                                      wl_fixed_to_int(x), 
wl_fixed_to_int(y));
++                              return;
++                      }
+                       weston_touch_set_focus(touch, ev);
+               } else if (!touch->focus) {
+                       /* Unexpected condition: We have non-initial touch but
+-- 
+1.9.1
+
diff --git a/meta-arago-distro/recipes-graphics/wayland/weston_2.0.0.bbappend 
b/meta-arago-distro/recipes-graphics/wayland/weston_2.0.0.bbappend
index 4a6c580..ce6f56d 100644
--- a/meta-arago-distro/recipes-graphics/wayland/weston_2.0.0.bbappend
+++ b/meta-arago-distro/recipes-graphics/wayland/weston_2.0.0.bbappend
@@ -2,7 +2,7 @@
 PACKAGECONFIG[fbdev] = "--enable-fbdev-compositor 
WESTON_NATIVE_BACKEND="fbdev-backend.so",--disable-fbdev-compositor,udev mtdev"
 PACKAGECONFIG[kms] = "--enable-drm-compositor,--disable-drm-compositor,drm 
udev libgbm mtdev"
 
-PR_append = ".arago22"
+PR_append = ".arago28"
 
 FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
 
@@ -10,11 +10,10 @@ RDEPENDS_${PN} += "weston-conf"
 
 
 SRC_URI += " \
+       file://0001-udev-seat-restrict-udev-enumeration-to-card0.patch \
+        file://0002-weston-Allow-visual_id-to-be-0.patch \
+        file://0003-weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch 
\
+        file://0004-weston-Fix-touch-screen-crash-issue.patch \
 "
 
-#      file://0001-udev-seat-restrict-udev-enumeration-to-card0.patch
-#      file://0002-Weston-Allow-visual_id-to-be-0.patch
-#      file://0003-Weston-Fix-virtual-keyboard-display-issue-for-QT5-ap.patch
-#      file://0004-Weston-Fix-touch-screen-crash-issue.patch
-#      file://0001-compositor-drm-fix-hotplug-weston-termination-proble.patch
-#      file://0001-compositor-drm-support-RGB565-with-pixman-renderer.patch
+INHIBIT_PACKAGE_STRIP = "1"
-- 
1.9.1

_______________________________________________
meta-arago mailing list
meta-arago@arago-project.org
http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago

Reply via email to