From f408674677968201279bde8f9b141cadde1a0706 Mon Sep 17 00:00:00 2001 From: Veeresh Kadasani Date: Wed, 7 Aug 2019 21:19:15 +0900 Subject: 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 --- ...tor-drm-introduce-drm_get_dmafd_from_view.patch | 36 +++++++++++++--------- 1 file changed, 22 insertions(+), 14 deletions(-) (limited to 'meta-agl-profile-graphical/recipes-graphics') 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 -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 --- - 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); -- cgit 1.2.3-korg