platform/core/uifw/libtpl-egl.git
5 years agotpl_wayland_egl(_thread): Initialized the callbacks of wl_egl_window to NULL when... 42/197542/1
Joonbum Ko [Tue, 8 Jan 2019 07:20:10 +0000 (16:20 +0900)]
tpl_wayland_egl(_thread): Initialized the callbacks of wl_egl_window to NULL when destroy.

Change-Id: I288df9cb513fea71f615f66068b4109b4677fbb9
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.27 accepted/tizen/5.0/unified/20190102.092159 accepted/tizen/5.0/unified/20190104.061321 accepted/tizen/unified/20190107.065423 submit/tizen/20190104.034936 submit/tizen_5.0/20181228.091208 submit/tizen_5.0/20190103.074433
Joonbum Ko [Fri, 28 Dec 2018 09:06:47 +0000 (18:06 +0900)]
Package version up to 1.5.27

 - API dependency ( libtbm-3.0.9 )
 tbm_surface_queue_can_dequeue_wait_timeout()

Change-Id: I457145607f227118b5723653098f676d0b8a80e9
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wl_egl_thread: Implemented force_flush to use can_dequeue_wait_timeout.
Joonbum Ko [Fri, 28 Dec 2018 07:37:25 +0000 (16:37 +0900)]
tpl_wl_egl_thread: Implemented force_flush to use can_dequeue_wait_timeout.

 - This is a patch to solve the problem of blocking in tbm_surface_queue_can_dequeue()
  if release_event is missing due to wayland socket or server logic problem.
 - If TBM_SURFACE_QUEUE_ERROR_TIMEOUT occurs, new buffers are allocated
  to escape blocking without waiting for buffer release events.

Change-Id: I883c65b3af3cfa66336f4301628614ede0b421a7
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Added assert case to detect abnomalies. 39/196339/1
Joonbum Ko [Thu, 27 Dec 2018 07:59:18 +0000 (16:59 +0900)]
tpl_wayland_egl_thread: Added assert case to detect abnomalies.

 - In the twe thread, the event fd being poll must be
  woken up only with G_IO_IN.
 - However, if some problem occurs in fd, it can wake up with
  G_IO_ERR, G_IO_HUP, G_IO_NVAL, and try dispatch.
   In this case, it is difficult to predict the situation after G_SOURCE_REMOVE,
  so ASSERT should be used to find the time when the problem occurs.
 - If there is no ASSERT () or remove, g_main_loop will repeatedly
  wake up and try to dispatch the source, causing a problem of making CPU usage high.

Change-Id: I678119c192c7ab52acd11965e54dfa9a890fa8e7
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.26 58/194258/1 accepted/tizen/5.0/unified/20181203.061730 accepted/tizen/unified/20181203.061753 submit/tizen/20181130.102133 submit/tizen_5.0/20181130.102123
Joonbum Ko [Fri, 30 Nov 2018 08:53:56 +0000 (17:53 +0900)]
Package version up to 1.5.26

Change-Id: I051e5b49704f92ec941076c81ca8d3cb91c9e24a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Changed the result of handle_events() to assert checking. 57/194257/1
Joonbum Ko [Fri, 30 Nov 2018 08:47:27 +0000 (17:47 +0900)]
tpl_wayland_egl_thread: Changed the result of handle_events() to assert checking.

 - If tdm_source is destroyed when the result of tdm_client_handle_events()
  is not TDM_ERROR_NONE, tdm releated functions can not be recovered.
 - Unless error is unexpected, tdm_client_handle_events() should always return ERROR_NONE,
  otherwise it should be checked with assert to make debugging easier for unknown ERROR.

Change-Id: I6681fc396772e7e4d692145cc702257b42a57fde
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Printed warning to notice tdm_error_timeout. 56/194256/1
Joonbum Ko [Fri, 30 Nov 2018 06:55:53 +0000 (15:55 +0900)]
tpl_wayland_egl_thread: Printed warning to notice tdm_error_timeout.

Change-Id: I94d8e5bd7424f921a68cc4a68f70373e580da838
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Moved tdm_del_source to twe context. 55/194255/1
Joonbum Ko [Fri, 30 Nov 2018 05:24:46 +0000 (14:24 +0900)]
tpl_wayland_egl_thread: Moved tdm_del_source to twe context.

Change-Id: I6309134e87bee43ad93a2035b296e9755e50f795
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Fixed to send signal when tdm_source already detroyed. 54/194254/1
Joonbum Ko [Fri, 30 Nov 2018 04:52:23 +0000 (13:52 +0900)]
tpl_wayland_egl_thread: Fixed to send signal when tdm_source already detroyed.

 - If there was an error when processing tdm_client_handle_events(),
  tdm_source would have been destroyed before the process terminated.
 - In this case, when Main thread terminate its twe_thread,
  main thread will have to wait for the tdm_source destroy signal.

Change-Id: If2a8afb8dc801e5313e33298d9b320d4976e1480
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.24 59/193559/1 accepted/tizen/5.0/unified/20181123.020429 submit/tizen/20181122.022539 submit/tizen_5.0/20181122.022531
Joonbum Ko [Wed, 21 Nov 2018 05:27:43 +0000 (14:27 +0900)]
Package version up to 1.5.24

Change-Id: Ic924e64d3e73844650e2e266aab9a9784ab7996e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wl_egl_thread: Added missed mutex_lock to prevent locking problem. 58/193558/1
Joonbum Ko [Tue, 20 Nov 2018 10:58:59 +0000 (19:58 +0900)]
tpl_wl_egl_thread: Added missed mutex_lock to prevent locking problem.

Change-Id: Ia52ca1ec8d4feb0e66fb378fe7c32ab1fac93e25
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wl_vk_thread: Fixed bug related to buffer_count to prevent heap-overflow. 57/193557/1
Joonbum Ko [Tue, 20 Nov 2018 06:52:52 +0000 (15:52 +0900)]
tpl_wl_vk_thread: Fixed bug related to buffer_count to prevent heap-overflow.

Change-Id: I5cbc98bd787711336b2386e7e007e16dbd9f3ee8
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Added an null exception checking. 56/193556/1
Joonbum Ko [Tue, 20 Nov 2018 05:45:23 +0000 (14:45 +0900)]
tpl_wayland_egl_thread: Added an null exception checking.

Change-Id: I7fd92cc21c22b9c6a4b2f751829542b1f9402b10
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.24 11/192711/1 accepted/tizen/5.0/unified/20181109.062749 accepted/tizen/unified/20181112.060846 submit/tizen/20181108.102339 submit/tizen_5.0/20181108.102409
Joonbum Ko [Thu, 8 Nov 2018 10:12:06 +0000 (19:12 +0900)]
Package version up to 1.5.24

Change-Id: Ic9ea9c802d8e2b831e6207c52cae35b8f49b0a80
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl: Modified to set the acquired buffer to frontbuffer. 10/192710/1
Joonbum Ko [Thu, 8 Nov 2018 05:39:38 +0000 (14:39 +0900)]
tpl_wayland_egl: Modified to set the acquired buffer to frontbuffer.

 - Before this patch, tpl used dequeued buffer as frontbuffer.
  But using dequeued buffer as frontbuffer can cause
   sequential error of tbm_surface_queue with GUARANTEE_CYCLE_MODE
   when the frontbuffer mode is terminated by an external factor.

Change-Id: I0fba84605de7f50a9968ca00c9e5c4cc54292d6d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.23 07/192607/1 accepted/tizen/5.0/unified/20181108.074406 accepted/tizen/unified/20181108.074520 submit/tizen/20181107.022154 submit/tizen/20181107.044109 submit/tizen_5.0/20181107.022142 submit/tizen_5.0/20181107.044303
Joonbum Ko [Wed, 7 Nov 2018 02:15:08 +0000 (11:15 +0900)]
Package version up to 1.5.23

Change-Id: Iefdebf43d8f7ba9cbfbe7cf975473edbddcbd4b1
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wl_vk_thread: Fixed bug to prevent heap-buffer-overflow. 62/192162/1
Joonbum Ko [Wed, 31 Oct 2018 04:57:07 +0000 (13:57 +0900)]
tpl_wl_vk_thread: Fixed bug to prevent heap-buffer-overflow.

Change-Id: I991585fd99975196715d98a23b83603f4f20bf62
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.22 54/192054/1
Joonbum Ko [Mon, 29 Oct 2018 10:40:21 +0000 (19:40 +0900)]
Package version up to 1.5.22

Change-Id: I307e28cb09f251722725ad426f8a1be783ad2f38
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Added an exception checking to prevent blocking issue. 53/192053/1
Joonbum Ko [Mon, 29 Oct 2018 10:39:33 +0000 (19:39 +0900)]
tpl_wayland_egl_thread: Added an exception checking to prevent blocking issue.

Change-Id: I3fce4d6db3e4f4a4dd7446b3946edc523c31e148
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Enabled vblank pending list. 52/192052/1
Joonbum Ko [Mon, 29 Oct 2018 10:31:00 +0000 (19:31 +0900)]
tpl_wayland_egl_thread: Enabled vblank pending list.

Change-Id: I706d67a9b1fb9859782c0cc6c1894bd8e73e830c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.21 38/191938/1
Joonbum Ko [Thu, 25 Oct 2018 23:59:52 +0000 (08:59 +0900)]
Package version up to 1.5.21

Change-Id: I9ba3e4b2404259f4be4d89cf8d9256959f3146ee
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wl_egl_thread: Changed the wait flag to enable waiting in can_dequeue. 37/191937/1
Joonbum Ko [Thu, 25 Oct 2018 23:53:44 +0000 (08:53 +0900)]
tpl_wl_egl_thread: Changed the wait flag to enable waiting in can_dequeue.

 - Using the while loop with can_dequeue(wait=0) can occur high cpu usage problem.

Change-Id: Ic7645b336eeeb0088354838ae9b3c32259dbe9ec
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.20 19/189819/1 accepted/tizen/5.0/unified/20181102.022344 accepted/tizen/unified/20180921.042552 submit/tizen/20180921.012852 submit/tizen_5.0/20181101.000005
Joonbum Ko [Fri, 21 Sep 2018 01:22:44 +0000 (10:22 +0900)]
Package version up to 1.5.20

Change-Id: I87c74ae438518db4464e764da6e8e08a8bb45a8f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl: Modified to update the transform information of newly created buffers. 17/189817/1
Joonbum Ko [Fri, 21 Sep 2018 01:20:42 +0000 (10:20 +0900)]
tpl_wayland_egl: Modified to update the transform information of newly created buffers.

Change-Id: If2cca56e29f79b4ca3bf7cb6a755959d4e2c134d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.19 00/189600/1 accepted/tizen/unified/20180920.063825 submit/tizen/20180919.062615
Joonbum Ko [Wed, 19 Sep 2018 06:09:19 +0000 (15:09 +0900)]
Package version up to 1.5.19

Change-Id: I9478b93838f55a6df38aa8ea1b84a6b5767c925f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Modified wait_vblank handling of PRESENT_MODE_FIFO. 99/189599/1
Joonbum Ko [Wed, 19 Sep 2018 05:45:48 +0000 (14:45 +0900)]
tpl_wayland_egl_thread: Modified wait_vblank handling of PRESENT_MODE_FIFO.

 - PRESENT_MODE_FIFO has been modified to be dependent on
  the behavior of the display server which can use HW vblank.
  (Therefore, PRESENT_MODE_IMMEDIATE and PRESENT_MODE_FIFO_RELAXED
   are not meaningful because client can not control HW vblank.)

 - If the client sends a commit only once per one vblank,
  the display server will perform pageflip on the HW vsync,
  so the latency of PRESENT_MODE_FIFO can be reduced.

Change-Id: Ie3802e0a7b93515827e93c6712bb8cf3160640ce
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.18 46/189146/1 accepted/tizen/unified/20180918.062804 submit/tizen/20180917.042454
Joonbum Ko [Fri, 14 Sep 2018 02:00:06 +0000 (11:00 +0900)]
Package version up to 1.5.18

Change-Id: I3d315a58c125dce96d061f245dbd93a8ad00fd72
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_vk_wsi_thread: Increased the ref_cnt of swapchain_buffers. 45/189145/1
Joonbum Ko [Thu, 13 Sep 2018 09:47:35 +0000 (18:47 +0900)]
tpl_vk_wsi_thread: Increased the ref_cnt of swapchain_buffers.

 - vulkan-wsi-tizen creates vkImage(s) from the swapchain_buffers obtained
  from the tpl_surface_get_swapchain_buffers() API.

 - If the queue_reset occurs in the event thread, then swapchain_buffers that
  have already been acquired by wsi will be destroyed, which can cause problems.

 - Therefore, even if queue_reset occurs in event_thread,
  TPL must increase ref_cnt of swapchain_buffers so that it is valid
  until swapchain is destroyed.

Change-Id: Ibe41f212a64da89dbc30ea3f137f44dab187eb50
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.17 64/189064/1 accepted/tizen/unified/20180914.080408 submit/tizen/20180913.064752
Joonbum Ko [Thu, 13 Sep 2018 06:40:59 +0000 (15:40 +0900)]
Package version up to 1.5.17

Change-Id: Ifca8d8586dfbf9f11c1e45bf9cbae52b25e3ef7f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agowl_vk_wsi_thread: Fixed missing unlocking at destroy swapchain. 63/189063/1
Joonbum Ko [Thu, 13 Sep 2018 06:22:22 +0000 (15:22 +0900)]
wl_vk_wsi_thread: Fixed missing unlocking at destroy swapchain.

Change-Id: I174859edee77a17df09424f12bf15153391afd67
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agowayland-egl-tizen: Fixed a build warning. 34/189034/2
Joonbum Ko [Thu, 13 Sep 2018 02:07:13 +0000 (11:07 +0900)]
wayland-egl-tizen: Fixed a build warning.

Change-Id: Icab11757adc178357488559cc8dc4ef5a724276f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.16 43/188943/1 accepted/tizen/unified/20180913.063829 submit/tizen/20180912.042521
Joonbum Ko [Wed, 12 Sep 2018 04:15:07 +0000 (13:15 +0900)]
Package version up to 1.5.16

Change-Id: I686392475ada3218c2301f86ab0f715daed038ef
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_vk_wsi_thread: Enhanced thread safety for destroy swapchain. 42/188942/1
Joonbum Ko [Wed, 12 Sep 2018 04:13:31 +0000 (13:13 +0900)]
tpl_vk_wsi_thread: Enhanced thread safety for destroy swapchain.

 - If wayland events handled in the event thread during destroy_swapchain,
  unexpected problem can occur related wayland-tbm.

Change-Id: I0b80e2784f8a51590ad238ffb63dcc783db2f969
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl(_thread): Implemented a few lines releated to set_window_serial. 41/188941/1
Joonbum Ko [Wed, 12 Sep 2018 03:03:56 +0000 (12:03 +0900)]
tpl_wayland_egl(_thread): Implemented a few lines releated to set_window_serial.

Change-Id: I01df22d47a6add48fcb97a2aa50b96bb87e269fd
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agowayland-egl: Added new API to set window serial. 40/188940/1
Joonbum Ko [Wed, 12 Sep 2018 02:44:40 +0000 (11:44 +0900)]
wayland-egl: Added new API to set window serial.

 - New wayland-egl-tizen API :
 void
  wl_egl_window_tizen_set_window_serial(struct wl_egl_window *egl_window,
unsigned int serial)

 - If client use this new API, increaing wl_egl_window->serial will not
  work at dequeue, and buffer's serial value will be set to the serial
  that the client passed to this API.
'- The serial value client want to set must be incremented
  whenever there is a change related to the window.
 - This API should be called before the gl first draw call to ensure
  the correct one frame in the desired serial.

Change-Id: I66266fc58867b331ab253ce5682df10d70176851
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_tbm: Modified to mutex_unlock during waiting for can_dequeue. 39/188939/1
Joonbum Ko [Wed, 12 Sep 2018 00:17:31 +0000 (09:17 +0900)]
tpl_tbm: Modified to mutex_unlock during waiting for can_dequeue.

Change-Id: I4279bc245e391a66cb80285b12ab6efd92df9965
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Enhanced thread safety for get_swapchain_buffers 38/188938/1
Joonbum Ko [Wed, 12 Sep 2018 00:12:54 +0000 (09:12 +0900)]
tpl_wayland_egl_thread: Enhanced thread safety for get_swapchain_buffers

 - If wayland events handled in the event thread during get_swapchain_buffers,
  unexpected problem can occur.

Change-Id: I6c6955fd7bb5f9b03372de0c396c1b6e157b92c0
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Added log and trace mark 86/188586/2
Joonbum Ko [Thu, 6 Sep 2018 05:16:31 +0000 (14:16 +0900)]
tpl_wayland_egl_thread: Added log and trace mark

Change-Id: I32a175d2c6e36c1ad9c068337c32a0db9e201f40
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Inserted the missing code to use sync fd. 85/188585/2
Joonbum Ko [Thu, 6 Sep 2018 04:53:16 +0000 (13:53 +0900)]
tpl_wayland_egl_thread: Inserted the missing code to use sync fd.

Change-Id: I4a8434e3c040b4abc9749d027fbcc4691f96d040
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Modified some bugs in in_use_buffers list. 84/188584/2
Joonbum Ko [Thu, 6 Sep 2018 04:27:07 +0000 (13:27 +0900)]
tpl_wayland_egl_thread: Modified some bugs in in_use_buffers list.

 - For vulkan, get_buffers causes set_wl_buffer_info
  to be called once for all buffers. Therefore, vulkan does not
  have to push in_use_buffers when set_wl_buffer_info
  is called for each buffer first.

Change-Id: Ic6fe472d675449906f3033f64807adc2821cec18
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agowayland_egl: Added new APIs related with serial 92/186992/7
Juyeon Lee [Fri, 17 Aug 2018 05:11:23 +0000 (14:11 +0900)]
wayland_egl: Added new APIs related with serial

- once dequeue, increase serial number and assign it both on
wl_egl_window and twe_wl_buffer_info.

- at the same time of wl_surface_commit, deliver the serial to wayland-tbm server
by using wayland_tbm_client_set_buffer_serial

- New wayland_egl API:
unsigned int wl_egl_window_tizen_get_window_serial(struct wl_egl_window *egl_window)
egl_window cannot be NULL

Change-Id: I8a607be8c44b2a37e8ba90cceae3e3962a128ec9

5 years agoAdd support for VK_KHR_incremental_present: pass wl_surface_damage rects to compositor 45/185545/3
Harsh Aggarwal [Tue, 31 Jul 2018 11:03:53 +0000 (16:33 +0530)]
Add support for VK_KHR_incremental_present: pass wl_surface_damage rects to compositor
+ added based on wl_surface protocol version
+ for vulkan the coordindate system is top left (so no inverted y)

Change-Id: I00d47db5044ce00c855f898b55a1d15d443be9ae

5 years agoPackage version up to 1.5.15 15/188215/1 accepted/tizen/unified/20180904.180642 submit/tizen/20180904.025652
Joonbum Ko [Mon, 3 Sep 2018 05:53:17 +0000 (14:53 +0900)]
Package version up to 1.5.15

Change-Id: I28db1a95f4f2f6043b8e0dd9e0660236ee8d4f7b
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl: Fixed bug related with deadlock. 14/188214/1
Joonbum Ko [Mon, 3 Sep 2018 03:01:35 +0000 (12:01 +0900)]
tpl_wayland_egl: Fixed bug related with deadlock.

 - Using wl_event_mutex in the shm_flush_callback can cause
  deadlock problem with polling in the wait_dequeuable().

Change-Id: I624bf18e120492cda6825fc84a061e9d27f6a02d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Deleted meaningless lines. 79/188179/1
Joonbum Ko [Thu, 30 Aug 2018 09:10:13 +0000 (18:10 +0900)]
tpl_wayland_egl_thread: Deleted meaningless lines.

Change-Id: I51e14837e6daa4fdbab04bda2f80ffab2210906a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Added enqueue trace callback to tbm_queue. 78/188178/1
Joonbum Ko [Thu, 30 Aug 2018 09:07:25 +0000 (18:07 +0900)]
tpl_wayland_egl_thread: Added enqueue trace callback to tbm_queue.

 - Tracking dequeued buffers in the in_use_buffers is only from dequeue to enqueue.

Change-Id: I0ba57d16fc181898f9ccd7e2c76767f082b83472
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl_thread: Fixed a bug to prevent tearing. 77/188177/1
Joonbum Ko [Thu, 30 Aug 2018 07:17:02 +0000 (16:17 +0900)]
tpl_wayland_egl_thread: Fixed a bug to prevent tearing.

 - In the case of vulkan, the meaning of enqueue is not render_done state.
   Therefore, vulkan surface should check the can_acquire count
    in the dirty_queue of tbm_queue as well as the draw_done_count
    of surf_source.

Change-Id: Ibdd3e2438ac158fa78d2f897ae83f1cceb289efb
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.14 90/186390/1 accepted/tizen/unified/20180810.062921 submit/tizen/20180809.084702
Joonbum Ko [Thu, 9 Aug 2018 08:43:31 +0000 (17:43 +0900)]
Package version up to 1.5.14

Change-Id: Iad63a60908ac832f806b004984f34b4e53e6be5e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_display: Added a new API to get existed display with backend type. 59/186359/1
Joonbum Ko [Thu, 9 Aug 2018 05:03:08 +0000 (14:03 +0900)]
tpl_display: Added a new API to get existed display with backend type.

 - Added API below.

    Get TPL display object for the given native display.

 If there's already existing TPL display for the given native display and backend type,
 then return the existed TPL display object.

 If the given backend type is TPL_BACKEND_UNKNWON,
 it behaves the same as tpl_display_get().
 Otherwise, it searches for the tpl_display created with the given type.

 @param type backend type of the given native display.
 @param native_dpy handle to the native display.
 @return pointer to the display on success, NULL on failure.

   tpl_display_t *
   tpl_display_get_with_backend_type(tpl_backend_type_t type,
     tpl_handle_t native_dpy);

Change-Id: I82f65da4f168f47b2669e5e82f92aae4e77968a0
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.13 00/185500/1 accepted/tizen/unified/20180801.080114 submit/tizen/20180731.074027
Joonbum Ko [Tue, 31 Jul 2018 07:18:46 +0000 (16:18 +0900)]
Package version up to 1.5.13

Change-Id: I5b929878b1097e9dfe771cbab76099bea732f4d6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_utils: Modified to avoid unnecessary loop. 99/185499/1
Joonbum Ko [Tue, 31 Jul 2018 07:18:09 +0000 (16:18 +0900)]
tpl_utils: Modified to avoid unnecessary loop.

Change-Id: I8a63c27414b50e19b5425771d726e1c6fbeb8400
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl: Modified to remove only flushed buffers from committed_wl_buffers. 98/185498/1
Joonbum Ko [Tue, 31 Jul 2018 07:13:01 +0000 (16:13 +0900)]
tpl_wayland_egl: Modified to remove only flushed buffers from committed_wl_buffers.

 - If flush_callback removes all buffers from committed_wl_buffers,
  it can cause problems on non-iconified surfaces if they are multi-surfaces.

Change-Id: I6f1e6d6faa024e15961669bcfef1c6d62dc89037
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.12 07/185007/1 accepted/tizen/unified/20180726.064919 submit/tizen/20180725.075006
Joonbum Ko [Wed, 25 Jul 2018 07:04:44 +0000 (16:04 +0900)]
Package version up to 1.5.12

Change-Id: I52a5b1ad8c3e0c1f6c5c4332307ecc142eb30101
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_wayland_egl: Modified to track committed wl_buffer using global list. 03/185003/1
Joonbum Ko [Wed, 25 Jul 2018 06:40:09 +0000 (15:40 +0900)]
tpl_wayland_egl: Modified to track committed wl_buffer using global list.

 - If more than one release event is processed for only once committed wl_buffer,
  the tbm_surface that should not be destroyed can be destroyed.
 - Save wl_buffer during from wl_surface_commit to wl_buffer_release to a global list
  called committed_wl_buffers to filter out unwanted release events.

 [The cases of the problem]
  1. Multi-surfaces client.
  2. client want to render in iconified status.

Change-Id: I09ea2f0ba26b7066695971238d9bed003443e9e4
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agotpl_utils: Added internal util function to find node from given list with data. 02/185002/1
Joonbum Ko [Wed, 25 Jul 2018 06:35:03 +0000 (15:35 +0900)]
tpl_utils: Added internal util function to find node from given list with data.

Change-Id: I5754db81f7edc27728d7b839985a124923671e6f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
5 years agoPackage version up to 1.5.11 accepted/tizen/unified/20180724.023638 submit/tizen/20180723.054949
Joonbum Ko [Mon, 23 Jul 2018 05:43:33 +0000 (14:43 +0900)]
Package version up to 1.5.11

Change-Id: I247df5594ceadb92f7a53d0bd6eefeb56b27cf15
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
6 years agoFix Wformat build error 23/184623/1
yhji [Thu, 19 Jul 2018 09:10:17 +0000 (18:10 +0900)]
Fix Wformat build error

Change-Id: I52a171c0dc82fc5f6b5ed28b2bff01102b95bcd7
Signed-off-by: yhji <yhji.lee@samsung.com>
6 years agoPackage version up to 1.5.10 accepted/tizen/unified/20180705.172741 submit/tizen/20180705.024447
joonbum.ko [Thu, 5 Jul 2018 02:45:37 +0000 (11:45 +0900)]
Package version up to 1.5.10

Change-Id: I0fc7edecc19d56079b0014417a4c2daf3c17c709
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_surface: Added a new frontend API to set the number of desired buffers. 48/183248/2
joonbum.ko [Wed, 4 Jul 2018 00:16:56 +0000 (09:16 +0900)]
tpl_surface: Added a new frontend API to set the number of desired buffers.

 - New API below.

tpl_surface_t *
 tpl_surface_create_with_num_buffers(tpl_display_t *display,
                                     tpl_handle_t handle,
     tpl_surface_type_t type,
                                     tbm_format format,
     int num_buffers);

 Create a TPL surface for the given native surface(handle) with the number of desired buffers.
 This API is the same as tpl_surface_create() except that it can specify the number of buffers.

Change-Id: I1b0808da436906cd0a14568cd796f184b4343746
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl: Set need_to_release flag to FALSE to skip release procedure. 47/183247/1
joonbum.ko [Tue, 26 Jun 2018 04:47:10 +0000 (13:47 +0900)]
tpl_wayland_egl: Set need_to_release flag to FALSE to skip release procedure.

 - When flush_callback is called, the buffers in the attached_buffers list will be invalid,
  so they do not need to be handled by release_callback.

Change-Id: I7418cf4db8e3906c3088b859bfe806fca11101b6
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agoPackage version up to 1.5.9 accepted/tizen/unified/20180622.122625 submit/tizen/20180621.080959
joonbum.ko [Thu, 21 Jun 2018 08:11:41 +0000 (17:11 +0900)]
Package version up to 1.5.9

Change-Id: Idba23788b1d947942da3124d3f5e44a9525697c4
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_tbm: Added checking codes to choice tbm backend with dummy_dpy.
joonbum.ko [Mon, 18 Jun 2018 02:48:31 +0000 (11:48 +0900)]
tpl_tbm: Added checking codes to choice tbm backend with dummy_dpy.

Change-Id: If9a894414e042c904b3704c76354bffd3ac305f6
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agoPackage version up to 1.5.8 accepted/tizen/unified/20180621.141320 submit/tizen/20180620.051627
joonbum.ko [Wed, 20 Jun 2018 05:15:54 +0000 (14:15 +0900)]
Package version up to 1.5.8

Change-Id: I5645a89b3636c3e4a2a586356aa82e5e101f070f
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_gbm, tpl_tbm: Set the union rect of given damage rects to tbm_surface.
joonbum.ko [Mon, 28 May 2018 02:37:44 +0000 (11:37 +0900)]
tpl_gbm, tpl_tbm: Set the union rect of given damage rects to tbm_surface.

     - When egl client call the EGL API(eglSwapBuffersWithDamageEXT or eglSwapBuffersWithDamageKHR),
      driver will call the tpl API tpl_surface_enqueue_buffer_with_damage().
     - The wayland-egl backend for wl_client, when the damage rects were delivered to tpl,
      that informations can be set to wl_surface with damage_set protocol.
      But, the compositor could not set damage rects to display manager(tdm).

     - To make it possible in Tizen, libtbm added the following tbm_surface_internal APIs.
     commit message : surface: added tbm_surface_internal_set/get_damage func
     commit ID : 96527bf85d87df8c5767c51c0ec3a53320dbc35d
     int tbm_surface_internal_set_damage(tbm_surface_h surface, int x, int y, int width, int height);
     int tbm_surface_internal_get_damage(tbm_surface_h surface, int *x, int *y, int *width, int *height);

     - In TPL_TBM and TPL_GBM, create a union rectangle of the given damage rects using
     set_damage() API above to save the damage information to tbm_surface.

Change-Id: I1e10087100d0ece919c589868abdb0d6beda9c11
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl(_thread): Changed to destroy wl_event_queue after wl_registry is...
joonbum.ko [Tue, 19 Jun 2018 06:42:16 +0000 (15:42 +0900)]
tpl_wayland_egl(_thread): Changed to destroy wl_event_queue after wl_registry is destroyed.

Change-Id: I531719abc4079961b52c9b2467f1f2ea73be5705
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl: Deleted dispatch codes at the flush callback.
joonbum.ko [Tue, 19 Jun 2018 06:36:00 +0000 (15:36 +0900)]
tpl_wayland_egl: Deleted dispatch codes at the flush callback.

 - dispatch_pending in a flush callback can cause unexpected problems
  in multi-surfaces scenarios.

Change-Id: I0327b907c9756bd3fa9a08af0c73bc89299395f5
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_surface: Fixed tpl_surface_create() to support oldSwapchain.
joonbum.ko [Fri, 15 Jun 2018 08:09:42 +0000 (17:09 +0900)]
tpl_surface: Fixed tpl_surface_create() to support oldSwapchain.

 - In vulkan, new swapchain use same native_surface with old swapchain's one.
 - So when new swapchain created with using oldswapchain,
  if there is already existed tpl_surface in runtime hlist,
  skip the adding procedure to create new swapchain's tpl_surface.

Change-Id: I26d8048da596bfbb2bc3e825c41e7295000a18cd
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wl_vk_thread: Implemented cancel_dequeued_buffer() for vk_wsi_thread backend.
joonbum.ko [Fri, 15 Jun 2018 08:07:10 +0000 (17:07 +0900)]
tpl_wl_vk_thread: Implemented cancel_dequeued_buffer() for vk_wsi_thread backend.

Change-Id: I3b7484222b073b7b280335f0d7cc13b524398697
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agoPackage version up to 1.5.7 accepted/tizen/unified/20180510.070802 submit/tizen/20180509.050850
joonbum.ko [Wed, 9 May 2018 05:16:40 +0000 (14:16 +0900)]
Package version up to 1.5.7

Change-Id: Ifc38b36e2fb6b133014420d8f9b530be4d03136f
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Modified wl_egl to use the vblank_waiting_buffers list. 61/178261/1
joonbum.ko [Wed, 9 May 2018 04:18:04 +0000 (13:18 +0900)]
tpl_wayland_egl_thread: Modified wl_egl to use the vblank_waiting_buffers list.

 - If there are multiple buffers in the drity_queue of tbm_queue
  as render done state, acquire_and_commit function should decide
  whether to commit or pending, depending on whether vblank_done
  after acquire as much as possible.

 - If the current surface needs to wait for vblank to commit after acquire,
  keep the acquired buffer in the vblank_waiting_buffers list.

 - If vblank_waiting_buffers has one or more buffers when the vblank event
  is processed from tdm_client, pop out the first buffer and commit it.

Change-Id: I7aec2ee8ac7ed79dd6e466498dc1d998d335e180
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Fixed the destroying of some buffer lists. 60/178260/1
joonbum.ko [Wed, 9 May 2018 01:40:44 +0000 (10:40 +0900)]
tpl_wayland_egl_thread: Fixed the destroying of some buffer lists.

 - committed_buffers : __tpl_list_free() was not called for it.
 - vblank_waiting_buffers : The tbm_surfaces in this list, must be released to tbm_queue.

Change-Id: I0dea2a4f74d5373744a69d21ba27ba9be2613919
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agoPackage version up to 1.5.6 submit/tizen/20180502.085710
joonbum.ko [Wed, 2 May 2018 08:56:51 +0000 (17:56 +0900)]
Package version up to 1.5.6

Change-Id: I961a43d5a53763d246c5b2be77b458225ffa9269
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Fixed some bugs related to need_to_release flag. 10/177610/1
joonbum.ko [Wed, 2 May 2018 02:43:43 +0000 (11:43 +0900)]
tpl_wayland_egl_thread: Fixed some bugs related to need_to_release flag.

Change-Id: I694a4b0886caaf5fe89c81c4b293aca8f4034ee9
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Combined shm_init and vk_init. 09/177609/1
joonbum.ko [Wed, 2 May 2018 06:01:20 +0000 (15:01 +0900)]
tpl_wayland_egl_thread: Combined shm_init and vk_init.

Change-Id: I9e908494bf140486b5245fe6330d403ff8d15265
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Modified vulkan to init shm_flusher. 08/177608/1
joonbum.ko [Mon, 30 Apr 2018 10:35:03 +0000 (19:35 +0900)]
tpl_wayland_egl_thread: Modified vulkan to init shm_flusher.

 - If tbm_surface_queue of wl_surface without get_flusher() is iconified,
  wl_tbm will do tbm_surface_queue_flush() forcely.
 - This can cause unexpected problems.
 - So, initalize flusher to allow control of queue inside TPL,
  but does not actually do queue_flush()

Change-Id: I12378b2b2935026da9552ca19b597e04abaf41e1
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agoPackage version up to 1.5.5 accepted/tizen/unified/20180417.173108 submit/tizen/20180416.064920
joonbum.ko [Mon, 16 Apr 2018 06:48:10 +0000 (15:48 +0900)]
Package version up to 1.5.5

Change-Id: I5283e14d922d2880104cb33cb7e0156b20048061
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Fixed bug that commit can't be done when sync_fence is not... 70/175970/1
joonbum.ko [Mon, 16 Apr 2018 04:37:36 +0000 (13:37 +0900)]
tpl_wayland_egl_thread: Fixed bug that commit can't be done when sync_fence is not used in vulkan.

Change-Id: I58b51b87bed46b34e445792199fb09c6f38d36c5
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl: Modified to use tbm_surface_queue with GUARANTEE_CYCLE mode. 31/175431/2
joonbum.ko [Tue, 10 Apr 2018 06:39:36 +0000 (15:39 +0900)]
tpl_wayland_egl: Modified to use tbm_surface_queue with GUARANTEE_CYCLE mode.

 - the reset flag of wayland_egl_buffer will be not used more.

Change-Id: I6d40cce03bd15db043560d57bc1892863b8bc6a5
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl: Removed reset checking in release_callback. 30/175430/2
joonbum.ko [Tue, 10 Apr 2018 05:35:55 +0000 (14:35 +0900)]
tpl_wayland_egl: Removed reset checking in release_callback.

Change-Id: I2038fefa218e85f512153af3ae68fa6a210885c0
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl: Used tdm_client_handle_events_timeout() to prevent deadlock. 29/175429/2
joonbum.ko [Tue, 10 Apr 2018 05:20:57 +0000 (14:20 +0900)]
tpl_wayland_egl: Used tdm_client_handle_events_timeout() to prevent deadlock.

Change-Id: Idf5f0e33b72364e0dd4646b0d9790c4a6e05f04d
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl: Used new API of tdm_clint to check whether request is exist or not. 28/175428/2
joonbum.ko [Tue, 10 Apr 2018 04:55:50 +0000 (13:55 +0900)]
tpl_wayland_egl: Used new API of tdm_clint to check whether request is exist or not.

Change-Id: I45ce8e043a55a3f2222e5119b7662746cf433b95
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl: Added exception handling to prevent abnormal conditions. 27/175427/2
joonbum.ko [Tue, 10 Apr 2018 04:53:14 +0000 (13:53 +0900)]
tpl_wayland_egl: Added exception handling to prevent abnormal conditions.

Change-Id: I5663cec875a8b3252aedbc46f9932731d02034f1
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agowayland-egl: Package version up to 1.2.4 accepted/tizen/unified/20180320.141254 submit/tizen/20180319.040456 submit/tizen/20180320.011737
joonbum.ko [Mon, 19 Mar 2018 04:04:29 +0000 (13:04 +0900)]
wayland-egl: Package version up to 1.2.4

Change-Id: I9a39fc0a31e79b14e6034cb4daddaed2556eeb49
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agowayland-egl-tizen: Added a new packaging for wayland-egl-tizen. 52/172652/2
joonbum.ko [Thu, 15 Mar 2018 05:07:48 +0000 (14:07 +0900)]
wayland-egl-tizen: Added a new packaging for wayland-egl-tizen.

 - wayland-egl-tizen provides below RPMs
   libwayland-egl-tizen.rpm
    - libwayland-egl-tizen.so*
   libwayland-egl-tizen-devel.rpm
    - wayland-egl-tizen.pc
    - wayland-egl-tizen.h

 - wayland-egl-tizen is a separate package from the existing wayland-egl
  to provide tizen-specific extension APIs.

 - If wayland-client wants to use tizen-only wl_egl_window API,
  client should add wayland-egl-tizen.pc to their BuildRequires
  and include wayland-egl-tizen.h in their source code.

 - This change to the wayland-egl-tizen package is the first step in
  upgrading wayland in TIZEN, and the wayland-egl in libtpl-egl will be deprecated.

Change-Id: Icb07de25890edc8c8eb228fbdf4a8e3e6673aa99
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl: Fixed an issue runtime_fini was not thread safe. 43/170743/1 sandbox/lsj119/devel
joonbum.ko [Thu, 22 Feb 2018 02:05:31 +0000 (11:05 +0900)]
tpl: Fixed an issue runtime_fini was not thread safe.

Change-Id: Iea2ae18e9b2dd6042fa1e86eda54fa8ef7b5fdb6
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agoPackage version up to 1.5.4 accepted/tizen/unified/20180208.163715 submit/tizen/20180208.053156
joonbum.ko [Thu, 8 Feb 2018 05:35:51 +0000 (14:35 +0900)]
Package version up to 1.5.4

Change-Id: Ied81baf78938d7200526d5126de5d907f70dabf7
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Deleted unnecessary locking that can occur deadlock. 24/169624/1
joonbum.ko [Thu, 8 Feb 2018 04:15:09 +0000 (13:15 +0900)]
tpl_wayland_egl_thread: Deleted unnecessary locking that can occur deadlock.

 - To signal to free_queue_cond has been changed into dequeueable_callback()

Change-Id: Ib4028f0d7561b7ebf8161054ef23ec1ee5e20f7b
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wl_vk_thread: Fixed the locking mechanism in dequeueable. 80/169080/4
joonbum.ko [Wed, 17 Jan 2018 04:40:56 +0000 (13:40 +0900)]
tpl_wl_vk_thread: Fixed the locking mechanism in dequeueable.

Change-Id: Id63e92a3990a7f286d415760ed60aed93512ae0b
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Changed to use GMutex instead of tpl_object of the surf_source. 79/169079/4
joonbum.ko [Wed, 17 Jan 2018 02:40:16 +0000 (11:40 +0900)]
tpl_wayland_egl_thread: Changed to use GMutex instead of tpl_object of the surf_source.

Change-Id: I05bdca4011f142fd39db939de49a9d83db55259c
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Changed to use GMutex instead of tpl_object of the disp_source. 78/169078/4
joonbum.ko [Tue, 16 Jan 2018 06:36:58 +0000 (15:36 +0900)]
tpl_wayland_egl_thread: Changed to use GMutex instead of tpl_object of the disp_source.

Change-Id: Ieec00366d2084cfb9b77ed518bac7c3fb8c7d1b2
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Registered dequeueable callback to tbm_queue. 88/169088/3
joonbum.ko [Tue, 16 Jan 2018 04:58:03 +0000 (13:58 +0900)]
tpl_wayland_egl_thread: Registered dequeueable callback to tbm_queue.

 - Signal to free_queue_cond when dequeuable callback is called.
 - wl_buffer release callback does not signal to free_queue_cond, and
  if dequeuable callback is called when tbm_surface_queue_release() is called,
  signal to free_queue_cond.

Change-Id: I52d898f37ef6dc5074e98690399a04116869d177
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agoFixed some build warnings. 87/169087/3
joonbum.ko [Tue, 9 Jan 2018 11:10:09 +0000 (20:10 +0900)]
Fixed some build warnings.

Change-Id: Ia3b45e382cafe02e25f9aaf777338dbd4f9e191e
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wl_vk_thread: Modified get_swapchain_buffers to use internal function. 86/169086/2
joonbum.ko [Tue, 9 Jan 2018 10:09:45 +0000 (19:09 +0900)]
tpl_wl_vk_thread: Modified get_swapchain_buffers to use internal function.

 - Before this commit, had to call tbm_surface_queue_dequeue() as much as
  wayland_vk_wsi_surface->buffer_count to get the handle of the buffers.
 - And dequeued buffers must be return to tbm_surface_queue with tbm_surface_queue_release().
 - This method is complicated and not suitable for HWC situations, so I modified
  it to get handles of the buffers from wl_tbm_client via twe_surface_get_swapchain_buffers().

Change-Id: I535a531219cd2284a230cc4583b818aa16593c21
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Added a new internal API to get swapchain buffers from wl_tbm... 85/169085/1
joonbum.ko [Tue, 9 Jan 2018 08:59:46 +0000 (17:59 +0900)]
tpl_wayland_egl_thread: Added a new internal API to get swapchain buffers from wl_tbm_client.

 - Added internal API is twe_surface_get_swapchain_buffers.
 - This function uses the wayland-tbm API 'wayland_tbm_client_queue_get_surfaces()'
  to get the handle of tbm_surfaces to be used from the tbm_surface_queue of swapchain.

Change-Id: If2d5d2f2d6bbb85ba586d56a9ffac6cb54cb689e
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wl_vk_thread: Implemented reference count for swapchain. 84/169084/1
joonbum.ko [Fri, 5 Jan 2018 08:31:40 +0000 (17:31 +0900)]
tpl_wl_vk_thread: Implemented reference count for swapchain.

 - The order of creation and destruction of swapchain
  is not clear when reset is needed by HWC or resize.
 - When regeneration is needed, the vulkan application can either
  destroy the old swapchain first, or create a new swapchain before that.
 - In Tizen, however, the tbm_surface_queue of swapchain does not
  actually need to be regenerated.
 - Therefore, the 'reference count' of swapchain is needed to prevent
  unintended regeneration of tbm_surface_queue.

Change-Id: Ibe05f922ef149fa668a23c678065a89131ff547d
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl_thread: Added useful trace logs for vulkan. 83/169083/1
joonbum.ko [Fri, 5 Jan 2018 05:57:05 +0000 (14:57 +0900)]
tpl_wayland_egl_thread: Added useful trace logs for vulkan.

Change-Id: Ie37f9075a72856747c6259a73e3af381aec10ba8
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
6 years agotpl_wayland_egl: Added tdm_mutex to wayland_egl_display to guarantee thread safety. 95/168795/1
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>
6 years agoPackage version up to 1.5.3 accepted/tizen/unified/20180125.122836 submit/tizen/20180124.062445
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>
6 years agotizen-surface: renew tizen-surface protocol path 74/166674/2
JunSeok, Kim [Thu, 11 Jan 2018 10:39:50 +0000 (19:39 +0900)]
tizen-surface: renew tizen-surface protocol path

Change-Id: I1453b28a64cbc5942c56acf381faf0be05d48e97

6 years agotpl_wayland_egl_thread: Modified wrong return type. 54/167854/1
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>