joonbum.ko [Wed, 31 Jan 2018 04:36:28 +0000 (13:36 +0900)]
tpl_wayland_egl: Added tdm_mutex to wayland_egl_display to guarantee thread safety.
- RELATED COMMIT: Guaranteed thread safety for wl_event processing.
-
750b2fe32de4438d3eb8e2ce1ee9a968a511c4f7
- Above commit can cover the wl_event processing only.
- And in multi-surfaces or multi-threads situation,
wayland_egl_display can be accessed at the same time
in the processing of different surfaces.
- The tdm_client in wayland_egl_display also dispatches wl_display internally,
so thread_safety for tdm_client should be guaranteed.
Change-Id: I30dbac42f90a003070c27a750d3a34354c4719ed
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 24 Jan 2018 06:11:56 +0000 (15:11 +0900)]
Package version up to 1.5.3
Change-Id: Ie298e8f70a242eec37e645213bfa4e0a01d95b09
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
JunSeok, Kim [Thu, 11 Jan 2018 10:39:50 +0000 (19:39 +0900)]
tizen-surface: renew tizen-surface protocol path
Change-Id: I1453b28a64cbc5942c56acf381faf0be05d48e97
joonbum.ko [Mon, 22 Jan 2018 10:34:23 +0000 (19:34 +0900)]
tpl_wayland_egl_thread: Modified wrong return type.
Change-Id: Icda1450b993785e41bba9b88305bc7770132be28
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Mon, 22 Jan 2018 08:47:02 +0000 (17:47 +0900)]
tpl_wayland_egl_thread: Modified to create timeline fd only for vulkan dpy.
Change-Id: I40f7f28ce0663d04e93afa97fc3eaf5fd2448ad7
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 19 Jan 2018 04:13:36 +0000 (13:13 +0900)]
tpl_wayland_egl_thread: Changed to use wl_tbm event queue to use flusher in thread.
Change-Id: I2e15a77caa1356b51532a66b9f75d6df44ddb2e8
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 18 Jan 2018 06:26:43 +0000 (15:26 +0900)]
tpl_wayland_egl: Guaranteed thread safety for wl_event processing.
Change-Id: I519c78d1f19303c8d99b1d72cbcb1522d4861f71
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
Hoyub Lee [Wed, 3 Jan 2018 13:39:41 +0000 (22:39 +0900)]
tc: Add test cases for tpl_surface
Add below tests for tpl_surface.
TEST CASE | TEST
------------------------------------------------------------------
DEFAULT_tpl_surface_get_rotation | success_1
DEFAULT_tpl_surface_get_rotation | success_2
DEFAULT_tpl_surface_get_rotation | failure
DEFAULT_tpl_surface_dequeue_enqueue | deq_enq_dmg_1
DEFAULT_tpl_surface_dequeue_enqueue | deq_enq_dmg_2
DEFAULT_tpl_surface_cancel_dequeued_buff | success
DEFAULT_tpl_surface_cancel_dequeued_buff | failure_null_surface
DEFAULT_tpl_surface_cancel_dequeued_buff | failure_null_tbm_surf
EXTRA_tpl_surface_get_swapchain_buffers | failure_invalid_surface
EXTRA_tpl_surface_get_swapchain_buffers | failure_invalid_buffer_count
EXTRA_tpl_surface_destroy_swapchain | failure_invalid_surface
DEFAULT_tpl_surface_set_frontbuffer_mode | success_activate
DEFAULT_tpl_surface_set_frontbuffer_mode | success_deactivate
DEFAULT_tpl_surface_set_frontbuffer_mode | failure_null_surface
DEFAULT_tpl_surface_set_reset_cb | success
DEFAULT_tpl_surface_set_reset_cb | failure
DEFAULT_tpl_surface_set_rotation_capabil | success
DEFAULT_tpl_surface_set_rotation_capabil | failure
Change-Id: I324a2d02aa823712c64c5643d7cb77dd3c17bc0f
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Wed, 3 Jan 2018 13:31:55 +0000 (22:31 +0900)]
tc: Add test cases for tpl_display
Add below tests for tpl_display.
TEST CASE | TEST
------------------------------------------------------------------
DEFAULT_tpl_display_get_backend_type | success
DEFAULT_tpl_display_get_backend_type | failure
DEFAULT_tpl_display_get_native_window_info | success_2
DEFAULT_tpl_display_get_native_pixmap_info | failure
DEFAULT_tpl_display_get_buffer_from_native_pixmap | success
DEFAULT_tpl_display_get_buffer_from_native_pixmap | failure
DEFAULT_tpl_display_query_supported_present_modes | success
_from_native_window
Change-Id: I2dd81ea35e820441a26df50fee008d55c7ab2943
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
joonbum.ko [Fri, 5 Jan 2018 02:12:19 +0000 (11:12 +0900)]
Package version up to 1.5.2
Change-Id: Iba46f3a524cd98d95e8a638faad90e30605f5d9d
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 4 Jan 2018 11:42:29 +0000 (20:42 +0900)]
tpl_wayland_egl_thread: Fixed bugs about locking mechanism
Change-Id: I4e836a24d7e73fa5f8e039beaac67487273a3b0b
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 4 Jan 2018 10:08:23 +0000 (19:08 +0900)]
tpl_wayland_egl_thread: Fixed wrong codes about acquire_and_commit.
Change-Id: Ie655e1d79bd424477e20e19b8817a3a263076291
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 4 Jan 2018 04:23:36 +0000 (13:23 +0900)]
Package version up to 1.5.1
Change-Id: Icaa51d682e9ae184efccef5452567006e7d02861
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 3 Jan 2018 08:22:45 +0000 (17:22 +0900)]
tpl_wayland_egl_thread: Modified wrong log message.
Change-Id: Ia7570862a09fd78c109d42da5176c1e855497600
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 2 Jan 2018 10:34:45 +0000 (19:34 +0900)]
tpl_wayland_egl_thread: Partially modified event_fd processing method.
- Partially modified the way event_fd is handled between vk_sub_thread and twe_thread.
- Twe buffers are in draw_done state and write twice to event_fd to send event,
but in twe_thread, event_fd may be read only once, and only one buffer may be acquired.
- Supplemented it by adding draw_done_count to surf_source.
- It is a valid patch only while using vk_sub_thread.
Change-Id: I341907ca1cc6466af4d5e2f6bb5173e9382d925f
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 2 Jan 2018 07:32:34 +0000 (16:32 +0900)]
tpl_wayland_egl_thread: Fixed potential bugs related with the swapchain.
- vk_sub_thread must be equal to swapchain's lifetime.
Change-Id: I85c84feea5d21e2b64ceda2625af0158483406cd
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 2 Jan 2018 06:10:38 +0000 (15:10 +0900)]
tpl_wayland_egl_thread: Fixed wrong codes in committed_buffers list.
Change-Id: Ice96bd544bb38800a6678c1c44bf79875fb26c5d
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 2 Jan 2018 05:50:50 +0000 (14:50 +0900)]
tpl_wayland_egl_thread: Set to GUARANTEE_CYCLE mode to swapchain tbm_queue.
Change-Id: Ie9435f58924932314bbe7a37b71a88cd6937f077
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 2 Jan 2018 04:25:03 +0000 (13:25 +0900)]
tpl: Added a new API tpl_surface_get()
- tpl_surface_t *tpl_surface_get(tpl_display_t *display, tpl_handle_t handle)
- Like tpl_display_get(), it will find and return if there is a tpl_surface that was
created in the given native handle at runtime.
- Avoid creating multiple tpl_surfaces with the same native handle.
Change-Id: Ia2b7a7ddef32153c47ba11dea4e08130fd36cb56
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 29 Dec 2017 07:24:20 +0000 (16:24 +0900)]
tpl_wl_vk_thread: Supported to resize swapchain.
Change-Id: Ibc427cbcdf95a9920b139104ce4ed4922d072e82
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 28 Dec 2017 08:07:16 +0000 (17:07 +0900)]
tpl_wayland_egl_thread: Synchronized creation and deletion of vk_sub_thread.
Change-Id: I39a169d783d27f9a4b2f2e2b2747d809752acbd7
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 27 Dec 2017 01:58:08 +0000 (10:58 +0900)]
tpl_wayland_egl_thread: Modified the management of committed buffer to use sync timeline.
- If tdm_fd is created for a dequeued buffer,
it must be dependent on the sync timeline, not the release event.
Change-Id: I66b181b1ce3b12fd7a9a076359c545a19096558b
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 27 Dec 2017 05:30:45 +0000 (14:30 +0900)]
tpl_wayland_egl_thread: Deleted unnecessary codes.
- It should be deleted because it can cause blocking in vkWaitForFences().
Change-Id: Ia945ca3f05c613e7ae50efb9f80d92a5663921ed
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 27 Dec 2017 01:46:04 +0000 (10:46 +0900)]
tpl_wl_vk_thread: Enqueue tbm_surface before set sync_fd.
Change-Id: I6e1d29275448aa43bc1232545510553c1ae2cd4a
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Mon, 18 Dec 2017 06:45:05 +0000 (15:45 +0900)]
tpl_wayland_egl_thread: Fixed vblank operation in FIFO mode.
- Do not add a vblank_wait when there is already a buffer waiting for vblank.
Change-Id: If15cdf031de5214280285543f32673f73ef92b58
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 15 Dec 2017 08:36:06 +0000 (17:36 +0900)]
tpl_wayland_egl_thread: Implemented sync_draw_source.
- One sync_draw_source is created for each buffer which is enqueued to tbm_queue.
- sync_draw_source will be attached to vk_sub_thread.
- It is created when set sync_fence_fd and blocking waits in vk_sub_thread until fence is released.
Change-Id: I1aba360f52a2c6d245bb52c34c42a465dacc5215
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 3 Jan 2018 09:06:17 +0000 (18:06 +0900)]
tpl_wayland_egl_thread: Added an exception checking.
Change-Id: Id3562d0832f7ab5d911dd83d9b7571e349a62751
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 15 Dec 2017 02:48:31 +0000 (11:48 +0900)]
tpl_wayland_egl_thread: Added parameter twe_surface_h to twe_surface_set_sync_fd.
Change-Id: Ib448d8acf4fe218a208506bba90003f9466d1273
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 14 Dec 2017 07:19:39 +0000 (16:19 +0900)]
tpl_wayland_egl_thread: Implemented sub_thread for sync drawing.
- This sub_thread for vulkan swapchain is temporary feature.
- It will be destoryed when kernel can supports polling sync_fd.
- tbm_sync_fence_wait() is blocking call and it will be called in this
vk_sub_thread.
Change-Id: I73cfd513cd4540266fdc728f3b7b66a4905c5fdf
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
Hoyub Lee [Wed, 3 Jan 2018 06:16:05 +0000 (15:16 +0900)]
tpl_wayland_egl: Add necessity check for buffer release
On buffer release cb, there was no checking mechanism to check if this
buffer needs to be released or not.
This patch will add checking if this buffer has to be released or not.
Therefore, unnecessary buffer release cb will be detected and handled
correctly.
Change-Id: I08224b2eeca1cc97b685c95ce5fb06981f37909c
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Fri, 15 Dec 2017 10:09:32 +0000 (19:09 +0900)]
tc: Apply gcov on tpl-test
Change-Id: Ia4d65ce73d4d34393203a9883f6f55bf4a71afc7
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Fri, 15 Dec 2017 10:04:12 +0000 (19:04 +0900)]
build: Add ENABLE_TPL_TEST_GCOV option on spec
Change-Id: I984348d96269bb8230cd41141d556bd76b2447be
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Fri, 15 Dec 2017 10:03:11 +0000 (19:03 +0900)]
build: Add support for gcov
Change-Id: I4a70f6180469514dd68e7ed545fdff4d3e2dd312
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Fri, 15 Dec 2017 07:20:11 +0000 (16:20 +0900)]
build: Add output variable for configuring build setting of wayland-egl
Change-Id: I28ca6958910ae9de0c49854b950b972dfb01a084
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Wed, 13 Dec 2017 12:28:16 +0000 (21:28 +0900)]
tc: Make tpl-test backend choosable
Change-Id: I2bac7c16fa4087edf1930e1cde14971af9fe149f
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Wed, 13 Dec 2017 12:27:16 +0000 (21:27 +0900)]
tc: Apply config.backend on TPLWayland
Change-Id: I40a1f898d76b1fac772ce42a29b1ee71deae38b7
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Wed, 13 Dec 2017 12:20:50 +0000 (21:20 +0900)]
tc: Add parsing backend functionality on Config parsing function
Change-Id: Ibbabb404114ebad01fb695ba8aeeb5ded5182d20
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Wed, 13 Dec 2017 12:10:08 +0000 (21:10 +0900)]
tc: Add member variable for choosing backend on Config
Change-Id: Ifd04a8f8c5840248d234b1b2fdb82d28b598f4ee
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Wed, 13 Dec 2017 13:10:48 +0000 (22:10 +0900)]
tpl_wayland_egl_thread: Replace unnecessary internal header with public one
Change-Id: I1307adf16f3a3373de8d5da746d8756823083481
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Wed, 13 Dec 2017 03:08:51 +0000 (12:08 +0900)]
tpl_wayland_egl_thread: Add necessity check for buffer release
On buffer release cb, there was no checking mechanism to check if this
buffer needs to be released or not.
This patch will add checking if this buffer has to be released or not.
Therefore, unnecessary buffer release cb will be detected and handled
correctly.
Change-Id: I51b9d614da44fac4919539749612ca024b56aa9a
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
joonbum.ko [Tue, 5 Dec 2017 08:04:17 +0000 (17:04 +0900)]
Package version up tp 1.5.0
- minor version up to 5 from 4. (4 -> 5)
- minor version is separated from tizen_4.0
Change-Id: I5f5b7eff3a60e32fc1437f1f91a7d0393330e857
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 30 Nov 2017 11:20:55 +0000 (20:20 +0900)]
tpl_wayland_egl_thread: Add tbm_surface_queue_release on buffer flush cb
This patch fixes the case that unnecessary buffer release cb is called
after buffer flush.
Change-Id: Iaa2023ecb6d990815e89b63a48f6709e694bbaeb
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 30 Nov 2017 11:06:50 +0000 (20:06 +0900)]
tpl_wl_vk_thread: Added TRACE point to debug.
Change-Id: Ia622b63760e5ec3f955eb3322a2d708e50ee0af1
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 30 Nov 2017 05:34:26 +0000 (14:34 +0900)]
tpl_wayland_egl_thread: Fixed to work with IMMEDIATE in case vblank creation failed.
Change-Id: I3c5a8addf4a3b2ab4cf25c8bccfc66bcddfebb02
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 29 Nov 2017 03:00:29 +0000 (12:00 +0900)]
tpl_wayland_egl_thread: Added the missing code to allocate list.
- vblank_waiting_buffers list is needed to support FIFO & FIFO_RELAXED modes.
Change-Id: I93a90ad4711bcb8f13640cc0942dc4175cdff8cc
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 28 Nov 2017 10:14:03 +0000 (19:14 +0900)]
tpl_wayland_egl_thread: Modified backend name for printing debug logs.
- It will be optimized.
Change-Id: Iae60aa3a4e7d7f0b55c332b69a92d9e26c8ce69b
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 14 Nov 2017 02:48:51 +0000 (11:48 +0900)]
tpl_wl_vk_thread: Added handling for reset of tbm_surface_queue.
- This modification is for HWC conversion in reserved memory situations.
Change-Id: I024111e6963fc91b29a888f3d7434e21509c71f8
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Mon, 13 Nov 2017 06:24:51 +0000 (15:24 +0900)]
tpl: Added internal functions to manage tpl_surface in runtime.
Change-Id: Id9499bc999f7f147687838bbaf2b3191afcacb2a
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Mon, 13 Nov 2017 05:03:32 +0000 (14:03 +0900)]
tpl_wl_vk_thread: Added reset callback to tbm_queue for HWC.
- Modified the tbm_queue to create from wayland_tbm_client to enable HWC.
- Added reset callback and flag so that the client knows the reset via the tpl_surface_validate() function.
Change-Id: I03dca08bb0c8618ec658dc4ebc226465167361ec
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 8 Nov 2017 09:59:27 +0000 (18:59 +0900)]
tpl_wayland_egl_thread: Modified the buffer_info to wait for draw done without using sub-thread.
- twe_thread can not process any events while it is waiting for buffer draw done.
- This is a temporary structure for guaranteeing buffer sync,
and is not the best solution, so there are many parts to be improved.
Change-Id: I2c81f171799312761fabce24ec72f947f6108012
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 20 Oct 2017 06:04:25 +0000 (15:04 +0900)]
tpl_wl_vk_thread: Integrated wl_vk_thread backend.
Change-Id: Ie4491b28750f5639da02f474a3e5fdb742c6f07b
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 20 Oct 2017 06:51:24 +0000 (15:51 +0900)]
tpl_wayland_egl_thread: Added an internal API to create sync_fd.
Change-Id: I96cdca8101a578b001e1bb5e85448091e6d39060
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 19 Oct 2017 08:08:47 +0000 (17:08 +0900)]
tpl_wayland_egl_thread: Implemented the management of the committed_buffers list in vulkan_wsi backend.
Change-Id: Ic59e7c5b820f3d017da020644766e0c187cdd110
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 19 Oct 2017 07:51:31 +0000 (16:51 +0900)]
tpl_wayland_egl_thread: Added free function to unref tbm_surface in the buffer list.
- The data, tbm_surface, will be freed with function below.
void * __cb_buffer_remove_from_list(void *data)
Change-Id: If70b0a9fc10545a41fdfff9dd8f07954ba62ee14
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 19 Oct 2017 06:54:45 +0000 (15:54 +0900)]
tpl_wayland_egl_thread: Added an internal function to wait dequeueable until given timeout.
- Added TPL_ERROR_TIMED_OUT to tpl_result_t.
- Added free_queue_mutex and free_queue_cond to surf_source.
Change-Id: I8205d888570c58a22987b2d8ab9a36c1fdd10c6b
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 13 Oct 2017 08:45:06 +0000 (17:45 +0900)]
tpl_wayland_egl_thread: Implemented present modes to support vulkan wsi.
- Added _twe_surface_wait_vblank internal function to be called properly according to present mode.
- Added _twe_thread_wl_vk_surface_commit internal function for wl_surface of vulkan.
- Added a list of vblank_waiting_buffers to support FIFO and FIFO_RELAXED modes.
Change-Id: I9198b5ed3e2e9723b5e2ef61aa9be7498763d727
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 11 Oct 2017 08:53:58 +0000 (17:53 +0900)]
tpl_wayland_egl_thread: Added an internal API to set sync fence fd to buffer.
- The newly created sub-thread waits for draw_done via sync fence fd
and sends the acquirable event to eventfd of surf_source
when the drawing is completed.
- The newly created sub-thread will be destroyed after sending the acquirable event.
Change-Id: I9740b46ab8cdfab3e3ed289c6c073de836eeb5d6
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 11 Oct 2017 07:33:03 +0000 (16:33 +0900)]
tpl_wayland_egl_thread: Implemented the content related to wayland vk buffer.
Change-Id: I530e02d978dd703fef700274ca6290d15ed50151
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 29 Sep 2017 04:31:17 +0000 (13:31 +0900)]
tpl_wayland_egl_thread: Added new internal APIs related with swapchain for vulkan.
Change-Id: Ieceb7c1d6f08a684ba30de204818764e0c621754
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 28 Sep 2017 03:13:01 +0000 (12:13 +0900)]
tpl_wayland_egl_thread: Changed twe_surface_add() to give tpl_handle_t instead of wl_egl_window.
- If twe_display is a vulkan display, the twe_surface creation process is modified to be different.
- In case of vulkan, tbm_surface_queue should be created at swapchain create and be passed to twe_surface.
Change-Id: I0b40d74c54da0c3faed54700f68fdbbd2046b665
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 26 Sep 2017 09:53:23 +0000 (18:53 +0900)]
tpl_wayland_egl_thread: Added internal APIs to get surface capabilities.
Change-Id: Ibefc57b2cffe0be2de82d88ba9bce0a42ae1b9bb
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 26 Sep 2017 08:19:06 +0000 (17:19 +0900)]
tpl_wayland_egl_thread: Implemented a vulkan-related initialization in twe_display_add().
- twe_wl_disp_source distinguishes vulkan from backend_type passed by twe_display_add().
- In the case of vulkan backend, shm flusher is not used.
- This structure can be changed.
Change-Id: Ibff0fe03a14832079ddd60b24b0df8b9c32ecbe5
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 26 Sep 2017 07:00:31 +0000 (16:00 +0900)]
tpl_wayland_egl_thread: Added surface capabilities to twe_display for vk backend.
Change-Id: I68cc93c4c0c473d091b8d9f4023d7edfcd2b312f
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Tue, 26 Sep 2017 06:46:55 +0000 (15:46 +0900)]
tpl_wayland_egl_thread: Added backend type parameter of twe_display_add().
- To distinguish the backend of the display.
Change-Id: I4a281d1e39b764918406a85bfff6cf976e60588c
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Mon, 27 Nov 2017 02:09:56 +0000 (11:09 +0900)]
Package version up to 1.4.12
Change-Id: I304c5bfb27bb3797ff6e25c1a2ffbe6294af0019
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
Hoyub Lee [Tue, 21 Nov 2017 11:24:14 +0000 (20:24 +0900)]
tpl_wayland_egl_thread: Modify creating event queue for multi-threaded usage
In multi-threaded wayland, below is guided on creating own event queue:
Create wl_interface object with a specified event queue, instead of
creating an object and then changing it’s queue.
This patch applies this guideline on where creating own event queue.
Change-Id: I7c08ad93f1f0719ad9093ab252659efe1bd87f07
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 21 Nov 2017 11:00:12 +0000 (20:00 +0900)]
tpl_wayland_egl: Modify creating event queue for multi-threaded usage
In multi-threaded wayland, below is guided on creating own event queue:
Create a wl_interface object with a specified event queue, instead of
creating an object and then changing it’s queue.
This patch applies this guideline on where creating own event queue.
Change-Id: Ieee31c9544af12c1c31aa807423b9a3eb972f5bf
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 31 Oct 2017 05:03:00 +0000 (14:03 +0900)]
Remove BSD-3-Clause license of gtest
Change-Id: I9f11c87258be4750c827fb5ee5450a2540c1fca4
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 31 Oct 2017 04:57:52 +0000 (13:57 +0900)]
tc: Remove local gtest library as it is not used anymore
As gtest is now provided from tizen repository, local gtest is
not used. Therefore, remove local gtest library.
Change-Id: Ice326b0db5cc89c194663aa16e9374178b95d0ed
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Fri, 27 Oct 2017 07:33:32 +0000 (16:33 +0900)]
build: Remove dependency of version environment variables on 'make'
Remove dependency of environment variable to provide same configuration
even on rebuild case.
Change-Id: I5b786b567632bc15a7fcbe26a21adfce8d4b1c05
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
joonbum.ko [Fri, 13 Oct 2017 08:47:49 +0000 (17:47 +0900)]
Package version up to 1.4.11
Change-Id: I0d15a282eb91b1f29d1e7b831e071b69d9c33443
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
Hoyub Lee [Tue, 10 Oct 2017 02:44:04 +0000 (11:44 +0900)]
tpl_tbm: Add missing break in switch
Change-Id: I3e76e96634cc7f3e9d4ed3973d945f8d08e84358
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 10 Oct 2017 02:50:42 +0000 (11:50 +0900)]
tpl_wayland_vk_wsi: Add missing break in switch
Change-Id: I0aece437c5df9ff81aa68a7e17ff8f1f3f328b9f
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 10 Oct 2017 07:15:11 +0000 (16:15 +0900)]
tpl_wayland_vk_wsi: Fix tizen coding rule violations
Change-Id: I01c30ebc4b9cd11a4fcbaac737e74b6880d76942
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
joonbum.ko [Wed, 27 Sep 2017 03:55:08 +0000 (12:55 +0900)]
Package version up to 1.4.10
Change-Id: Ief444ca8917dda880460cae7914789f5b52bd118
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 27 Sep 2017 06:08:40 +0000 (15:08 +0900)]
tpl_wayland_egl_thread: Initialized the variables of wl_egl_window that will not be used.
Change-Id: Ic8f5286b1881de7c7653de716889923c9d801e8c
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 27 Sep 2017 06:06:32 +0000 (15:06 +0900)]
wayland-egl: Initialized an uninitialized function pointer.
Change-Id: Id1fd615b36a3f14eade1867c3ba4601ef67d73c5
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
Hoyub Lee [Mon, 25 Sep 2017 08:26:39 +0000 (17:26 +0900)]
tc: Add tpl-test build option on spec file
tpl-test can be built with either ways:
- Build with [--with-utest=yes]
- Change the value of 'ENABLE_TPL_TEST' to '1' of spec file
Change-Id: I8b2a3e14ef25bbf21697a3c8da5cfd50eb9c175b
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Mon, 25 Sep 2017 08:25:00 +0000 (17:25 +0900)]
tc: Apply autotools on tpl-test build system
This patch replace manually written Makefile to autotools on tpl-test.
Change-Id: I0a4040c3e5d259fe530c6b688de66283df93faa6
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 26 Sep 2017 10:02:07 +0000 (19:02 +0900)]
wayland-egl: Initialize uninitialized variable in wl_egl_window_create
Change-Id: I5e123fd8f0b9d2b0f77bae77db03a67906ce389c
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 26 Sep 2017 08:46:24 +0000 (17:46 +0900)]
tpl_worker_thread: Add checking return value of tdm event
Change-Id: I8cfb9f9b872694bfc5f84f4997937469f6bd5f33
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Wed, 27 Sep 2017 01:59:18 +0000 (10:59 +0900)]
tpl_worker_thread: Fix tizen coding rule violation
Change-Id: I4b1ec310b03045dff6e434a83e6b90ea9f62b0de
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 26 Sep 2017 08:25:01 +0000 (17:25 +0900)]
tpl_wl_egl_thread: Add missing mutex unlock in error handling
Change-Id: I45ab54c170de85a8a1b7feb59b9303a40483cfec
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
Hoyub Lee [Tue, 26 Sep 2017 08:09:15 +0000 (17:09 +0900)]
tpl_wayland_egl_thread: Add missing mutex unlock in error handling
Change-Id: I15a558d8f88c30990231c759b9ca3b171ff7eb35
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
joonbum.ko [Fri, 22 Sep 2017 08:22:13 +0000 (17:22 +0900)]
Package version up to 1.4.9
- libwayland-egl: package version up to 1.2.3
Change-Id: Idd5f9da7e3caf7219afa5bdb63ee6dcb940aa450
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 22 Sep 2017 08:21:18 +0000 (17:21 +0900)]
tpl_wayland_egl_thread: Changed the calling order of g_source_remove_fd().
Change-Id: Idd1250427579bb6cf9b1b5ff92515c708952ec3c
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 22 Sep 2017 05:58:39 +0000 (14:58 +0900)]
tpl_wayland_egl_thread: modified the wl_surf_source to be destroyed in the thread.
- It is destroyed in thread through del_source like tdm_source and wl_disp_source.
Change-Id: Ic65e5521d4fafb9734de87f114ae292195b008a1
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Thu, 21 Sep 2017 03:15:54 +0000 (12:15 +0900)]
tpl_wayland_egl_thread: modified the tdm_source to be destroyed in the thread.
- The tdm_source is created in the thread.
- The tdm_del_source is created in the main thread after the tdm_source is created.
- When twe_thread_destroy() is called, the tdm_source is destroyed in the thread
by triggering an event on tdm_del_source.
Change-Id: Icc88a9b92e446071d3776191fc120153a4c62502
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Fri, 22 Sep 2017 06:54:30 +0000 (15:54 +0900)]
tpl_wayland_egl_thread: protected the process of twe_display_del with mutex.
- The function twe_display_del is called by the main thread,
but the actual destroy process is handled by the thread through twe_del_source.
Therefore, while the del_source is being processed by the thread,
the main thread must wait in cond_wait.
Change-Id: I7cffdc1d6fd477213d8258cf87871aa3de0c75f2
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
Hoyub Lee [Fri, 15 Sep 2017 08:46:48 +0000 (17:46 +0900)]
tpl_wayland_egl_thread: Protect twe_thread_create() with mutex
Currently, main thread does not wait for newly creating threads which
has its own initialization process. As initalization happens on newly
created thread, without protecting, undesirable behaviour can occur.
Therefore, change main thread to wait newly creating thread with mutex.
Change-Id: Id32092d77c35bd7b8d705057a1b07798820e8e20
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
joonbum.ko [Wed, 20 Sep 2017 05:29:29 +0000 (14:29 +0900)]
tpl_wayland_egl_thread: Modified the function ordering.
Change-Id: I95102a262924c06fa4243e81192cca5b2c0f25dd
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 20 Sep 2017 04:25:25 +0000 (13:25 +0900)]
tpl_wayland_egl_thread: Modified naming and usage of twe_del_source.
- To extend the usability of the 'twe_wl_disp_del_source'
that was created to delete the disp_source, I changed naming
to 'twe_del_source' and changed the associated functions to be common.
Change-Id: I6b7eddbfaf1434ec189e75211932258419945200
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 20 Sep 2017 00:25:11 +0000 (09:25 +0900)]
tpl_wayland_egl_thread: Implemented destroy callback of wl_egl_window.
- If wl_egl_window is destroyed before the surface is destroyed,
wl_egl_window and wl_surface are not accessed by any routine.
Change-Id: I15dd945fbe50007eda7bd6783f687f705fb97852
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Mon, 18 Sep 2017 06:19:11 +0000 (15:19 +0900)]
wayland-egl: Added wl_egl_window destroy callback.
libwayland-egl: package version up to 1.2.3
Change-Id: Ifd7713dee2ed521b22b4a2601e623b717882f57f
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 13 Sep 2017 09:04:08 +0000 (18:04 +0900)]
Package version up to 1.4.8
Change-Id: I38d174f445385738037984afd6762dde05d4ecb9
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 13 Sep 2017 07:59:59 +0000 (16:59 +0900)]
tpl_wl_egl_thread: Modified to ensure thread safety between enqueue and destroy.
Change-Id: I36af6adb3956112093ddcd2304f31b5ab26705f3
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Wed, 13 Sep 2017 05:29:25 +0000 (14:29 +0900)]
tpl_wayland_egl_thread: Modified twe_surface_destroy to unref the tbm_surface in in_user_buffers.
- When eglSurfaceDestroy is called on the main thread,
the function twe_surface_del() waits for the worker thread
to finish rendering the buffer no longer
Change-Id: Ieb3921eedd990b8621122cb1db9d42cb5933c2c1
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
Hoyub Lee [Fri, 8 Sep 2017 04:06:23 +0000 (13:06 +0900)]
build: Add missing flag on ENABLE_TTRACE
Change-Id: If08ede24479cfed51d22144a3dccc8c01c70df0f
Signed-off-by: Hoyub Lee <hoyub.lee@samsung.com>
joonbum.ko [Mon, 4 Sep 2017 08:57:01 +0000 (17:57 +0900)]
Package version up to 1.4.7
Change-Id: I5e80a40c17f6b3b0cde035242c0837e8eb9c6621
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
joonbum.ko [Mon, 4 Sep 2017 07:47:48 +0000 (16:47 +0900)]
tpl_wayland_egl_thread: Fixed ref count bug in gsources.
- g_source_new() must match g_source_unref(),
g_source_attach() must match g_source_destroy().
Change-Id: I5bfe99de2bed6abfbff9f0a61ff20eeb33533048
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>