platform/core/uifw/libtpl-egl.git
11 months agoPackage version up to 1.8.33 56/299056/1 accepted/tizen_6.5_unified accepted/tizen/6.5/unified/20230922.032112
jinbong, Lee [Tue, 19 Sep 2023 04:56:47 +0000 (13:56 +0900)]
Package version up to 1.8.33

Change-Id: I72c39917294f4cd27c5fbbdd63621aab1245a643

11 months agomove wl_display_flush after wayland_tbm_client_destroy_buffer 53/299053/1
jinbong, Lee [Tue, 19 Sep 2023 04:55:38 +0000 (13:55 +0900)]
move wl_display_flush after wayland_tbm_client_destroy_buffer

 - When wayland_tbm_client_destroy_buffer() is called,
   then we need to send message to server as soon as possible

Change-Id: I63e942bf18a485b4ba4f39c2fa011d38a6fb4b74

11 months agoPackage version up to 1.8.32 03/299003/2
jinbong, Lee [Mon, 18 Sep 2023 06:38:23 +0000 (15:38 +0900)]
Package version up to 1.8.32

Change-Id: I483d8b28f582534650d35613717acdccb5a4a9c6

11 months agoEnqueued tbm_surface is needed to unref when surface's finalize is called 93/298993/2
jinbong, Lee [Mon, 18 Sep 2023 06:30:37 +0000 (15:30 +0900)]
Enqueued tbm_surface is needed to unref when surface's finalize is called

 - If main thread called __tpl_wl_egl_surface_fini(),
   then sometimes enqueued buffer can be remained before acquire.
   so in that case tbm_surface must be unreferenced.

Change-Id: I971b75e6adf1a461d8d04ee4addbed6c2d50350e

11 months agoProtect wl_egl_buffer->wl_buffer with mutex_lock 92/298992/1
jinbong, Lee [Mon, 18 Sep 2023 06:28:38 +0000 (15:28 +0900)]
Protect wl_egl_buffer->wl_buffer with mutex_lock

 - wl_egl_buffer->wl_buffer is must protected when call wl_egl_display && wl_egl_display->wl_tbm_client

Change-Id: I16b4244f560b5a444559bc6a622c42b4b232efc9

15 months agoPackage version up to 1.8.31 93/292193/1
jinbong, Lee [Fri, 28 Apr 2023 10:34:08 +0000 (19:34 +0900)]
Package version up to 1.8.31

Change-Id: I466f53fecc1d6eee7e65ce38761c6d9d903b1525

15 months agoReplase mutexes locking order 92/292192/1
jinbong, Lee [Fri, 28 Apr 2023 10:17:57 +0000 (19:17 +0900)]
Replase mutexes locking order
 - If there is several mutex is used for display, surface, buffer
   then mutex order is display > surface > buffer for preventing deadlock
 - position of wl_egl_display's wl_event_mutex is moved before calling lock function for wl_egl_surface's buffers_mutex.

Change-Id: Id23d42831ae77a672c3f39486c47e54c56350baf

15 months agoAdd missed mutex_unlock when return on error is occurred 91/292191/1
jinbong, Lee [Fri, 28 Apr 2023 10:13:03 +0000 (19:13 +0900)]
Add missed mutex_unlock when return on error is occurred
  - source_mutex unlock is needed when creating eventfd is failed

Change-Id: Ic2563f7bc89ec28b2bf8db12c6087cbf86acedf9

16 months agoPackage version up to 1.8.30 44/291544/1
jinbong, Lee [Tue, 18 Apr 2023 06:26:24 +0000 (15:26 +0900)]
Package version up to 1.8.30

Change-Id: I29555771f5043731882a90bebd4c5efe388f2005

16 months agoremove deadlock when thread's finialize is called. 43/291543/1
jinbong, Lee [Tue, 18 Apr 2023 06:21:32 +0000 (15:21 +0900)]
remove deadlock when thread's finialize is called.

  - source_mutex is locked in finalize function.
  - user if called getting gsource's data - is protected using source_mutex
  - so it can be double calling function of g_mutex_lock()
  - it cause deadlock.

Change-Id: I5f1ca72aeee3d88eeb4fbda44888d0a73544834b

16 months agoPackage version up to 1.8.29 97/291297/1
Joonbum Ko [Thu, 13 Apr 2023 04:45:25 +0000 (13:45 +0900)]
Package version up to 1.8.29

Change-Id: Ic6e1d375e7fed7a8826db958f78d179840d27421
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
16 months agowl_egl: Add defense code for fake signal in buffer_clear 67/291067/2
Joonbum Ko [Thu, 27 Oct 2022 15:02:58 +0000 (00:02 +0900)]
wl_egl: Add defense code for fake signal in buffer_clear

 tpl_gcond_timed_wait is changed to be called within the while loop.
 It will repeat the process of checking status even if it wakes up
 due to Fake Signal.

Change-Id: Ia66810da64ba2830c166f01dcb2f2f4615fc8e4f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
16 months agomove mutex locking position 82/291082/6
jinbong, Lee [Fri, 7 Apr 2023 11:13:06 +0000 (20:13 +0900)]
move mutex locking position

 - wl_egl_surface->buffer_cnt is critical setion, so it must be protected by mutex

Change-Id: Ieedebe14c91aed140d34695e9443a7e6e779178f

16 months agoAdd valid check for wl_egl_buffer(gsource's data) in waiting source dispatch 71/291071/4
jinbong, Lee [Fri, 7 Apr 2023 09:23:44 +0000 (18:23 +0900)]
Add valid check for wl_egl_buffer(gsource's data)  in waiting source dispatch

  - _tpl_wl_egl_surface_buffer_clear is designed waiting to go idle envent for safe release of buffer.
  - But if waiting time_out is occurred then clear gsource's data with thread safety.
  - in the thread, if gsource's data is not vaild, user will check it and choose skip or not.

Change-Id: I97696640947a8262b63a9903da94e9f13564e59a

2 years agoPackage version up to 1.8.28 74/279474/2 accepted/tizen/6.5/unified/20220819.122340 submit/tizen_6.5/20220818.082558
Joonbum Ko [Wed, 10 Aug 2022 04:30:34 +0000 (13:30 +0900)]
Package version up to 1.8.28

Change-Id: Ib80aa4bedd783068339ef5e42bb1791a6cc3e1c6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoFixed to prevent page fault via invalid address. 73/279473/2
Joonbum Ko [Thu, 9 Jun 2022 10:04:11 +0000 (19:04 +0900)]
Fixed to prevent page fault via invalid address.

 - If the last_enq_buffer of wl_egl_surface has a wrong pointer address,
  page fault may occur inside the tbm_surface_internal_is_valid of libtbm.
 - To prevent this problem, it is modified to check in advance from
  the list of buffers of wl_egl_surface.

Change-Id: I459b182e9ed435ce93a3a862251869fb9c7829ad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoAdded internal function to check buffer is validate 72/279472/2
Joonbum Ko [Thu, 9 Jun 2022 09:43:49 +0000 (18:43 +0900)]
Added internal function to check buffer is validate

 - It can be modified flexibly.
 - For now, this function can check if given tbm_surface_h
  is managed by wl_egl_surface.

Change-Id: Ied59f583666a5f18f15537be6507c83c5277a866
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.27 58/273358/2 accepted/tizen/6.5/unified/20220406.134357 submit/tizen_6.5/20220405.031232
Joonbum Ko [Tue, 5 Apr 2022 01:54:40 +0000 (10:54 +0900)]
Package version up to 1.8.27

Change-Id: Ie9a551d75b5759aed0ce3846ac8ed449921156f1
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agofix 64bits build-errors 57/273357/2
Joonbum Ko [Tue, 5 Apr 2022 01:46:58 +0000 (10:46 +0900)]
fix 64bits build-errors

Change-Id: Ie5a6541b8442806c948c099f69eaa4729292b818
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.26 07/271407/1 accepted/tizen/6.5/unified/20220222.132731 submit/tizen_6.5/20220221.065232
Joonbum Ko [Mon, 21 Feb 2022 01:41:54 +0000 (10:41 +0900)]
Package version up to 1.8.26

Change-Id: I3cb074cd386d120995d5cd76625f0ed91f5737ab
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoMake clear about use_explicit_sync feature flag. 06/271406/1
Joonbum Ko [Tue, 15 Feb 2022 05:06:30 +0000 (14:06 +0900)]
Make clear about use_explicit_sync feature flag.

 - if the boolean flag use_explicit_sync is true,
  it includes the meaning surface_sync is not null.
 - so, it need to be simplified with using only
  use_explicit_sync flag.

Change-Id: Icdcc55a76d72b28d9bd38a96de1093ab56edc135
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.25 69/270169/1 accepted/tizen/6.5/unified/20220222.132756 submit/tizen_6.5/20220126.092045 submit/tizen_6.5/20220215.005103 submit/tizen_6.5/20220217.022227
Joonbum Ko [Wed, 26 Jan 2022 06:28:05 +0000 (15:28 +0900)]
Package version up to 1.8.25

Change-Id: I3143cbc74802419033805c4a21c14ef7cb6f6c58
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoInitialize last_enq_buffer to null when it committed. 68/270168/1
Joonbum Ko [Wed, 26 Jan 2022 06:26:31 +0000 (15:26 +0900)]
Initialize last_enq_buffer to null when it committed.

 - If the last_enq_buffer of wl_egl_surface has been committed,
  it is not necessary to have this handle pointer.

Change-Id: I3153b3cc9cb133f1d51321dc7aaa92f57b1e5ed8
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.24 31/269831/2
Joonbum Ko [Thu, 20 Jan 2022 08:08:33 +0000 (17:08 +0900)]
Package version up to 1.8.24

Change-Id: I612ec2104a361e383f97dd8d26a56d5382ad88c1
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPrevents the incorrect signal on gcond of wl_egl_buffer. 26/269826/3
Joonbum Ko [Thu, 20 Jan 2022 08:16:52 +0000 (17:16 +0900)]
Prevents the incorrect signal on gcond of wl_egl_buffer.

  As with g_cond_wait() it is possible that a spurious or stolen wakeup
 could occur. For that reason, waiting on a condition variable should
 always be in a loop, based on an explicitly-checked predicate.

Change-Id: I388e71a48dc91c1636490c856698c4a7f8d3fafd
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.23 29/269529/4 submit/tizen_6.5/20220118.102345
Joonbum Ko [Tue, 18 Jan 2022 02:06:30 +0000 (11:06 +0900)]
Package version up to 1.8.23

Change-Id: I39e166a5eba110731a2a3b5e8fa6a14f7b90bdad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoChange the handle of last_enq_buffer to tbm_surface_h 55/269555/2
Joonbum Ko [Tue, 18 Jan 2022 06:17:49 +0000 (15:17 +0900)]
Change the handle of last_enq_buffer to tbm_surface_h

 - to check validation for the handle of last_enq_buffer.

Change-Id: Ib92b28cd3bc6bfa553fb5de57afd9fc8cfcf0cdc
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.22 99/269199/2
Joonbum Ko [Tue, 11 Jan 2022 07:49:33 +0000 (16:49 +0900)]
Package version up to 1.8.22

Change-Id: I0a1ab000f80ab7a3c2aaaab0acfaca6591e95d53
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoFixed to use last_enq_buffer instead of last_deq_buffer. 19/269419/1
Joonbum Ko [Fri, 14 Jan 2022 01:51:51 +0000 (10:51 +0900)]
Fixed to use last_enq_buffer instead of last_deq_buffer.

 - last_deq_buffer has a risk to be free from thread.

Change-Id: I677704a5b9bbf8a7c405689663a856d83df595f4
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoMove unref to outside from buffer mutex. 18/269418/1
Joonbum Ko [Thu, 13 Jan 2022 08:52:48 +0000 (17:52 +0900)]
Move unref to outside from buffer mutex.

Change-Id: If2c0eb9ee17edf6febc830ec058b274b1eba5431
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoCall dispatch cb for disposable source when IO error occured. 98/269198/1
Joonbum Ko [Tue, 11 Jan 2022 06:41:03 +0000 (15:41 +0900)]
Call dispatch cb for disposable source when IO error occured.

Change-Id: I8a84a32b5c246c65a9b7a3ab5e5bc0e69afe51ae
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.21 59/268959/1
Joonbum Ko [Wed, 5 Jan 2022 07:53:24 +0000 (16:53 +0900)]
Package version up to 1.8.21

Change-Id: I21d36be947889a69c48b7b51c448d95abef6b0c9
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoRemove finalizer source to before cond_signal 58/268958/1
Joonbum Ko [Wed, 5 Jan 2022 07:48:11 +0000 (16:48 +0900)]
Remove finalizer source to before cond_signal

Change-Id: Iaeb1b75ecff8860f10f82a21e8ea2be972e70dad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.20 15/268715/1
Joonbum Ko [Thu, 30 Dec 2021 07:31:34 +0000 (16:31 +0900)]
Package version up to 1.8.20

Change-Id: I27eb1758e92fcafa69fd5203fc85fd7cca1d6fac
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoClear all cached buffer when queue_force_flush 14/268714/1
Joonbum Ko [Thu, 30 Dec 2021 06:37:10 +0000 (15:37 +0900)]
Clear all cached buffer when queue_force_flush

Change-Id: Ic232153cfbdea49aea1a9fd862ac81f673f7814c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoAdd mutex protection when gsource_destroy 13/268713/1
Joonbum Ko [Thu, 30 Dec 2021 04:56:12 +0000 (13:56 +0900)]
Add mutex protection when gsource_destroy

Change-Id: I50e841fa3895e6f145249396574e6a8267f1e663
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoAdd log to check when the transform changed 12/268712/1
Joonbum Ko [Thu, 30 Dec 2021 06:19:24 +0000 (15:19 +0900)]
Add log to check when the transform changed

Change-Id: I069fc944356d25845655359cdb8654887b554e8f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.19 05/268505/1 submit/tizen_6.5/20211227.044204
Joonbum Ko [Fri, 24 Dec 2021 01:45:28 +0000 (10:45 +0900)]
Package version up to 1.8.19

Change-Id: I5b0450b14c24e3f8152b46f9482f52a8fce19d71
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoInitialize last_deq_buffer to NULL when it free. 04/268504/1
Joonbum Ko [Fri, 24 Dec 2021 01:40:41 +0000 (10:40 +0900)]
Initialize last_deq_buffer to NULL when it free.

 Problem : DEQ -> ENQ -> ACQ -> VBLANK -> COMMIT -> RELEASE
  -> QUEUE_RESET -> last_deq_buffer free
  -> try DEQ !!< will be blocked.

 Init wl_egl_surface->last_deq_buffer to NULL when it was free
  to prevent to access the wrong pointer of last_deq_buffer.

Change-Id: Ic619b6a27a098b3de06c5733cec171538f921165
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.18 41/268441/1
Joonbum Ko [Thu, 23 Dec 2021 01:38:38 +0000 (10:38 +0900)]
Package version up to 1.8.18

Change-Id: I61c16ae2ae8798af01bfcf383602f607dce88049
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoAdded mutex for protecting vblank resources. 40/268440/1
Joonbum Ko [Thu, 23 Dec 2021 01:41:04 +0000 (10:41 +0900)]
Added mutex for protecting vblank resources.

 As-Is :
  - vblank resource was protected via surf_mutex.
 To-Be :
  - It will be protected via its own mutex.

Change-Id: Iff4084a4f8271b8cbe4a7ece308b98915d9641af
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoChanged to do roundtrip_queue before display_fini. 39/268439/1
Joonbum Ko [Wed, 22 Dec 2021 08:25:36 +0000 (17:25 +0900)]
Changed to do roundtrip_queue before display_fini.

Change-Id: I998141a3dc63ac944526dbb14876d8d6fa690c02
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoRemove wl_egl_buffer from vblank list when it freed. 38/268438/1
Joonbum Ko [Wed, 22 Dec 2021 08:16:12 +0000 (17:16 +0900)]
Remove wl_egl_buffer from vblank list when it freed.

 - If the wl_egl_buffer is forcibly free from the buffer_clear(),
  the invalid wl_egl_buffer remains in vblank->waiting_buffers.
 - This invalid pointer should be removed from the list
  when wl_egl_buffer free.

Change-Id: If6b9f58f4160c4426f2b816a22afb9e23b61372a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoModified the new buffer allocation in the RESET situation 37/268437/1
Joonbum Ko [Wed, 22 Dec 2021 05:45:09 +0000 (14:45 +0900)]
Modified the new buffer allocation in the RESET situation

As-Is :
 - If the tbm_surface_queue_reset occurs more frequently
  than VBLANK (16ms), there is a problem that the new tbm_surface
  continues to be allocated.

To-Be :
 - If there is a dequeue buffer before the RESET occurs,
  the new buffer will be allocated after waiting for
  dequeued buffer to be commit.

Change-Id: Id256e15e1125e06b362d5b90e7ead7718b6343ad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.17 69/267969/1 accepted/tizen/6.5/unified/20211217.122017 submit/tizen_6.5/20211214.052227
Joonbum Ko [Tue, 14 Dec 2021 04:42:32 +0000 (13:42 +0900)]
Package version up to 1.8.17

Change-Id: Idbab1d3c2d9db43c9cf2e6cabe61d82bb4ad58db
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoInitialize wl_egl_buffer->waiting_source in mutex protection. 68/267968/1
Joonbum Ko [Tue, 14 Dec 2021 04:35:06 +0000 (13:35 +0900)]
Initialize wl_egl_buffer->waiting_source in mutex protection.

 - the buffer_clear() of the main thread could occur thread conflict.
 - the pointer wl_egl_buffer->waiting_source must be protected.

Change-Id: I4af88b06ff104a39c1fc0aa890d1cab74f589eb7
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoSend transform of window and buffer since wl_surface version 2 24/267824/1
Changyeon Lee [Fri, 10 Dec 2021 06:48:48 +0000 (15:48 +0900)]
Send transform of window and buffer since wl_surface version 2

wl_surface_set_buffer_transform request is supported since
wl_surface version 2

Change-Id: Iaa9a996853b3e59fb2d325b615e1587d18e6c119

2 years agoSend transform of window and buffer to server after they are created. 59/267759/3
Changyeon Lee [Thu, 9 Dec 2021 10:54:34 +0000 (19:54 +0900)]
Send transform of window and buffer to server after they are created.

this patch is for fixing below case

1. create eglWidnowSurface(1) with wl_egl_window(1)
2. set window and buffer 90 transform with wl_egl_window(1)
3. destroy eglWindowSurface(1) of wl_egl_window(1)
4. set window and buffer 0 transform with wl_egl_window(1)
5. create eglWidnowSurface(2) with wl_egl_window(1)
7. set window transform 0 transform with wl_egl_window(1)
8. tpl does not send 0 transform to server

Change-Id: I8d83750f4ecd5791accecf4fe51681fe55b05cf1

2 years agoPackage version up to 1.8.16 71/266671/1
Joonbum Ko [Wed, 17 Nov 2021 04:32:44 +0000 (13:32 +0900)]
Package version up to 1.8.16

Change-Id: I1275061fee1f08b925c5eaf1abf5ab0c12a21443
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoFlush vblank waiting buffers when tdm error occured. 70/266670/1
Joonbum Ko [Wed, 17 Nov 2021 04:31:12 +0000 (13:31 +0900)]
Flush vblank waiting buffers when tdm error occured.

 - If tdm error such as TIEMOUT occured,
  flush all vblank waiting buffers of its wl_egl_surface.
   Otherwise, only one wl_egl_buffer will be commited
  per one vblank event.

Change-Id: I8df5cb847cf77875315df6ae3ca4086992f1700e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.15 43/266143/1 accepted/tizen/6.5/unified/20211111.224659 accepted/tizen/6.5/unified/20211112.053753 submit/tizen_6.5/20211109.073522 submit/tizen_6.5/20211111.055520
Joonbum Ko [Thu, 21 Oct 2021 12:16:35 +0000 (21:16 +0900)]
Package version up to 1.8.15

Change-Id: Ie037ea92b73da3efb0e4ff953d6a65823036f7ad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoChange the timeout limit to 200ms. 42/266142/1
Joonbum Ko [Thu, 21 Oct 2021 11:44:05 +0000 (20:44 +0900)]
Change the timeout limit to 200ms.

Change-Id: I05669288993d565f821594e19fcc404f8c02b4a5
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoModified to create wl_buffer only just before surface commit. 41/266141/1
Joonbum Ko [Thu, 21 Oct 2021 11:39:24 +0000 (20:39 +0900)]
Modified to create wl_buffer only just before surface commit.

 - While surface is destroyed, it is to prevent unintentional
  generation of wl_proxy.

Change-Id: Ic4b90c33d213453bad38ffd72cb9c2efbbfa5aa5
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.14 40/266140/1
Joonbum Ko [Tue, 5 Oct 2021 03:25:19 +0000 (12:25 +0900)]
Package version up to 1.8.14

Change-Id: Ib22f2cefd37b778270b6a6c1b774edd79d1c8eb4
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agowayland_egl_tizen: Move tizen_private_create() to each backend. 39/266139/1
Joonbum Ko [Tue, 28 Sep 2021 08:03:57 +0000 (17:03 +0900)]
wayland_egl_tizen: Move tizen_private_create() to each backend.

 - Move the function implementation of tizen_private_create()
  to each backend.
 - Since wl_egl_window_tizen APIs are not used anymore,
  it is not necessary to provide in wayland-egl-tizen-priv.h

Change-Id: I9309914f4c7a2c3267b5fd1edf844c25e866e64a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agowayland-egl-tizen: Modified to do not create tizen_private. 38/266138/1
Joonbum Ko [Tue, 28 Sep 2021 07:59:37 +0000 (16:59 +0900)]
wayland-egl-tizen: Modified to do not create tizen_private.

 - tizen_private will be created by tpl_surface_create internally.
 - Calling any wl_egl_window_tizen APIs before calling
    tpl_surface_create will be ignored.

Change-Id: I5d5c195e27a2ea1d74e779fd6abc6025456e5df6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.13 23/263523/1 accepted/tizen/6.5/unified/20211028.121408 accepted/tizen/unified/20210907.121933 submit/tizen/20210906.014744 submit/tizen_6.5/20211028.163101 tizen_6.5.m2_release
Joonbum Ko [Mon, 6 Sep 2021 02:07:25 +0000 (11:07 +0900)]
Package version up to 1.8.13

Change-Id: I53afc721c8b4a28b875c0c2f252feec3820e4311
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoMove assert checking to before add listener of wl_buffer 22/263522/1
Joonbum Ko [Mon, 6 Sep 2021 02:04:23 +0000 (11:04 +0900)]
Move assert checking to before add listener of wl_buffer

Change-Id: Ia1b6a7ed497b5f0f1d2201719a40a3d1291acff0
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoModified build error when TIZEN_FEATURE disabled. 31/263431/1 linux_yocto
Joonbum Ko [Thu, 2 Sep 2021 06:29:20 +0000 (15:29 +0900)]
Modified build error when TIZEN_FEATURE disabled.

Change-Id: Ib0452ed93c86b1400a9daadfb2e295f95f11fd61
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.12 54/263154/3 accepted/tizen/unified/20210830.103935 submit/tizen/20210827.024157
Joonbum Ko [Fri, 27 Aug 2021 01:31:58 +0000 (10:31 +0900)]
Package version up to 1.8.12

Change-Id: Iebc56cec9361db0f42a5a9883493a4f63fcc350a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoFixed a problem than adds duplicate listener to wl_buffer. 53/263153/3
Joonbum Ko [Fri, 27 Aug 2021 01:31:11 +0000 (10:31 +0900)]
Fixed a problem than adds duplicate listener to wl_buffer.

Change-Id: I0ab36d23602b9b3099b2057ea0701cf9a4540234
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoChanged log printing for wl_buffer creation to TPL_INFO. 52/263152/3
Joonbum Ko [Fri, 27 Aug 2021 01:09:09 +0000 (10:09 +0900)]
Changed log printing for wl_buffer creation to TPL_INFO.

Change-Id: I4885691b57910a991a15c19e45ab22fad14a37ad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoAdd null checking to prevent problem. 51/263151/3
Joonbum Ko [Fri, 27 Aug 2021 01:05:44 +0000 (10:05 +0900)]
Add null checking to prevent problem.

Change-Id: I4f837569048a151d43b0a689950ab7a4bbdd1355
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoAdd build flags to separate tizen specific feature. 50/263150/3
Joonbum Ko [Fri, 13 Aug 2021 02:04:56 +0000 (11:04 +0900)]
Add build flags to separate tizen specific feature.

Change-Id: I4615c5a9ca6a82d116fdd0662c2ce8f271490c62
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoRemove dependency releated wayland-vulkan-protocol 57/263157/1
Joonbum Ko [Fri, 13 Aug 2021 03:17:00 +0000 (12:17 +0900)]
Remove dependency releated wayland-vulkan-protocol

Change-Id: Id33821ae95d98e84c1af38b429804ccf3e92850e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoMove unusing files to unused and remove from makefile. 56/263156/1
Joonbum Ko [Fri, 13 Aug 2021 02:02:40 +0000 (11:02 +0900)]
Move unusing files to unused and remove from makefile.

Change-Id: Ic24027a9e907cb064325a1c2690e820da17cd03a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agowayland-egl-tizen: Add a log output option. 55/263155/1
Joonbum Ko [Fri, 13 Aug 2021 01:53:02 +0000 (10:53 +0900)]
wayland-egl-tizen: Add a log output option.

Change-Id: I732410110ece931eb036b4398a45b8be143e36e4
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoPackage version up to 1.8.11 68/261768/1 accepted/tizen/unified/20210802.135714 submit/tizen/20210727.093930 submit/tizen/20210802.011415
Joonbum Ko [Mon, 26 Jul 2021 04:16:14 +0000 (13:16 +0900)]
Package version up to 1.8.11

Change-Id: I19b4eabb56d6563d1c7a4bd1886a25d376d3f010
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoRemove unnecessary surf_mutex locking 64/261564/1
Joonbum Ko [Wed, 21 Jul 2021 07:53:14 +0000 (16:53 +0900)]
Remove unnecessary surf_mutex locking

 - This surf_mutex locking in buffer_clear
   can occur deadlock problem.

Change-Id: Ibd4fc7ff312c4ab96aa0db6c69d217979cac9622
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoPackage version up to 1.8.10 25/260125/1 accepted/tizen/unified/20210622.125833 submit/tizen/20210621.073348
Joonbum Ko [Mon, 21 Jun 2021 02:12:06 +0000 (11:12 +0900)]
Package version up to 1.8.10

Change-Id: Ife001513e981d8ae2dae6dfedc5d7e210c0e873b
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoFix missing use of num_buffers when create tbm_queue. 24/260124/1
Joonbum Ko [Mon, 21 Jun 2021 02:11:34 +0000 (11:11 +0900)]
Fix missing use of num_buffers when create tbm_queue.

Change-Id: If02ac0b00d87c3a1da860eb69b3b361666ff90a6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoFix incorrect use of can_dequeue return value. 23/260123/1
Joonbum Ko [Thu, 10 Jun 2021 05:36:02 +0000 (14:36 +0900)]
Fix incorrect use of can_dequeue return value.

Change-Id: Iac9ca1b9cd0a8d4749f10ee4dfd97f45a7f1a39a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoResolve build warning related to backend init functions. 36/259536/1
Joonbum Ko [Wed, 9 Jun 2021 03:20:44 +0000 (12:20 +0900)]
Resolve build warning related to backend init functions.

Change-Id: I08419d24c1411051029d4db6406682be0628db15
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoAdd magic check to confirm WL_EGL_TIZEN private. 35/259535/1
Joonbum Ko [Tue, 8 Jun 2021 09:35:18 +0000 (18:35 +0900)]
Add magic check to confirm WL_EGL_TIZEN private.

Change-Id: I0f3663c027c4c3e2d14843296b94d81345b3580e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoPackage version up to 1.8.9 14/259314/1 accepted/tizen/unified/20210609.140524 submit/tizen/20210604.110910 submit/tizen/20210607.072910
Joonbum Ko [Fri, 4 Jun 2021 06:55:36 +0000 (15:55 +0900)]
Package version up to 1.8.9

Change-Id: I68bc650bfe937a7e80c0ea73fa4b5a013cf020fd
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years ago Remove duplicate initialize. 13/259313/1
Joonbum Ko [Thu, 27 May 2021 10:56:35 +0000 (19:56 +0900)]
 Remove duplicate initialize.

Change-Id: Iebcb9c25dd42fe487dec172327f5161ff56ea0f1
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoAdd null checking to prevent problem. 12/259312/1
Joonbum Ko [Tue, 25 May 2021 09:22:55 +0000 (18:22 +0900)]
Add null checking to prevent problem.

Change-Id: Icd94a00b015b5100e6beaa59d435731836a2d376
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoClarified thread message and corrected some bugs. 11/259311/1
Joonbum Ko [Thu, 27 May 2021 11:14:47 +0000 (20:14 +0900)]
Clarified thread message and corrected some bugs.

Change-Id: I63fec57eb66104c87757cf5f665e8160859bddc8
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoFix ws-testcase build issue: 04/259304/1
Tianhao Ni [Fri, 4 Jun 2021 05:42:48 +0000 (13:42 +0800)]
Fix ws-testcase build issue:

- Issue:
   undefined reference to '__tpl_display_choose_backend_wl_egl_thread'
   undefined refetence to '__tpl_display_choose_backend_wayland_vk_wsi'

- Fix:
   Replace __tpl_display_choose_backend_wl_egl_thread() with __tpl_display_choose_backend_wl_egl_thread2()
   Replace __tpl_display_choose_backend_wayland_vk_wsi() with __tpl_display_choose_backend_wayland_vk_wsi_thread()

Change-Id: I1d562bbaf37c4c45b238e221b125bdb42cc6db1a
Signed-off-by: Tianhao Ni <tianhao.ni@samsung.com>
3 years agoPackage version up to 1.8.8 51/258551/1
Joonbum Ko [Thu, 20 May 2021 05:37:32 +0000 (14:37 +0900)]
Package version up to 1.8.8

Change-Id: I32040f47e2a577cffcb248fcc2fa0c0dc9d16e93
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoExpand the condition of need_to_wait in buffer_clear. 50/258550/1
Joonbum Ko [Tue, 18 May 2021 08:28:29 +0000 (17:28 +0900)]
Expand the condition of need_to_wait in buffer_clear.

 - AS-IS : The need_to_wait flags is set to true under
          different conditions according to the use of
          explicit_sync.
 - PROBLEMS : A buffer that is not included in the condition
             may cause thread conflict.
 - TO-BE : The buffers whose status is from ENQUEUED to COMMITTED
          will be cleared after waiting until wl_surface_commit.

Change-Id: Ic75de641182cfcfec2df71b57a982e1e63a52fe8
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoEnhanced protection against fence waiting buffers. 49/258549/1
Joonbum Ko [Tue, 18 May 2021 06:38:21 +0000 (15:38 +0900)]
Enhanced protection against fence waiting buffers.

 - timeout value up to 50ms.
 - Modified to guarantee until the waiting buffer
  completes the operation through surf_mutex.

Change-Id: If0fd6de234f5f79369dee23d9cddda9cd961f882
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoAdded surface_vblanks list for safe destroy. 48/258548/1
Joonbum Ko [Mon, 17 May 2021 07:23:49 +0000 (16:23 +0900)]
Added surface_vblanks list for safe destroy.

 - If an error occurs in tdm_client_display,
  it is a problem that cannot be recovered,
  but it should not affect rendering.
 - In this case, destroy tdm_client and stop using wait_vblank.
 - However, a problem occurs when accessing vblank after tdm_client_destroy.
 - Therefore, the created vblanks must be destroyed first and then
  destroy the tdm_client.
 - The added surface_vblanks list is to trace the created vblanks.

Change-Id: I3eae60842761dd6cda0042ff941e0f0736633b4c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoAdd tpl_surface_vblank_t to manage vblank object 47/258547/1
Joonbum Ko [Mon, 17 May 2021 05:37:14 +0000 (14:37 +0900)]
Add tpl_surface_vblank_t to manage vblank object

Change-Id: I56b54ccf7c22c9ef03c6973483ba1c0cb52b959d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoPackage version up to 1.8.7 17/258117/2 submit/tizen/20210511.063731
Joonbum Ko [Tue, 11 May 2021 02:06:01 +0000 (11:06 +0900)]
Package version up to 1.8.7

Change-Id: I7cc41929a6be41e85a6d7f205411217339cdeb6a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoFix to prevent thread conflict. 38/258138/1
Joonbum Ko [Tue, 11 May 2021 06:08:19 +0000 (15:08 +0900)]
Fix to prevent thread conflict.

Change-Id: I946bd6bce80a3e6188ff9e6c060abb7634a7e9b0
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoFix so that wl_buffer is not added to the listener with null. 16/258116/1
Joonbum Ko [Tue, 11 May 2021 02:05:26 +0000 (11:05 +0900)]
Fix so that wl_buffer is not added to the listener with null.

Change-Id: I346a97a4dcb3dfe11413919efacac1c904cfc096
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoPackage version up to 1.8.6 11/257811/1 accepted/tizen/unified/20210506.103530 submit/tizen/20210504.031804
Joonbum Ko [Mon, 3 May 2021 07:49:39 +0000 (16:49 +0900)]
Package version up to 1.8.6

Change-Id: I12bcd5b5c99b9a326697c1ea4f65d0c1c6f06269
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoFix wrong case checking to unreachable code. 10/257810/1
Joonbum Ko [Mon, 3 May 2021 07:48:35 +0000 (16:48 +0900)]
Fix wrong case checking to unreachable code.

Change-Id: Id5bc26ba2cb5eb9cdadae12d751750ae7d243a9e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoPackage version up to 1.8.5 37/257737/1
Joonbum Ko [Fri, 30 Apr 2021 06:36:33 +0000 (15:36 +0900)]
Package version up to 1.8.5

Change-Id: Ie10549ac47f7c15bc87ac8a80b3bd07d217c3a04
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoBack up the legacy codes of wl_vk_thread to unused. 36/257736/1
Joonbum Ko [Fri, 30 Apr 2021 06:27:54 +0000 (15:27 +0900)]
Back up the legacy codes of wl_vk_thread to unused.

Change-Id: Ie9276cd997b89be2f558306daaee3e3eb3738be9
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoFix a problem when explicit_fence was not used. 35/257735/1
Joonbum Ko [Fri, 30 Apr 2021 06:20:04 +0000 (15:20 +0900)]
Fix a problem when explicit_fence was not used.

 - Wayland error logs are printed due to attempt to add
  the buffer release listener in duplicate.

Change-Id: I1c5653ea3802a5a901cbf7fa07df73f0a822afaf
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoFix so that error log is not printed when tpl_display is reused. 34/257734/1
Joonbum Ko [Thu, 29 Apr 2021 01:48:11 +0000 (10:48 +0900)]
Fix so that error log is not printed when tpl_display is reused.

Change-Id: Iab3be64d490dd0e8592dc57d413877e37e107fa1
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoDisabled the codes that is not being used now. 33/257733/1
Joonbum Ko [Thu, 29 Apr 2021 01:45:53 +0000 (10:45 +0900)]
Disabled the codes that is not being used now.

Change-Id: I48424781d5f3c5edafa205da7963401b60daecef
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoMake vulkan only uses the thread backend. 32/257732/1
Joonbum Ko [Thu, 29 Apr 2021 01:44:19 +0000 (10:44 +0900)]
Make vulkan only uses the thread backend.

Change-Id: Ia6e693f04811edd4759ddd6fa322327227e6aa2e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoMake the prefix of backend APIs shorten 31/257731/1
Joonbum Ko [Tue, 27 Apr 2021 10:51:22 +0000 (19:51 +0900)]
Make the prefix of backend APIs shorten

Change-Id: I8ccfcd5402ad9071854f7ea69695a553fe9e213c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoChange some internal functions to static 30/257730/1
Joonbum Ko [Tue, 27 Apr 2021 10:46:09 +0000 (19:46 +0900)]
Change some internal functions to static

Change-Id: I11f1394a62ed6b1a2f19a01364c0aa9a6aded16f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoAdd set_post_interval to set commit interval 29/257729/1
Joonbum Ko [Tue, 27 Apr 2021 10:41:10 +0000 (19:41 +0900)]
Add set_post_interval to set commit interval

Change-Id: I1f531f4240662ccfe5afef643052e99a830ae4d6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoImplement buffer commit/release 28/257728/1
Joonbum Ko [Tue, 27 Apr 2021 06:22:56 +0000 (15:22 +0900)]
Implement buffer commit/release

Change-Id: I7f6685b20da489603e9661333420a09980f93182
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
3 years agoImplement DEQ/CANCEL/ACQ/ENQ buffer. 27/257727/1
Joonbum Ko [Mon, 26 Apr 2021 10:35:31 +0000 (19:35 +0900)]
Implement DEQ/CANCEL/ACQ/ENQ buffer.

Change-Id: If00f9b4e7c2aedefc9b20b76ac7abb99b6e6202d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>