summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
deasung.kim [Thu, 22 Sep 2016 03:40:09 +0000 (12:40 +0900)]
swapchain: added error handle in create swapchain
fix tbm_queue leak - it make segfault in tpl use worker thread model
tpl_surface_get_swapchain_buffers failed
mem alloc failed after tpl_surface_get_swapchain_buffers called
Change-Id: I834ac1bc138787665b87df1cb7f1418c19bf0b07
deasung.kim [Wed, 24 Aug 2016 08:09:13 +0000 (17:09 +0900)]
swapchin: change the usage of libtbm_sync api
remove tbm_sync objects and use fd
libtbm's sync related api is changed
reference : https://review.tizen.org/gerrit/#/c/85169/
Change-Id: I40264c04f48cb69f30f53ca8031126e3525b1aff
deasung.kim [Tue, 23 Aug 2016 07:30:37 +0000 (16:30 +0900)]
extension: remove duplicated extensions in vk_EnumerateDeviceExtensionProperties
Khronos Vulkan loader removes duplicated extension.
on previous implementation, if vk_EnumerateDeviceExtensionProperties call twice, then returned count is not same between first and second when the extensions has duplicate entry.
this patch eliminates duplicated extensions in vk_EnumerateDeviceExtensionProperties on vulkan-wsi-tizen's internal data structure.
Change-Id: Ie8cb66c45a626f46af040866737359cc046b18dc
deasung.kim [Thu, 21 Jul 2016 08:55:23 +0000 (17:55 +0900)]
swapchain: use tpl with sync
used new tpl funcs
tpl_surface_dequeue_buffer_with_sync
get sync_fd from tpl(release buffer) and set sync_fd to driver
tpl_surface_enqueue_buffer_with_damage_and_sync
get sync_fd from driver(draw done) and set sync_fd to tpl for use attach/commit
not use damage
Change-Id: I438f6b722ba6e6f33ca45e8ed1c6867efc200996
deasung.kim [Mon, 13 Jun 2016 03:35:35 +0000 (12:35 +0900)]
swapchain: fix swapchain image's extent depth value 1
from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html
31.4.1. Allowed Extent Values Based On Image Type
Change-Id: Iea73e5259a2d320d858bf7b7176f1ec99324a6e3
deasung.kim [Fri, 10 Jun 2016 05:48:39 +0000 (14:48 +0900)]
swapchain: fill ImageCreateInfo from SwapchainCreateInfo
Change-Id: I955df19a9428bf99d90eabb2d0663ed641ba9675
Gwan-gyeong Mun [Fri, 10 Jun 2016 05:44:25 +0000 (22:44 -0700)]
Merge "tri: inserted shader binary code for test convenience" into tizen
deasung.kim [Fri, 10 Jun 2016 03:48:14 +0000 (12:48 +0900)]
tri: inserted shader binary code for test convenience
Change-Id: I5bbadbb947765f472581abe922a26d036d3d2add
Taekyun Kim [Thu, 9 Jun 2016 12:27:06 +0000 (21:27 +0900)]
wsi: Support for various pixel formats
Change-Id: If2250033603c4185833b5405a62d2c2929afee59
Taekyun Kim [Thu, 9 Jun 2016 05:38:33 +0000 (14:38 +0900)]
samples: Skip checking shader clip distance device feature
Mali ICD currently does not support the required feature, so just
bypass it in order to make sample application run.
Change-Id: Iec17ed429463b1b0789d953803820fd721b176ff
Taekyun Kim [Thu, 9 Jun 2016 05:29:06 +0000 (14:29 +0900)]
swapchain: Fill out VkImageCreateInfo when creating presentable image
Expected value should be 1 for mip level, 1 for array layers and
VK_SAMPLE_COUNT_1_BIT for samples.
Change-Id: If2fee7fece3f7d6a10fc79bbb6b09462a9bf1f9f
Taekyun Kim [Tue, 7 Jun 2016 04:26:55 +0000 (13:26 +0900)]
build: Fix incorrect include header file for devel package
Change-Id: I72acefd6e300f8c124a5aaf429f0a23096d02f91
Taekyun Kim [Fri, 27 May 2016 05:49:19 +0000 (14:49 +0900)]
wsi: Better integration interface between WSI and ICD
Now, ICD provides functions required by WSI as vulkan extensions.
Those extensions might be exposed user if required in the future.
ICD should return the extension functions for all possible query
functions (vk_icdGetInstanceProcAddr and vkGetXXXProcAddress)
Change-Id: I776790598d8d5f3056e5b42c8defb388b8d30e3d
Taekyun Kim [Thu, 19 May 2016 08:18:44 +0000 (17:18 +0900)]
wsi: Refactoring to support display surface
Change-Id: I7be92c8251838995f618f961c9d595cbd77d19d9
Taekyun Kim [Thu, 19 May 2016 05:06:25 +0000 (14:06 +0900)]
utils: Add missing vk_container_of macro
Change-Id: I5dc389412a8a22098f994b29e281d8dde659f2bf
deasung.kim [Thu, 19 May 2016 05:00:03 +0000 (14:00 +0900)]
null-driver: added missing VK_EXPORT keyword
vk_signal_semaphore
vk_wait_for_semaphores
vk_signal_fence
Change-Id: Iefe018d26d3a2bfb23f334be487883d8e28a261f
Taekyun Kim [Wed, 18 May 2016 04:54:58 +0000 (13:54 +0900)]
wsi: Tizen vulkan WSI development header file documentation
Change-Id: Ie93558c3b0cc65a3e25d702347f1e5c0c8961207
Taekyun Kim [Thu, 12 May 2016 09:49:57 +0000 (18:49 +0900)]
swapchain: Wait semaphores before issueing present request
Change-Id: I5425a825df875365c399d34a12bd57c154a7c000
Taekyun Kim [Thu, 12 May 2016 09:48:45 +0000 (18:48 +0900)]
wsi: Use const qualifier for semaphores in vk_wait_for_semaphores()
Change-Id: I99c42eddee86aecf58b2fa315208299638682f24
Taekyun Kim [Thu, 12 May 2016 09:44:29 +0000 (18:44 +0900)]
swapchain: Signal fence and semaphore in vkAcquireNextImageKHR()
Users should wait for fence or semaphore to be signaled in order to
use the acquired VkImage. We signal them immediately because the
dequeued buffer is already ready to be used. Later, we can do some
kinda lazy signaling by returning buffer index immediately and signal
fence or semaphore when wl_buffer.release actually arrives.
Change-Id: I59c555f939834448ce4251552452c4a1bc54f26f
Taekyun Kim [Thu, 12 May 2016 09:35:46 +0000 (18:35 +0900)]
icd: Functions for calling vendor ICD semaphore and fence functions
Change-Id: Idd757bae2504cb5ba94808f12e9191270fb8b088
Taekyun Kim [Thu, 12 May 2016 09:33:22 +0000 (18:33 +0900)]
icd: Retreive semaphore and fence functions from ICD
Change-Id: I5ebcf66738c6f58f0b589d89dbdc0a52539e0056
Taekyun Kim [Thu, 12 May 2016 09:29:19 +0000 (18:29 +0900)]
null-driver: Implement functions required by vulkan-wsi-tizen.h
Change-Id: I134d19221eb73b609be1e25a34ffe9dcc5cb1097
Taekyun Kim [Thu, 12 May 2016 09:17:44 +0000 (18:17 +0900)]
wsi: Add function prototypes that vendors should provide
Change-Id: Ie19a4dd9924cf9273f58f490d56f2d71b11aaeae
Taekyun Kim [Thu, 12 May 2016 09:13:39 +0000 (18:13 +0900)]
null-driver: Fix type cast warning
Change-Id: I707d2552af61c4aa0778230d96e5cb3adfbbdd2c
Taekyun Kim [Tue, 10 May 2016 05:50:04 +0000 (14:50 +0900)]
wsi: Add devel package
Vendors should use devel package for their drivers to work correctly
with tizen vulkan WSI.
Change-Id: Ie4bcfc6ef6d771b8a286857fd423c4f1c1238c6c
Taekyun Kim [Mon, 18 Apr 2016 03:46:52 +0000 (12:46 +0900)]
entry-points: Fix func type of vkEnumerateInstanceExtensionProperties()
Change-Id: I308b64051edfabe41ebc7967d8aee5080d324779
deasung.kim [Sun, 24 Apr 2016 05:55:06 +0000 (14:55 +0900)]
surface: use tpl_display_query_supported_buffer_count_from_native_window
this patch depends on
https://review.tizen.org/gerrit/#/c/66840
Change-Id: If852d63bd0be788a8d21356d161de4b4a57d7177
Mun, Gwan-gyeong [Wed, 20 Apr 2016 13:17:48 +0000 (22:17 +0900)]
swapchain: remove temporal swapchain debugging code.
Change-Id: I455b3f7f1f91bd95f7369a4e98cb566c8dcec8dc
Sangjin Lee [Tue, 19 Apr 2016 04:44:35 +0000 (21:44 -0700)]
Merge "null-driver: add include stdio.h for debugging of null driver." into tizen
Sangjin Lee [Tue, 19 Apr 2016 04:44:24 +0000 (21:44 -0700)]
Merge changes Id53d17c1,Ica6c0627,I124d9940 into tizen
* changes:
etc: Fix int to pointer typecasting build warnings
swapchain: add debug info code for SwapChain's VkImage. Later we should remove or revert this code / commit
samples: change tri sample's window size
Mun, Gwan-gyeong [Mon, 18 Apr 2016 11:46:18 +0000 (20:46 +0900)]
null-driver: add include stdio.h for debugging of null driver.
Change-Id: Ib347462632b72f09fbf99a306cfae6c32d81f0b0
Mun, Gwan-gyeong [Mon, 18 Apr 2016 11:15:36 +0000 (20:15 +0900)]
etc: Fix int to pointer typecasting build warnings
This is a bug from the khronos vulkan header file. It is scheduled to be resolved in
milestone "P1". See the following issue page.
https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/36
When we use typecasting to pointer type, we should use uintptr_t type. it provides
safe pointer typecasting on 32bit and 64bit. We can revert this commit when the
above issue is resolved.
Change-Id: Id53d17c13c0dafc341889875140469c0f2943e67
Mun, Gwan-gyeong [Mon, 18 Apr 2016 11:30:12 +0000 (20:30 +0900)]
swapchain: add debug info code for SwapChain's VkImage. Later we should remove or revert this code / commit
Change-Id: Ica6c0627e3692206ca2b29152fbe7e4923e9d57d
Mun, Gwan-gyeong [Mon, 18 Apr 2016 11:24:56 +0000 (20:24 +0900)]
samples: change tri sample's window size
Change-Id: I124d9940f52cf0f9461b463230d1a4ed9c523fe1
Taekyun Kim [Tue, 19 Apr 2016 01:17:46 +0000 (10:17 +0900)]
etc: Add vulkaninfo into .gitignore
Change-Id: Idaf6dab972acd80bdf7b8b7a8a39fb5c94015c7a
deasung.kim [Mon, 18 Apr 2016 04:30:06 +0000 (13:30 +0900)]
create samples package for test
added tri/vulkaninfo/null-driver.so
Change-Id: I8aa4b7f6dd7ac43e3e5a100e190938001f6f5aae
deasung.kim [Fri, 15 Apr 2016 04:35:20 +0000 (13:35 +0900)]
surface: use vk_get_tpl_display instead of tpl_display_get
Change-Id: I01213f16f87a11d1ebdd9d2b9e8fe85e8b68b421
deasung.kim [Fri, 15 Apr 2016 04:28:51 +0000 (13:28 +0900)]
swapchain: use vk_get_tpl_display instead of tpl_display_get
Change-Id: Ibab72b44e30b760b9c662fa048fd0149df4d3a06
deasung.kim [Fri, 15 Apr 2016 04:25:05 +0000 (13:25 +0900)]
wsi: added func vk_get_tpl_display
if tpl_display_create failed
try tpl_display_get
Change-Id: Ifb9add6c216b6eb3ad0d48efcb929c14d8b69338
deasung.kim [Fri, 15 Apr 2016 03:23:42 +0000 (12:23 +0900)]
icd: added load symbol icd.create_presentable_image
Change-Id: I270ed969e9bb626ec884db48bf7c3cbd15cbbb4a
deasung.kim [Fri, 15 Apr 2016 03:21:47 +0000 (12:21 +0900)]
swapchain: fix missing assign tbm buffer count
Change-Id: I3e2881cf12eb012aa813890ac73bb51eb708282a
Taekyun Kim [Thu, 14 Apr 2016 07:52:19 +0000 (16:52 +0900)]
swapchain: Create VkImage using ICD provided function
Change-Id: I240be8b23ae05b31718528a21befb2d85c4c1ba6
Taekyun Kim [Thu, 14 Apr 2016 07:51:41 +0000 (16:51 +0900)]
icd: Function for creating VkImage from tbm_surface_h
Change-Id: I529f40f510e13f35574f7a922a3764e7a526a42b
Taekyun Kim [Thu, 14 Apr 2016 07:34:02 +0000 (16:34 +0900)]
icd: Dedicated files for manipulating vendor ICD
Change-Id: Icc2498e31047aeac2a67c5527b79d5b24cd9fb20
Taekyun Kim [Thu, 14 Apr 2016 07:17:03 +0000 (16:17 +0900)]
swapchain: Initialize swapchain buffers at creation time
Counldn't find any clue that vkGetSwapchainImagesKHR() should be
called prior to vkAcquireNextImageKHR().
Change-Id: I503c84aea91fb3b72c3b13a02f9185d656fb5e40
Taekyun Kim [Thu, 14 Apr 2016 06:54:02 +0000 (15:54 +0900)]
surface: swapchain: WSI do not need to implement surface create/destroy
vkCreate*SurfaceKHR/vkDestroySurfaceKHR are implemented in the vulkan
loader. Implementing swapchain functions would be enough.
Change-Id: Ic27ed8d513ebb45c106794e3db2c4f243a058151
Taekyun Kim [Thu, 14 Apr 2016 06:51:52 +0000 (15:51 +0900)]
common: Make wayland platform default
Change-Id: Ib5cf5fc81c95bdb026307fa81d2598178b7a86ca
deasung.kim [Tue, 12 Apr 2016 09:11:17 +0000 (18:11 +0900)]
sample: added tri/vulkan info from Vulkan Loader
tri change xcb call to wayland call
Change-Id: I09900ddf094233f006c9f1529591a5031f4a511e
Taekyun Kim [Tue, 12 Apr 2016 14:11:30 +0000 (23:11 +0900)]
entry-points: Merge extensions from ICD and WSI
Change-Id: Ib1c4182c6b6d85ec0a02f055b552b0dd8ad2a88e
deasung.kim [Tue, 12 Apr 2016 09:11:17 +0000 (18:11 +0900)]
gbsbuild: enabled wayland option
Change-Id: I901bf0a9a92252863847aa811ad7e4ceec94a89e
Taekyun Kim [Tue, 12 Apr 2016 09:25:41 +0000 (18:25 +0900)]
swapchain: Code clean up
Change-Id: I6112b6b23c0acaef2a85f42304064d57f5d00f49
deasung.kim [Tue, 12 Apr 2016 09:43:15 +0000 (18:43 +0900)]
wsi: added missing lib dependency
added libtpl
Change-Id: I1d5883eb8672b82a4d970f328ae2b9a5b73049d6
Taekyun Kim [Tue, 12 Apr 2016 07:43:30 +0000 (16:43 +0900)]
surface: Fix build error and some clean up
Change-Id: I1e56f5f8273ddc222aa0855c60a824f3bea8a44e
deasung.kim [Mon, 11 Apr 2016 12:12:26 +0000 (21:12 +0900)]
swapchain: Basic swapchain implementation using TPL
Change-Id: I9ac0642ffae0ef5492d4afa74bdbd66ea2f307f3
deasung.kim [Mon, 11 Apr 2016 11:02:09 +0000 (20:02 +0900)]
surface: Basic wayland surface implementation using TPL
Change-Id: If431c2dd2c7b8862e7b0d40611773bb0453f811e
Taekyun Kim [Tue, 12 Apr 2016 06:27:14 +0000 (15:27 +0900)]
null-driver: Function for creating presentable images
ICD is responsible for creating VkImage which is used for
presentation in the swapchain. WSI will dlsym the function and
call it to create swapchain images.
Change-Id: Ieacb603ec69b509e3651a46068333001d503ec12
Taekyun Kim [Mon, 11 Apr 2016 11:32:56 +0000 (20:32 +0900)]
etc: Add sample executables in .gitignore
Change-Id: Icfe5b421e88beb8ce097eea650b9ab0eb1d86b25
Taekyun Kim [Mon, 11 Apr 2016 10:24:54 +0000 (19:24 +0900)]
surface: Temporary workaround for surface features
In order to run demo applications, there should be at least one available
supported surface format and present mode.
Change-Id: If99769a67492aeaf91d1fdfedb0da84fadb53705
Taekyun Kim [Mon, 11 Apr 2016 10:19:58 +0000 (19:19 +0900)]
null-driver: Turn on all the features
Null driver can do everything!!!
Change-Id: Ia00b4649de8f368b905ecf12b08a876ce63a2723
Taekyun Kim [Mon, 11 Apr 2016 10:08:51 +0000 (19:08 +0900)]
entry-points: Hook GetInstanceProcAddr()/GetDeviceProcAddr()
Any vulkan function that WSI has its implementation should not be called
directly by the vulkan loader or application. WSI implementation shoud call
ICD functions in that case.
Change-Id: Ibd4e43fafe3db20467abcd93dc883d0afcc89637
Taekyun Kim [Mon, 11 Apr 2016 08:01:34 +0000 (17:01 +0900)]
surface: Basic surface implementation
Just simple memory allocation and initialization
Change-Id: I00966409bc83d0f8e8d5d0b611fa77214a5f0d8c
Taekyun Kim [Mon, 11 Apr 2016 07:46:05 +0000 (16:46 +0900)]
wsi: Basic memory allocation functions
In vulkan, users can give custom host memory allocation functions. In order
to handle this specification correctly, we should be able to know allocator
of an ICD object. (such as VkInstance, VkDevice, ...) To achieve this, ICD
can provide access functions for the allocator or WSI should track
creation/destruction of required vulkan objects. At this time, we simply
ignore user provided allocator and just use standard system allocation
functions from libc.
Change-Id: Ic75050e2a3f8ebc71737b7f83b87aaff451d0b2d
Taekyun Kim [Mon, 11 Apr 2016 07:17:35 +0000 (16:17 +0900)]
wsi: Load ICD and dispatch ICD functions
Return ICD functions in vk_icdGetInstanceProcAddr() if there's no our
implementation for that name.
Change-Id: I5297f2bf9c6d7ffbf272b8e33c63b394b2dfd23d
Taekyun Kim [Mon, 11 Apr 2016 06:54:53 +0000 (15:54 +0900)]
wsi: WSI entry points
Now vk_icdGetInstanceProcAddr() returns function pointers to the WSI entry
points. WSI entry points are grouped into 3 categories surface, swapchain
and display.
Change-Id: I2db401a4c872aad003df5a10f0100d373539d327
Taekyun Kim [Mon, 11 Apr 2016 05:09:09 +0000 (14:09 +0900)]
null-driver: Fix vk_icdGetInstanceProcAddr() to return all vulkan commands
Change-Id: I6c4d57537fc27b35a6d2f05ee491d47da1663571
Taekyun Kim [Mon, 11 Apr 2016 05:06:12 +0000 (14:06 +0900)]
null-driver: Build as a module and change default visibility to hidden
Change-Id: I8ecef206d210938a0a33409e4c73ff7faf863aaa
Taekyun Kim [Fri, 8 Apr 2016 10:44:50 +0000 (19:44 +0900)]
samples: tri.c from khronos loader tests
Change-Id: I9694c98d6b01aa1188fb06ad2ed6178f85b00c37
Taekyun Kim [Mon, 11 Apr 2016 04:55:46 +0000 (13:55 +0900)]
common: Update vulkan include headers
Change-Id: I9a197b86e00a656d1dcf3989c9fd3edf27193396
Taekyun Kim [Mon, 11 Apr 2016 04:57:19 +0000 (13:57 +0900)]
build: Correctly configure pkg-config
Change-Id: Ibaf3b272ea2738b2472a7c410bf86336856252f6
Taekyun Kim [Thu, 7 Apr 2016 12:19:42 +0000 (21:19 +0900)]
utils: Do deep copy for the map key
Change-Id: I2a842fe61d3ae02ef2d5a2745287b4bd97808d87
Taekyun Kim [Mon, 4 Apr 2016 07:41:25 +0000 (16:41 +0900)]
wsi: Change default visibility to hidden
Only vk_icdGetInstanceProcAddr() should be exposed
Change-Id: I95a37bea57723e965475be9c8f9fc5b11846b4b4
Taekyun Kim [Thu, 31 Mar 2016 10:33:02 +0000 (19:33 +0900)]
wsi: Empty WSI entry point functions
Vulkan loader interfacing functions has moved to loader.c
wsi.c should contain WSI related implementations only.
Loading ICD and dispatch function for the vulkan loader should go into
the loader.c
Change-Id: Iacf09028b336f5575041ef9392ff9c7bac24261a
Taekyun Kim [Thu, 31 Mar 2016 10:03:42 +0000 (19:03 +0900)]
utils: hash table
Code taken from tizen pepper library.
Change-Id: Id6106669af3c3c10163ed655d2832ad35a9a9fbc
Taekyun Kim [Thu, 31 Mar 2016 09:36:45 +0000 (18:36 +0900)]
utils: linked list
Standard doubly linked list which is similar in usage with libwayland.
Change-Id: I0656aba508dff09d9e48fcc9fc539c17b1b8b180
Taekyun Kim [Thu, 31 Mar 2016 06:41:33 +0000 (15:41 +0900)]
utils: Add boolean variable type
Use vk_bool_t and VK_TRUE/FALSE for boolean variables.
Change-Id: Ia3039c0a556053ece14b84357a8d3284df2818e0
Mun, Gwan-gyeong [Tue, 29 Mar 2016 13:59:01 +0000 (22:59 +0900)]
Add MIT License file.
Modify spec file for installing license files.
Change-Id: Ida19907e299b6fddbb35d667738bb278ccb49456
Taekyun Kim [Tue, 29 Mar 2016 07:32:31 +0000 (16:32 +0900)]
common: Add basic build & source files
src/null-driver : null-driver for test
src/utils : utility funcs and data structures
src/wsi : tizen vulkan wsi module
Change-Id: I4a8d8f88d4cbd0811b6bcee7fdb73536f604812c
JeongHoon Jeon [Mon, 28 Mar 2016 10:16:39 +0000 (19:16 +0900)]
Initial empty repository