platform/core/uifw/vulkan-wsi-tizen.git
8 years agoswapchain: remove temporal swapchain debugging code. 29/66729/1
Mun, Gwan-gyeong [Wed, 20 Apr 2016 13:17:48 +0000 (22:17 +0900)]
swapchain: remove temporal swapchain debugging code.

Change-Id: I455b3f7f1f91bd95f7369a4e98cb566c8dcec8dc

8 years agoMerge "null-driver: add include stdio.h for debugging of null driver." into tizen
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

8 years agoMerge changes Id53d17c1,Ica6c0627,I124d9940 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

8 years agonull-driver: add include stdio.h for debugging of null driver. 74/66374/3
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

8 years agoetc: Fix int to pointer typecasting build warnings 73/66373/4
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

8 years agoswapchain: add debug info code for SwapChain's VkImage. Later we should remove or... 72/66372/2
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

8 years agosamples: change tri sample's window size 71/66371/2
Mun, Gwan-gyeong [Mon, 18 Apr 2016 11:24:56 +0000 (20:24 +0900)]
samples: change tri sample's window size

Change-Id: I124d9940f52cf0f9461b463230d1a4ed9c523fe1

8 years agoetc: Add vulkaninfo into .gitignore 16/66416/1
Taekyun Kim [Tue, 19 Apr 2016 01:17:46 +0000 (10:17 +0900)]
etc: Add vulkaninfo into .gitignore

Change-Id: Idaf6dab972acd80bdf7b8b7a8a39fb5c94015c7a

8 years agocreate samples package for test 95/66295/1
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

8 years agosurface: use vk_get_tpl_display instead of tpl_display_get 42/66242/1
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

8 years agoswapchain: use vk_get_tpl_display instead of tpl_display_get 41/66241/1
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

8 years agowsi: added func vk_get_tpl_display 66/66066/1
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

8 years agoicd: added load symbol icd.create_presentable_image 65/66065/1
deasung.kim [Fri, 15 Apr 2016 03:23:42 +0000 (12:23 +0900)]
icd: added load symbol icd.create_presentable_image

Change-Id: I270ed969e9bb626ec884db48bf7c3cbd15cbbb4a

8 years agoswapchain: fix missing assign tbm buffer count 64/66064/1
deasung.kim [Fri, 15 Apr 2016 03:21:47 +0000 (12:21 +0900)]
swapchain: fix missing assign tbm buffer count

Change-Id: I3e2881cf12eb012aa813890ac73bb51eb708282a

8 years agoswapchain: Create VkImage using ICD provided function 63/66063/1
Taekyun Kim [Thu, 14 Apr 2016 07:52:19 +0000 (16:52 +0900)]
swapchain: Create VkImage using ICD provided function

Change-Id: I240be8b23ae05b31718528a21befb2d85c4c1ba6

8 years agoicd: Function for creating VkImage from tbm_surface_h 62/66062/1
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

8 years agoicd: Dedicated files for manipulating vendor ICD 61/66061/1
Taekyun Kim [Thu, 14 Apr 2016 07:34:02 +0000 (16:34 +0900)]
icd: Dedicated files for manipulating vendor ICD

Change-Id: Icc2498e31047aeac2a67c5527b79d5b24cd9fb20

8 years agoswapchain: Initialize swapchain buffers at creation time 60/66060/1
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

8 years agosurface: swapchain: WSI do not need to implement surface create/destroy 59/66059/1
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

8 years agocommon: Make wayland platform default 58/66058/1
Taekyun Kim [Thu, 14 Apr 2016 06:51:52 +0000 (15:51 +0900)]
common: Make wayland platform default

Change-Id: Ib5cf5fc81c95bdb026307fa81d2598178b7a86ca

8 years agosample: added tri/vulkan info from Vulkan Loader 57/66057/1
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

8 years agoentry-points: Merge extensions from ICD and WSI 56/66056/1
Taekyun Kim [Tue, 12 Apr 2016 14:11:30 +0000 (23:11 +0900)]
entry-points: Merge extensions from ICD and WSI

Change-Id: Ib1c4182c6b6d85ec0a02f055b552b0dd8ad2a88e

8 years agogbsbuild: enabled wayland option 55/66055/1
deasung.kim [Tue, 12 Apr 2016 09:11:17 +0000 (18:11 +0900)]
gbsbuild: enabled wayland option

Change-Id: I901bf0a9a92252863847aa811ad7e4ceec94a89e

8 years agoswapchain: Code clean up 54/66054/1
Taekyun Kim [Tue, 12 Apr 2016 09:25:41 +0000 (18:25 +0900)]
swapchain: Code clean up

Change-Id: I6112b6b23c0acaef2a85f42304064d57f5d00f49

8 years agowsi: added missing lib dependency 53/66053/1
deasung.kim [Tue, 12 Apr 2016 09:43:15 +0000 (18:43 +0900)]
wsi: added missing lib dependency

added libtpl

Change-Id: I1d5883eb8672b82a4d970f328ae2b9a5b73049d6

8 years agosurface: Fix build error and some clean up 52/66052/1
Taekyun Kim [Tue, 12 Apr 2016 07:43:30 +0000 (16:43 +0900)]
surface: Fix build error and some clean up

Change-Id: I1e56f5f8273ddc222aa0855c60a824f3bea8a44e

8 years agoswapchain: Basic swapchain implementation using TPL 51/66051/1
deasung.kim [Mon, 11 Apr 2016 12:12:26 +0000 (21:12 +0900)]
swapchain: Basic swapchain implementation using TPL

Change-Id: I9ac0642ffae0ef5492d4afa74bdbd66ea2f307f3

8 years agosurface: Basic wayland surface implementation using TPL 50/66050/1
deasung.kim [Mon, 11 Apr 2016 11:02:09 +0000 (20:02 +0900)]
surface: Basic wayland surface implementation using TPL

Change-Id: If431c2dd2c7b8862e7b0d40611773bb0453f811e

8 years agonull-driver: Function for creating presentable images 56/65756/1
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

8 years agoetc: Add sample executables in .gitignore 91/65691/1
Taekyun Kim [Mon, 11 Apr 2016 11:32:56 +0000 (20:32 +0900)]
etc: Add sample executables in .gitignore

Change-Id: Icfe5b421e88beb8ce097eea650b9ab0eb1d86b25

8 years agosurface: Temporary workaround for surface features 90/65690/1
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

8 years agonull-driver: Turn on all the features 89/65689/1
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

8 years agoentry-points: Hook GetInstanceProcAddr()/GetDeviceProcAddr() 88/65688/1
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

8 years agosurface: Basic surface implementation 87/65687/1
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

8 years agowsi: Basic memory allocation functions 86/65686/1
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

8 years agowsi: Load ICD and dispatch ICD functions 85/65685/1
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

8 years agowsi: WSI entry points 84/65684/1
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

8 years agonull-driver: Fix vk_icdGetInstanceProcAddr() to return all vulkan commands 83/65683/1
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

8 years agonull-driver: Build as a module and change default visibility to hidden 82/65682/1
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

8 years agosamples: tri.c from khronos loader tests 81/65681/1
Taekyun Kim [Fri, 8 Apr 2016 10:44:50 +0000 (19:44 +0900)]
samples: tri.c from khronos loader tests

Change-Id: I9694c98d6b01aa1188fb06ad2ed6178f85b00c37

8 years agocommon: Update vulkan include headers 80/65680/1
Taekyun Kim [Mon, 11 Apr 2016 04:55:46 +0000 (13:55 +0900)]
common: Update vulkan include headers

Change-Id: I9a197b86e00a656d1dcf3989c9fd3edf27193396

8 years agobuild: Correctly configure pkg-config 79/65679/1
Taekyun Kim [Mon, 11 Apr 2016 04:57:19 +0000 (13:57 +0900)]
build: Correctly configure pkg-config

Change-Id: Ibaf3b272ea2738b2472a7c410bf86336856252f6

8 years agoutils: Do deep copy for the map key 78/65678/1
Taekyun Kim [Thu, 7 Apr 2016 12:19:42 +0000 (21:19 +0900)]
utils: Do deep copy for the map key

Change-Id: I2a842fe61d3ae02ef2d5a2745287b4bd97808d87

8 years agowsi: Change default visibility to hidden 77/65677/1
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

8 years agowsi: Empty WSI entry point functions 76/65676/1
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

8 years agoutils: hash table 75/65675/1
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

8 years agoutils: linked list 74/65674/1
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

8 years agoutils: Add boolean variable type 73/65673/1
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

8 years agoAdd MIT License file.
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

8 years agocommon: Add basic build & source files
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

8 years agoInitial empty repository
JeongHoon Jeon [Mon, 28 Mar 2016 10:16:39 +0000 (19:16 +0900)]
Initial empty repository