aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVeeresh Kadasani <external.vkadasani@jp.adit-jv.com>2019-08-07 21:19:15 +0900
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2019-09-03 13:34:34 +0000
commit0fef47773d2eb4970e51df3cae0b07bf0d60536b (patch)
tree413dd389886590b35951d45db375654ddde6ec6d
parentf3f068727cc5648d48ba0b4fca1aa8a17ae41b2c (diff)
fix drm-introduce-drm_get_dmafd_from_view.patch
Fix crashing transmitter when testing with weston 6.0 because of unregistered API. Bug-AGL: SPEC-2696 Change-Id: Ib7cc01a4305da9a656b933f295e745dd56131ff4 Signed-off-by: Veeresh Kadasani <external.vkadasani@jp.adit-jv.com>
-rw-r--r--meta-agl-profile-graphical/recipes-graphics/wayland/weston/0003-compositor-drm-introduce-drm_get_dmafd_from_view.patch36
1 files changed, 22 insertions, 14 deletions
diff --git a/meta-agl-profile-graphical/recipes-graphics/wayland/weston/0003-compositor-drm-introduce-drm_get_dmafd_from_view.patch b/meta-agl-profile-graphical/recipes-graphics/wayland/weston/0003-compositor-drm-introduce-drm_get_dmafd_from_view.patch
index f67f1c07a..388e430d8 100644
--- a/meta-agl-profile-graphical/recipes-graphics/wayland/weston/0003-compositor-drm-introduce-drm_get_dmafd_from_view.patch
+++ b/meta-agl-profile-graphical/recipes-graphics/wayland/weston/0003-compositor-drm-introduce-drm_get_dmafd_from_view.patch
@@ -1,24 +1,25 @@
-From 6bed527fe0a4101ef214abaf2cd82609b6c510e4 Mon Sep 17 00:00:00 2001
+From 2cb25adac6b968104bbfb276c684506607dfbff4 Mon Sep 17 00:00:00 2001
From: Veeresh Kadasani <external.vkadasani@jp.adit-jv.com>
-Date: Tue, 30 Jul 2019 20:25:34 +0900
-Subject: [PATCH 2/2] compositor-drm: introduce drm_get_dmafd_from_view
+Date: Wed, 7 Aug 2019 21:05:11 +0900
+Subject: [PATCH 1/1] compositor-drm: introduce drm_get_dmafd_from_view
This API enables to get dmafd from weston_view
Signed-off-by: Veeresh Kadasani <external.vkadasani@jp.adit-jv.com>
---
- libweston/compositor-drm.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++
+ libweston/compositor-drm.c | 59 ++++++++++++++++++++++++++++++++++++++++++++++
libweston/compositor-drm.h | 7 ++++++
- 2 files changed, 65 insertions(+)
+ 2 files changed, 66 insertions(+)
diff --git a/libweston/compositor-drm.c b/libweston/compositor-drm.c
-index b83459a..5cabfb5 100644
+index b83459a..98ad85c 100644
--- a/libweston/compositor-drm.c
+++ b/libweston/compositor-drm.c
-@@ -5849,6 +5849,64 @@ drm_output_set_seat(struct weston_output *base,
+@@ -5848,6 +5848,64 @@ drm_output_set_seat(struct weston_output *base,
+ seat ? seat : "");
}
- static int
++ static int
+drm_get_dma_fd_from_view(struct weston_output *base,
+ struct weston_view *ev, int *buf_stride)
+{
@@ -27,7 +28,7 @@ index b83459a..5cabfb5 100644
+ struct gbm_bo *bo;
+ struct drm_fb *current;
+ struct linux_dmabuf_buffer *dmabuf;
-+ bool is_opaque = drm_view_is_opaque(ev);
++ bool is_opaque = weston_view_is_opaque(ev,&ev->transform.boundingbox);
+ uint32_t format;
+ int fd, ret;
+
@@ -76,12 +77,19 @@ index b83459a..5cabfb5 100644
+ return fd;
+}
+
-+static int
+ static int
drm_output_init_gamma_size(struct drm_output *output)
{
- struct drm_backend *backend = to_drm_backend(output->base.compositor);
+@@ -7396,6 +7454,7 @@ static const struct weston_drm_output_api api = {
+ drm_output_set_mode,
+ drm_output_set_gbm_format,
+ drm_output_set_seat,
++ drm_get_dma_fd_from_view
+ };
+
+ static const struct weston_drm_virtual_output_api virt_api = {
diff --git a/libweston/compositor-drm.h b/libweston/compositor-drm.h
-index 71a306f..4f985d3 100644
+index 71a306f..a9379e4 100644
--- a/libweston/compositor-drm.h
+++ b/libweston/compositor-drm.h
@@ -78,6 +78,13 @@ struct weston_drm_output_api {
@@ -89,9 +97,9 @@ index 71a306f..4f985d3 100644
void (*set_seat)(struct weston_output *output,
const char *seat);
+
-+ /** Get the dma fd from drm view.
++ /** Get the dma fd from drm view.
+ *
-+ * The dma fd is got from weston_view.
++ * The dma fd is got from weston_view.
+ * Returns fd on success, -1 on failure.
+ */
+ int (*get_dma_fd_from_view)(struct weston_output *output, struct weston_view *view, int *buf_stride);