diff options
17 files changed, 197 insertions, 51 deletions
diff --git a/recipes-graphics/userland/userland/0001-Allow-applications-to-set-next-resource-handle.patch b/recipes-graphics/userland/userland/0001-Allow-applications-to-set-next-resource-handle.patch index 5861c4e..933f279 100644 --- a/recipes-graphics/userland/userland/0001-Allow-applications-to-set-next-resource-handle.patch +++ b/recipes-graphics/userland/userland/0001-Allow-applications-to-set-next-resource-handle.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From e45bc677368d0f8d42720aad242f33f6e2687fb1 Mon Sep 17 00:00:00 2001 | 1 | From 0a64dc61d3d7db69389157ae757203b4b3afdbfa Mon Sep 17 00:00:00 2001 |
2 | From: Dom Cobley <dc4@broadcom.com> | 2 | From: Dom Cobley <dc4@broadcom.com> |
3 | Date: Tue, 9 Jul 2013 09:26:26 -0400 | 3 | Date: Tue, 9 Jul 2013 09:26:26 -0400 |
4 | Subject: [PATCH 01/15] Allow applications to set next resource handle | 4 | Subject: [PATCH 01/16] Allow applications to set next resource handle |
5 | 5 | ||
6 | This patch adds provisions in userland to | 6 | This patch adds provisions in userland to |
7 | let apps callers set the next rendereing dispmanx resource. | 7 | let apps callers set the next rendereing dispmanx resource. |
@@ -204,5 +204,5 @@ index 8a5734c..51b3580 100644 | |||
204 | 204 | ||
205 | FN(void, eglIntGetColorData_impl, (EGL_SURFACE_ID_T s, KHRN_IMAGE_FORMAT_T format, uint32_t width, uint32_t height, int32_t stride, uint32_t y_offset, void *data)) | 205 | FN(void, eglIntGetColorData_impl, (EGL_SURFACE_ID_T s, KHRN_IMAGE_FORMAT_T format, uint32_t width, uint32_t height, int32_t stride, uint32_t y_offset, void *data)) |
206 | -- | 206 | -- |
207 | 2.15.0 | 207 | 2.16.1 |
208 | 208 | ||
diff --git a/recipes-graphics/userland/userland/0002-wayland-Add-support-for-the-Wayland-winsys.patch b/recipes-graphics/userland/userland/0002-wayland-Add-support-for-the-Wayland-winsys.patch index d6e6476..e9c7058 100644 --- a/recipes-graphics/userland/userland/0002-wayland-Add-support-for-the-Wayland-winsys.patch +++ b/recipes-graphics/userland/userland/0002-wayland-Add-support-for-the-Wayland-winsys.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 15fb270f438f4ef1413192b5ce1e0dc784b45d9e Mon Sep 17 00:00:00 2001 | 1 | From 5608ec8002be8370e78c9dbb1e07cee4cfb18b58 Mon Sep 17 00:00:00 2001 |
2 | From: Tomeu Vizoso <tomeu.vizoso@collabora.com> | 2 | From: Tomeu Vizoso <tomeu.vizoso@collabora.com> |
3 | Date: Tue, 1 Oct 2013 13:19:20 +0200 | 3 | Date: Tue, 1 Oct 2013 13:19:20 +0200 |
4 | Subject: [PATCH 02/15] wayland: Add support for the Wayland winsys | 4 | Subject: [PATCH 02/16] wayland: Add support for the Wayland winsys |
5 | 5 | ||
6 | * Adds EGL_WL_bind_wayland_display extension | 6 | * Adds EGL_WL_bind_wayland_display extension |
7 | * Adds wayland-egl library | 7 | * Adds wayland-egl library |
@@ -89,13 +89,13 @@ index cfc8ae5..673a5ad 100644 | |||
89 | 89 | ||
90 | # Global include paths | 90 | # Global include paths |
91 | diff --git a/README.md b/README.md | 91 | diff --git a/README.md b/README.md |
92 | index 358d2b4..4da4448 100644 | 92 | index 94b93b8..50b90b1 100644 |
93 | --- a/README.md | 93 | --- a/README.md |
94 | +++ b/README.md | 94 | +++ b/README.md |
95 | @@ -4,3 +4,7 @@ EGL, mmal, GLESv2, vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG. | 95 | @@ -6,3 +6,7 @@ Use buildme to build. It requires cmake to be installed and an arm cross compile |
96 | |||
97 | Use buildme to build. It requires cmake to be installed and an arm cross compiler. It is set up to use this one: | ||
98 | https://github.com/raspberrypi/tools/tree/master/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian | 96 | https://github.com/raspberrypi/tools/tree/master/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian |
97 | |||
98 | Note that this repository does not contain the source for the edid_parser and vcdbg binaries due to licensing restrictions. | ||
99 | + | 99 | + |
100 | +To build support for the Wayland winsys in EGL, execute the buildme script like this: | 100 | +To build support for the Wayland winsys in EGL, execute the buildme script like this: |
101 | + | 101 | + |
@@ -1884,5 +1884,5 @@ index 0000000..ad90d30 | |||
1884 | + set(${_sources} ${${_sources}} PARENT_SCOPE) | 1884 | + set(${_sources} ${${_sources}} PARENT_SCOPE) |
1885 | +endfunction() | 1885 | +endfunction() |
1886 | -- | 1886 | -- |
1887 | 2.15.0 | 1887 | 2.16.1 |
1888 | 1888 | ||
diff --git a/recipes-graphics/userland/userland/0003-wayland-Add-Wayland-example.patch b/recipes-graphics/userland/userland/0003-wayland-Add-Wayland-example.patch index 1d78755..e3a0cf2 100644 --- a/recipes-graphics/userland/userland/0003-wayland-Add-Wayland-example.patch +++ b/recipes-graphics/userland/userland/0003-wayland-Add-Wayland-example.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From b0437cf318a26c62119ad60649430903f58bbab4 Mon Sep 17 00:00:00 2001 | 1 | From 20ac7c6af4e826b5c536b6a7c8b2d1d266ced81e Mon Sep 17 00:00:00 2001 |
2 | From: Tomeu Vizoso <tomeu.vizoso@collabora.com> | 2 | From: Tomeu Vizoso <tomeu.vizoso@collabora.com> |
3 | Date: Tue, 1 Oct 2013 13:19:20 +0200 | 3 | Date: Tue, 1 Oct 2013 13:19:20 +0200 |
4 | Subject: [PATCH 03/15] wayland: Add Wayland example | 4 | Subject: [PATCH 03/16] wayland: Add Wayland example |
5 | 5 | ||
6 | --- | 6 | --- |
7 | .../linux/apps/hello_pi/CMakeLists.txt | 1 + | 7 | .../linux/apps/hello_pi/CMakeLists.txt | 1 + |
@@ -862,5 +862,5 @@ index 8225dd5..0be6ce7 100755 | |||
862 | - | 862 | - |
863 | +make -C hello_wayland | 863 | +make -C hello_wayland |
864 | -- | 864 | -- |
865 | 2.15.0 | 865 | 2.16.1 |
866 | 866 | ||
diff --git a/recipes-graphics/userland/userland/0004-wayland-egl-Add-bcm_host-to-dependencies.patch b/recipes-graphics/userland/userland/0004-wayland-egl-Add-bcm_host-to-dependencies.patch index d60c432..713fc3e 100644 --- a/recipes-graphics/userland/userland/0004-wayland-egl-Add-bcm_host-to-dependencies.patch +++ b/recipes-graphics/userland/userland/0004-wayland-egl-Add-bcm_host-to-dependencies.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From cae4ff834eef23c8f23126ba4d630db395f13aee Mon Sep 17 00:00:00 2001 | 1 | From f17879b691984b5c4950e4b94ebf102c78797ede Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Mon, 10 Aug 2015 02:38:27 -0700 | 3 | Date: Mon, 10 Aug 2015 02:38:27 -0700 |
4 | Subject: [PATCH 04/15] wayland-egl: Add bcm_host to dependencies | 4 | Subject: [PATCH 04/16] wayland-egl: Add bcm_host to dependencies |
5 | 5 | ||
6 | It uses headers like vcos_platform_types.h but does not | 6 | It uses headers like vcos_platform_types.h but does not |
7 | depend on module which should add the required include paths | 7 | depend on module which should add the required include paths |
@@ -24,5 +24,5 @@ index 8bafc15..fd259c9 100644 | |||
24 | Libs: -L${libdir} -lwayland-egl | 24 | Libs: -L${libdir} -lwayland-egl |
25 | Cflags: -I${includedir} | 25 | Cflags: -I${includedir} |
26 | -- | 26 | -- |
27 | 2.15.0 | 27 | 2.16.1 |
28 | 28 | ||
diff --git a/recipes-graphics/userland/userland/0005-interface-remove-faulty-assert-to-make-weston-happy-.patch b/recipes-graphics/userland/userland/0005-interface-remove-faulty-assert-to-make-weston-happy-.patch index 676f34c..8d78333 100644 --- a/recipes-graphics/userland/userland/0005-interface-remove-faulty-assert-to-make-weston-happy-.patch +++ b/recipes-graphics/userland/userland/0005-interface-remove-faulty-assert-to-make-weston-happy-.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 8ee4f6eedb81e9bfe0e603a21606c52f9501e609 Mon Sep 17 00:00:00 2001 | 1 | From 0273b7b9d7a27d8fe7d3ad8680b799f997e75dca Mon Sep 17 00:00:00 2001 |
2 | From: "Yann E. MORIN" <yann.morin.1998@free.fr> | 2 | From: "Yann E. MORIN" <yann.morin.1998@free.fr> |
3 | Date: Sat, 24 Jan 2015 22:07:19 +0100 | 3 | Date: Sat, 24 Jan 2015 22:07:19 +0100 |
4 | Subject: [PATCH 05/15] interface: remove faulty assert() to make weston happy | 4 | Subject: [PATCH 05/16] interface: remove faulty assert() to make weston happy |
5 | at runtime | 5 | at runtime |
6 | 6 | ||
7 | This was removed after a discussion on IRC with the weston guys | 7 | This was removed after a discussion on IRC with the weston guys |
@@ -25,5 +25,5 @@ index eab146e..29e0dee 100755 | |||
25 | } | 25 | } |
26 | } else { | 26 | } else { |
27 | -- | 27 | -- |
28 | 2.15.0 | 28 | 2.16.1 |
29 | 29 | ||
diff --git a/recipes-graphics/userland/userland/0006-zero-out-wl-buffers-in-egl_surface_free.patch b/recipes-graphics/userland/userland/0006-zero-out-wl-buffers-in-egl_surface_free.patch index a8f1f24..43eb7f0 100644 --- a/recipes-graphics/userland/userland/0006-zero-out-wl-buffers-in-egl_surface_free.patch +++ b/recipes-graphics/userland/userland/0006-zero-out-wl-buffers-in-egl_surface_free.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 789b0b0c04b741c21dd573b78eded970721d14c2 Mon Sep 17 00:00:00 2001 | 1 | From 0d678cd2042551cc4e26ec42fa3aba7c72d033b4 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 6 Feb 2016 11:10:47 -0800 | 3 | Date: Sat, 6 Feb 2016 11:10:47 -0800 |
4 | Subject: [PATCH 06/15] zero-out wl buffers in egl_surface_free | 4 | Subject: [PATCH 06/16] zero-out wl buffers in egl_surface_free |
5 | 5 | ||
6 | origins from buildroot | 6 | origins from buildroot |
7 | 7 | ||
@@ -29,5 +29,5 @@ index 42350bf..1f923d9 100644 | |||
29 | #endif | 29 | #endif |
30 | } | 30 | } |
31 | -- | 31 | -- |
32 | 2.15.0 | 32 | 2.16.1 |
33 | 33 | ||
diff --git a/recipes-graphics/userland/userland/0007-initialize-front-back-wayland-buffers.patch b/recipes-graphics/userland/userland/0007-initialize-front-back-wayland-buffers.patch index ad2636a..987740b 100644 --- a/recipes-graphics/userland/userland/0007-initialize-front-back-wayland-buffers.patch +++ b/recipes-graphics/userland/userland/0007-initialize-front-back-wayland-buffers.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 762dd3156775f167ff0dfd44322dbb19a85822a7 Mon Sep 17 00:00:00 2001 | 1 | From ec2e00989bf614b259bc9a47b5035f8586e8a214 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 6 Feb 2016 11:11:41 -0800 | 3 | Date: Sat, 6 Feb 2016 11:11:41 -0800 |
4 | Subject: [PATCH 07/15] initialize front back wayland buffers | 4 | Subject: [PATCH 07/16] initialize front back wayland buffers |
5 | 5 | ||
6 | origins from metrological wayland support | 6 | origins from metrological wayland support |
7 | 7 | ||
@@ -30,5 +30,5 @@ index 1f923d9..9a9582c 100644 | |||
30 | } | 30 | } |
31 | #endif | 31 | #endif |
32 | -- | 32 | -- |
33 | 2.15.0 | 33 | 2.16.1 |
34 | 34 | ||
diff --git a/recipes-graphics/userland/userland/0008-Remove-RPC_FLUSH.patch b/recipes-graphics/userland/userland/0008-Remove-RPC_FLUSH.patch index 1e66813..4bf05c1 100644 --- a/recipes-graphics/userland/userland/0008-Remove-RPC_FLUSH.patch +++ b/recipes-graphics/userland/userland/0008-Remove-RPC_FLUSH.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From f8929adbf95ad3d44491cf6fc8a84a686b71193e Mon Sep 17 00:00:00 2001 | 1 | From 59ba66c2ea17f7a57124b9fd6c9bdff4325ff5c9 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 6 Feb 2016 11:09:18 -0800 | 3 | Date: Sat, 6 Feb 2016 11:09:18 -0800 |
4 | Subject: [PATCH 08/15] Remove RPC_FLUSH | 4 | Subject: [PATCH 08/16] Remove RPC_FLUSH |
5 | 5 | ||
6 | Origins from buildroot | 6 | Origins from buildroot |
7 | 7 | ||
@@ -23,5 +23,5 @@ index f9b7287..b04ffef 100644 | |||
23 | } | 23 | } |
24 | #endif | 24 | #endif |
25 | -- | 25 | -- |
26 | 2.15.0 | 26 | 2.16.1 |
27 | 27 | ||
diff --git a/recipes-graphics/userland/userland/0009-fix-cmake-dependency-race.patch b/recipes-graphics/userland/userland/0009-fix-cmake-dependency-race.patch index 214d5e2..a2c1df5 100644 --- a/recipes-graphics/userland/userland/0009-fix-cmake-dependency-race.patch +++ b/recipes-graphics/userland/userland/0009-fix-cmake-dependency-race.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From f53e028f33f261f85883c9168977dd5486e9b47c Mon Sep 17 00:00:00 2001 | 1 | From 264d82387ea1e607b2e5c899ff6bd46807c7b185 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 6 Feb 2016 13:12:47 -0800 | 3 | Date: Sat, 6 Feb 2016 13:12:47 -0800 |
4 | Subject: [PATCH 09/15] fix cmake dependency race | 4 | Subject: [PATCH 09/16] fix cmake dependency race |
5 | 5 | ||
6 | Fixes errors like | 6 | Fixes errors like |
7 | 7 | ||
@@ -74,5 +74,5 @@ index f0bae30..8c44c58 100644 | |||
74 | struct wl_resource *resource; | 74 | struct wl_resource *resource; |
75 | struct wl_dispmanx *dispmanx; | 75 | struct wl_dispmanx *dispmanx; |
76 | -- | 76 | -- |
77 | 2.15.0 | 77 | 2.16.1 |
78 | 78 | ||
diff --git a/recipes-graphics/userland/userland/0010-Fix-for-framerate-with-nested-composition.patch b/recipes-graphics/userland/userland/0010-Fix-for-framerate-with-nested-composition.patch index 9f77920..a6c9a59 100644 --- a/recipes-graphics/userland/userland/0010-Fix-for-framerate-with-nested-composition.patch +++ b/recipes-graphics/userland/userland/0010-Fix-for-framerate-with-nested-composition.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 6559a57c66c5f55571a1aa29cf14d9130a9ef2c9 Mon Sep 17 00:00:00 2001 | 1 | From 7c51c2d37bfadaabbbf205237d932b685b09d34f Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Tue, 29 Mar 2016 20:38:30 -0700 | 3 | Date: Tue, 29 Mar 2016 20:38:30 -0700 |
4 | Subject: [PATCH 10/15] Fix for framerate with nested composition | 4 | Subject: [PATCH 10/16] Fix for framerate with nested composition |
5 | 5 | ||
6 | frame rate appears irregular and lower than expected when using nested composition. | 6 | frame rate appears irregular and lower than expected when using nested composition. |
7 | 7 | ||
@@ -56,5 +56,5 @@ index 03fe67b..13a110c 100644 | |||
56 | #ifdef ANDROID | 56 | #ifdef ANDROID |
57 | CLIENT_UNLOCK(); | 57 | CLIENT_UNLOCK(); |
58 | -- | 58 | -- |
59 | 2.15.0 | 59 | 2.16.1 |
60 | 60 | ||
diff --git a/recipes-graphics/userland/userland/0011-build-shared-library-for-vchostif.patch b/recipes-graphics/userland/userland/0011-build-shared-library-for-vchostif.patch index 5ee5cbd..55a5be8 100644 --- a/recipes-graphics/userland/userland/0011-build-shared-library-for-vchostif.patch +++ b/recipes-graphics/userland/userland/0011-build-shared-library-for-vchostif.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 3e396f0b514f3acf90c02f5d55b3816028367a55 Mon Sep 17 00:00:00 2001 | 1 | From fb3002f77a175633af31019c513754d2ef5f3ac0 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 2 Apr 2016 10:37:24 -0700 | 3 | Date: Sat, 2 Apr 2016 10:37:24 -0700 |
4 | Subject: [PATCH 11/15] build shared library for vchostif | 4 | Subject: [PATCH 11/16] build shared library for vchostif |
5 | 5 | ||
6 | Fixes #149 | 6 | Fixes #149 |
7 | 7 | ||
@@ -24,5 +24,5 @@ index c415176..d0cca1a 100755 | |||
24 | #add_library(bufman vc_vchi_bufman.c ) | 24 | #add_library(bufman vc_vchi_bufman.c ) |
25 | 25 | ||
26 | -- | 26 | -- |
27 | 2.15.0 | 27 | 2.16.1 |
28 | 28 | ||
diff --git a/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch b/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch index 48af588..28a5fc6 100644 --- a/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch +++ b/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From f5b2263c8d65e307cb085414e08118cbbe00a94c Mon Sep 17 00:00:00 2001 | 1 | From df8b9633a45069bdd1bf256d974636ef11aa39cb Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 2 Apr 2016 10:54:59 -0700 | 3 | Date: Sat, 2 Apr 2016 10:54:59 -0700 |
4 | Subject: [PATCH 12/15] implement buffer wrapping interface for dispmanx | 4 | Subject: [PATCH 12/16] implement buffer wrapping interface for dispmanx |
5 | 5 | ||
6 | Courtesy: Zan Dobersek | 6 | Courtesy: Zan Dobersek |
7 | 7 | ||
@@ -88,5 +88,5 @@ index c18626d..11ed1ef 100644 | |||
88 | 88 | ||
89 | </protocol> | 89 | </protocol> |
90 | -- | 90 | -- |
91 | 2.15.0 | 91 | 2.16.1 |
92 | 92 | ||
diff --git a/recipes-graphics/userland/userland/0013-Implement-triple-buffering-for-wayland.patch b/recipes-graphics/userland/userland/0013-Implement-triple-buffering-for-wayland.patch index d3a9840..ebff314 100644 --- a/recipes-graphics/userland/userland/0013-Implement-triple-buffering-for-wayland.patch +++ b/recipes-graphics/userland/userland/0013-Implement-triple-buffering-for-wayland.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 10ba55489002c2ccdf96d221301ec059c4574811 Mon Sep 17 00:00:00 2001 | 1 | From 2e0e331da8556fecd841349cfae294baf0f14485 Mon Sep 17 00:00:00 2001 |
2 | From: Jeff Wannamaker <jeff_wannamaker@cable.comcast.com> | 2 | From: Jeff Wannamaker <jeff_wannamaker@cable.comcast.com> |
3 | Date: Thu, 19 Jan 2017 18:56:07 +0000 | 3 | Date: Thu, 19 Jan 2017 18:56:07 +0000 |
4 | Subject: [PATCH 13/15] Implement triple buffering for wayland | 4 | Subject: [PATCH 13/16] Implement triple buffering for wayland |
5 | 5 | ||
6 | Change from double to triple buffering for wayland. | 6 | Change from double to triple buffering for wayland. |
7 | This enables higher frame rates without tearing artifacts | 7 | This enables higher frame rates without tearing artifacts |
@@ -86,5 +86,5 @@ index e328b77..58a3184 100644 | |||
86 | back_wl_buffer | 86 | back_wl_buffer |
87 | 87 | ||
88 | -- | 88 | -- |
89 | 2.15.0 | 89 | 2.16.1 |
90 | 90 | ||
diff --git a/recipes-graphics/userland/userland/0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch b/recipes-graphics/userland/userland/0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch index b596056..025b6bc 100644 --- a/recipes-graphics/userland/userland/0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch +++ b/recipes-graphics/userland/userland/0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From d750c738b5c23bba24531cb713292e4ab3f2ec56 Mon Sep 17 00:00:00 2001 | 1 | From 8d9299d219a2a4f76f8278973584e1a9f7116c78 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Wed, 10 May 2017 06:39:34 +0000 | 3 | Date: Wed, 10 May 2017 06:39:34 +0000 |
4 | Subject: [PATCH 14/15] GLES2/gl2ext.h: Define GL_R8_EXT and GL_RG8_EXT | 4 | Subject: [PATCH 14/16] GLES2/gl2ext.h: Define GL_R8_EXT and GL_RG8_EXT |
5 | 5 | ||
6 | weston code uses these defines | 6 | weston code uses these defines |
7 | Upstream-Status: Pending | 7 | Upstream-Status: Pending |
@@ -26,5 +26,5 @@ index 4eacf7f..283e3e1 100644 | |||
26 | #ifndef GL_EXT_texture_type_2_10_10_10_REV | 26 | #ifndef GL_EXT_texture_type_2_10_10_10_REV |
27 | #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368 | 27 | #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368 |
28 | -- | 28 | -- |
29 | 2.15.0 | 29 | 2.16.1 |
30 | 30 | ||
diff --git a/recipes-graphics/userland/userland/0015-EGL-glplatform.h-define-EGL_CAST.patch b/recipes-graphics/userland/userland/0015-EGL-glplatform.h-define-EGL_CAST.patch index f10740b..605d0c0 100644 --- a/recipes-graphics/userland/userland/0015-EGL-glplatform.h-define-EGL_CAST.patch +++ b/recipes-graphics/userland/userland/0015-EGL-glplatform.h-define-EGL_CAST.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 827907f2223df93918e680101a1ac6228ba0f07e Mon Sep 17 00:00:00 2001 | 1 | From a2182e5437a6664cdb0f3330f6cbee873b6f975a Mon Sep 17 00:00:00 2001 |
2 | From: Andrea Galbusera <gizero@gmail.com> | 2 | From: Andrea Galbusera <gizero@gmail.com> |
3 | Date: Fri, 14 Jul 2017 09:52:54 +0200 | 3 | Date: Fri, 14 Jul 2017 09:52:54 +0200 |
4 | Subject: [PATCH 15/15] EGL/glplatform.h: define EGL_CAST | 4 | Subject: [PATCH 15/16] EGL/glplatform.h: define EGL_CAST |
5 | 5 | ||
6 | C++ / C typecast macros for special EGL handle values: used by libepoxy code | 6 | C++ / C typecast macros for special EGL handle values: used by libepoxy code |
7 | The definition comes from the updated version of this header in mesa. | 7 | The definition comes from the updated version of this header in mesa. |
@@ -28,5 +28,5 @@ index 1f7c930..c39d425 100644 | |||
28 | + | 28 | + |
29 | #endif /* __eglplatform_h */ | 29 | #endif /* __eglplatform_h */ |
30 | -- | 30 | -- |
31 | 2.15.0 | 31 | 2.16.1 |
32 | 32 | ||
diff --git a/recipes-graphics/userland/userland/0016-Allow-multiple-wayland-compositor-state-data-per-pro.patch b/recipes-graphics/userland/userland/0016-Allow-multiple-wayland-compositor-state-data-per-pro.patch new file mode 100644 index 0000000..d20ec82 --- /dev/null +++ b/recipes-graphics/userland/userland/0016-Allow-multiple-wayland-compositor-state-data-per-pro.patch | |||
@@ -0,0 +1,145 @@ | |||
1 | From 6b4c4d469d435bfcfb464356b6ccc9421c6b8fd5 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jeff Wannamaker <jeff_wannamaker@cable.comcast.com> | ||
3 | Date: Sat, 27 Jan 2018 12:28:31 -0500 | ||
4 | Subject: [PATCH 16/16] Allow multiple wayland compositor state data per | ||
5 | process | ||
6 | |||
7 | When eglBindWaylandDisplayWL is called store the wl_global | ||
8 | created in a list associated with the wayland display. | ||
9 | This allows multiple wayland compositor instances to be | ||
10 | created and used per process. This scenario is common for | ||
11 | applications integrating externl process UI elements | ||
12 | via embedded composition e.g. westeros | ||
13 | |||
14 | Signed-off-by: Jeff Wannamaker <jeff_wannamaker@cable.comcast.com> | ||
15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
16 | --- | ||
17 | interface/khronos/common/khrn_client.c | 2 +- | ||
18 | interface/khronos/common/khrn_client.h | 11 +++++++- | ||
19 | interface/khronos/ext/egl_wayland.c | 50 ++++++++++++++++++++++++++++++---- | ||
20 | 3 files changed, 55 insertions(+), 8 deletions(-) | ||
21 | |||
22 | diff --git a/interface/khronos/common/khrn_client.c b/interface/khronos/common/khrn_client.c | ||
23 | index d7e798e..60bdb63 100644 | ||
24 | --- a/interface/khronos/common/khrn_client.c | ||
25 | +++ b/interface/khronos/common/khrn_client.c | ||
26 | @@ -147,7 +147,7 @@ bool client_process_state_init(CLIENT_PROCESS_STATE_T *process) | ||
27 | { | ||
28 | if (!process->inited) { | ||
29 | #ifdef BUILD_WAYLAND | ||
30 | - process->wl_global = NULL; | ||
31 | + process->wlStateMap = NULL; | ||
32 | #endif | ||
33 | |||
34 | if (!khrn_pointer_map_init(&process->contexts, 64)) | ||
35 | diff --git a/interface/khronos/common/khrn_client.h b/interface/khronos/common/khrn_client.h | ||
36 | index 615f7b4..4fa86f7 100644 | ||
37 | --- a/interface/khronos/common/khrn_client.h | ||
38 | +++ b/interface/khronos/common/khrn_client.h | ||
39 | @@ -170,6 +170,15 @@ static INLINE CLIENT_THREAD_STATE_T *CLIENT_GET_CHECK_THREAD_STATE(void) | ||
40 | return (CLIENT_THREAD_STATE_T *)platform_tls_get_check(client_tls); | ||
41 | } | ||
42 | |||
43 | +#ifdef BUILD_WAYLAND | ||
44 | +typedef struct WAYLAND_STATE | ||
45 | +{ | ||
46 | + struct WAYLAND_STATE *next; | ||
47 | + struct wl_display *display; | ||
48 | + struct wl_global *wl_global; | ||
49 | +} WAYLAND_STATE_T; | ||
50 | +#endif | ||
51 | + | ||
52 | /* | ||
53 | per-process state | ||
54 | |||
55 | @@ -318,7 +327,7 @@ struct CLIENT_PROCESS_STATE { | ||
56 | struct wl_event_queue *wl_queue; | ||
57 | |||
58 | /* Compositor-side Wayland state */ | ||
59 | - struct wl_global *wl_global; | ||
60 | + WAYLAND_STATE_T *wlStateMap; | ||
61 | #endif | ||
62 | }; | ||
63 | |||
64 | diff --git a/interface/khronos/ext/egl_wayland.c b/interface/khronos/ext/egl_wayland.c | ||
65 | index 9ef89cd..abd5ab3 100644 | ||
66 | --- a/interface/khronos/ext/egl_wayland.c | ||
67 | +++ b/interface/khronos/ext/egl_wayland.c | ||
68 | @@ -208,17 +208,38 @@ eglBindWaylandDisplayWL(EGLDisplay dpy, struct wl_display *display) | ||
69 | { | ||
70 | CLIENT_THREAD_STATE_T *thread; | ||
71 | CLIENT_PROCESS_STATE_T *process; | ||
72 | + WAYLAND_STATE_T *stateIter; | ||
73 | + WAYLAND_STATE_T *stateNew; | ||
74 | + struct wl_global *wl_global; | ||
75 | |||
76 | if (!CLIENT_LOCK_AND_GET_STATES(dpy, &thread, &process)) | ||
77 | return EGL_FALSE; | ||
78 | |||
79 | - if (process->wl_global != NULL) | ||
80 | + stateIter= process->wlStateMap; | ||
81 | + while( stateIter ) | ||
82 | + { | ||
83 | + if ( stateIter->display == display ) | ||
84 | + goto error; | ||
85 | + stateIter= stateIter->next; | ||
86 | + } | ||
87 | + | ||
88 | + wl_global = wl_global_create(display, &wl_dispmanx_interface, 1, | ||
89 | + NULL, bind_dispmanx); | ||
90 | + if (wl_global == NULL) | ||
91 | goto error; | ||
92 | |||
93 | - process->wl_global = wl_global_create(display, &wl_dispmanx_interface, 1, | ||
94 | - NULL, bind_dispmanx); | ||
95 | - if (process->wl_global == NULL) | ||
96 | + stateNew= (WAYLAND_STATE_T*)calloc( 1, sizeof(WAYLAND_STATE_T)); | ||
97 | + if (stateNew == NULL ) | ||
98 | + { | ||
99 | + wl_global_destroy(wl_global); | ||
100 | goto error; | ||
101 | + } | ||
102 | + | ||
103 | + stateNew->next= process->wlStateMap; | ||
104 | + stateNew->display= display; | ||
105 | + stateNew->wl_global= wl_global; | ||
106 | + process->wlStateMap= stateNew; | ||
107 | + CLIENT_UNLOCK(); | ||
108 | |||
109 | return EGL_TRUE; | ||
110 | |||
111 | @@ -232,12 +253,29 @@ eglUnbindWaylandDisplayWL(EGLDisplay dpy, struct wl_display *display) | ||
112 | { | ||
113 | CLIENT_THREAD_STATE_T *thread; | ||
114 | CLIENT_PROCESS_STATE_T *process; | ||
115 | + WAYLAND_STATE_T *stateIter; | ||
116 | + WAYLAND_STATE_T *statePrev; | ||
117 | |||
118 | if (!CLIENT_LOCK_AND_GET_STATES(dpy, &thread, &process)) | ||
119 | return EGL_FALSE; | ||
120 | |||
121 | - wl_global_destroy(process->wl_global); | ||
122 | - process->wl_global = NULL; | ||
123 | + statePrev= NULL; | ||
124 | + stateIter= process->wlStateMap; | ||
125 | + while( stateIter ) | ||
126 | + { | ||
127 | + if ( stateIter->display == display ) | ||
128 | + { | ||
129 | + wl_global_destroy(stateIter->wl_global); | ||
130 | + if ( statePrev ) | ||
131 | + statePrev->next= stateIter->next; | ||
132 | + else | ||
133 | + process->wlStateMap= stateIter->next; | ||
134 | + free( stateIter ); | ||
135 | + break; | ||
136 | + } | ||
137 | + statePrev= stateIter; | ||
138 | + stateIter= stateIter->next; | ||
139 | + } | ||
140 | |||
141 | CLIENT_UNLOCK(); | ||
142 | |||
143 | -- | ||
144 | 2.16.1 | ||
145 | |||
diff --git a/recipes-graphics/userland/userland_git.bb b/recipes-graphics/userland/userland_git.bb index bf0e672..de0b3c7 100644 --- a/recipes-graphics/userland/userland_git.bb +++ b/recipes-graphics/userland/userland_git.bb | |||
@@ -14,11 +14,11 @@ COMPATIBLE_MACHINE = "^rpi$" | |||
14 | 14 | ||
15 | SRCBRANCH = "master" | 15 | SRCBRANCH = "master" |
16 | SRCFORK = "raspberrypi" | 16 | SRCFORK = "raspberrypi" |
17 | SRCREV = "bc3c52a51315399a9f31ed24049eb4bc81fd1c60" | 17 | SRCREV = "1c3a9eb76da9d6107cadd360301cf20004496b04" |
18 | 18 | ||
19 | # Use the date of the above commit as the package version. Update this when | 19 | # Use the date of the above commit as the package version. Update this when |
20 | # SRCREV is changed. | 20 | # SRCREV is changed. |
21 | PV = "20171114" | 21 | PV = "20180130" |
22 | 22 | ||
23 | SRC_URI = "\ | 23 | SRC_URI = "\ |
24 | git://github.com/${SRCFORK}/userland.git;protocol=git;branch=${SRCBRANCH} \ | 24 | git://github.com/${SRCFORK}/userland.git;protocol=git;branch=${SRCBRANCH} \ |
@@ -37,6 +37,7 @@ SRC_URI = "\ | |||
37 | file://0013-Implement-triple-buffering-for-wayland.patch \ | 37 | file://0013-Implement-triple-buffering-for-wayland.patch \ |
38 | file://0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch \ | 38 | file://0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch \ |
39 | file://0015-EGL-glplatform.h-define-EGL_CAST.patch \ | 39 | file://0015-EGL-glplatform.h-define-EGL_CAST.patch \ |
40 | file://0016-Allow-multiple-wayland-compositor-state-data-per-pro.patch \ | ||
40 | " | 41 | " |
41 | S = "${WORKDIR}/git" | 42 | S = "${WORKDIR}/git" |
42 | 43 | ||