platform/upstream/Vulkan-Tools.git
9 years agoMake the Dbg xgl global calls use dispatch table for layer support
Jon Ashburn [Fri, 14 Nov 2014 16:52:42 +0000 (09:52 -0700)]
Make the Dbg xgl global calls  use dispatch table for layer support

xglDbgRegisterMsgCallbacks, xglDbgUnregisterMsgCallbacks,
xglDbgSetGlobalOptions  dispatched via dispatch table so layers can
intercept these calls.  Also add support for these calls being dispatched
to different icd functions based on gpu  for icd's which may want different
functions per gpu.

9 years agolayers: Update ObjTracker to track each object type separately and report obj count...
Tobin Ehlis [Thu, 13 Nov 2014 20:31:10 +0000 (13:31 -0700)]
layers: Update ObjTracker to track each object type separately and report obj count status

9 years agolayers: Correctly set generic_layer.c as generated in CMakeLists.txt
Tobin Ehlis [Wed, 12 Nov 2014 23:02:46 +0000 (16:02 -0700)]
layers: Correctly set generic_layer.c as generated in CMakeLists.txt

9 years agolayers: Include print helper file dependencies for MemTracker and DrawState layers
Tobin Ehlis [Wed, 12 Nov 2014 22:21:03 +0000 (15:21 -0700)]
layers: Include print helper file dependencies for MemTracker and DrawState layers

9 years agolayers: Make APIDumpFile layer fully generated
Tobin Ehlis [Wed, 12 Nov 2014 20:11:15 +0000 (13:11 -0700)]
layers: Make APIDumpFile layer fully generated

9 years agolayers: Use xgl-layer-generate.py to generate the generic layer
Tobin Ehlis [Wed, 12 Nov 2014 18:47:07 +0000 (11:47 -0700)]
layers: Use xgl-layer-generate.py to generate the generic layer

9 years agolayers: Updated APIDump Layer and made it fully generated.
Tobin Ehlis [Wed, 12 Nov 2014 00:28:22 +0000 (17:28 -0700)]
layers: Updated APIDump Layer and made it fully generated.

9 years agolayers: Improve handling of printing embedded structs in generated string helper...
Tobin Ehlis [Tue, 11 Nov 2014 19:28:12 +0000 (12:28 -0700)]
layers: Improve handling of printing embedded structs in generated string helper functions.

9 years agolayers: Restore dynamic malloc fix in xgl-helper.py
Tobin Ehlis [Tue, 11 Nov 2014 15:00:58 +0000 (08:00 -0700)]
layers: Restore dynamic malloc fix in xgl-helper.py

9 years agolayers: Update xglWsiX11GetMSC interface in layers
Tobin Ehlis [Tue, 11 Nov 2014 15:00:58 +0000 (08:00 -0700)]
layers: Update xglWsiX11GetMSC interface in layers

9 years agolayers: Actual auto-gen of print helper code used by layers
Tobin Ehlis [Mon, 10 Nov 2014 23:03:19 +0000 (16:03 -0700)]
layers: Actual auto-gen of print helper code used by layers

9 years agoupdate to the latest vertex fetch proposal
Chia-I Wu [Sat, 8 Nov 2014 02:48:20 +0000 (10:48 +0800)]
update to the latest vertex fetch proposal

The main difference is that XGL_SLOT_VERTEX_INPUT is replaced by
xglCmdBindVertexData.  This actually simplifies the driver, which can be seen
with:

 $ git show icd/intel/

The new proposal also adds some new formats, but they are ignored for now
because they are marked TBD.

9 years agodemos: add a fence for presentation
Chia-I Wu [Fri, 7 Nov 2014 06:30:34 +0000 (14:30 +0800)]
demos: add a fence for presentation

After xglWsiX11QueuePresent(), the image is scheduled for copying.  We should
not render to it until the copying is done.  Otherwise, depending on how the
DDX works, flickering or GPU hangs may be expected.

Add and wait on the fence before submitting the command buffer.  This ensures
the DDX is done with the image.   Set async to true to run as fast as
possible.

9 years agowsi_x11: add xcb_window_t to xglWsiX11GetMSC()
Chia-I Wu [Fri, 7 Nov 2014 05:33:45 +0000 (13:33 +0800)]
wsi_x11: add xcb_window_t to xglWsiX11GetMSC()

To match XGL_WSI_X11_PRESENT_INFO and allow xcb_crtc_id to be XCB_NONE.

9 years agoAdded u_popcount to abstract __builtin_popcount.
GregF [Tue, 11 Nov 2014 00:26:41 +0000 (17:26 -0700)]
Added u_popcount to abstract __builtin_popcount.

9 years agolayers: Added APIFileDump and MemTracker layers and fix DrawState
Tobin Ehlis [Mon, 10 Nov 2014 19:29:12 +0000 (12:29 -0700)]
layers: Added APIFileDump and MemTracker layers and fix DrawState

9 years agolayers: Fix memory overrun issue causing segfault.
Courtney Goeltzenleuchter [Mon, 10 Nov 2014 18:21:04 +0000 (11:21 -0700)]
layers: Fix memory overrun issue causing segfault.

10 years agoMisc. cleanup
Courtney Goeltzenleuchter [Mon, 3 Nov 2014 01:50:52 +0000 (18:50 -0700)]
Misc. cleanup

10 years agoUpdate Intel Driver README
JensOwen [Sat, 1 Nov 2014 20:05:50 +0000 (14:05 -0600)]
Update Intel Driver README

Update Intel Driver README and add a specific README for the compiler

10 years agoformatting
JensOwen [Sat, 1 Nov 2014 19:19:54 +0000 (13:19 -0600)]
formatting

10 years agofix build instructions
JensOwen [Sat, 1 Nov 2014 19:18:21 +0000 (13:18 -0600)]
fix build instructions

10 years agofix formatting
JensOwen [Sat, 1 Nov 2014 19:11:50 +0000 (13:11 -0600)]
fix formatting

10 years agoBuild Direction
JensOwen [Sat, 1 Nov 2014 19:05:43 +0000 (13:05 -0600)]
Build Direction

add link in top level readme to build info, and put a place holder in
for demo/readme

10 years agoTest removal of newlines
JensOwen [Sat, 1 Nov 2014 18:21:06 +0000 (12:21 -0600)]
Test removal of newlines

10 years agofixed typo
JensOwen [Sat, 1 Nov 2014 15:39:46 +0000 (09:39 -0600)]
fixed typo

10 years agofixed typos
JensOwen [Sat, 1 Nov 2014 15:37:13 +0000 (09:37 -0600)]
fixed typos

10 years agov 0.2
JensOwen [Sat, 1 Nov 2014 15:28:29 +0000 (09:28 -0600)]
v 0.2

First Pass at Version 0.2 Readme

10 years agoxgl: Update to current BIL/glslang/LunarGLASS
Courtney Goeltzenleuchter [Fri, 31 Oct 2014 20:12:25 +0000 (14:12 -0600)]
xgl: Update to current BIL/glslang/LunarGLASS

10 years agoDocument build dependencies and demos
Mike Stroyan [Thu, 30 Oct 2014 21:59:54 +0000 (15:59 -0600)]
Document build dependencies and demos

10 years agodemos: Cube: Read shaders from external BIL binary files
Courtney Goeltzenleuchter [Thu, 30 Oct 2014 21:14:16 +0000 (15:14 -0600)]
demos: Cube: Read shaders from external BIL binary files

Added function to read binary BIL files into memory.
When EXTERNAL_BIL is defined, the demo will use BIL binaries.
Otherwise, it uses the built-in driver GLSL compiler.

10 years agodemos: Add shader source files for cube demo
Courtney Goeltzenleuchter [Thu, 30 Oct 2014 16:07:20 +0000 (10:07 -0600)]
demos: Add shader source files for cube demo

10 years agodemos: Add LunarG logo with transparent background
Courtney Goeltzenleuchter [Thu, 30 Oct 2014 16:06:45 +0000 (10:06 -0600)]
demos: Add LunarG logo with transparent background

10 years agodemos: Cube: Make it spin
Courtney Goeltzenleuchter [Wed, 29 Oct 2014 14:29:35 +0000 (08:29 -0600)]
demos: Cube: Make it spin

10 years agodemos: Add LunarG logo texture file.
Courtney Goeltzenleuchter [Wed, 29 Oct 2014 22:25:34 +0000 (16:25 -0600)]
demos: Add LunarG logo texture file.

10 years agodemos: Use png library to read texture from file
Courtney Goeltzenleuchter [Wed, 29 Oct 2014 21:59:49 +0000 (15:59 -0600)]
demos: Use png library to read texture from file

10 years agodemos: Add spinning cube demo with texture
Courtney Goeltzenleuchter [Tue, 28 Oct 2014 20:50:30 +0000 (14:50 -0600)]
demos: Add spinning cube demo with texture

10 years agodemos: Add cube demo
Courtney Goeltzenleuchter [Tue, 28 Oct 2014 16:32:57 +0000 (10:32 -0600)]
demos: Add cube demo

10 years agodemos: Add matrix math "library"
Courtney Goeltzenleuchter [Tue, 28 Oct 2014 16:27:47 +0000 (10:27 -0600)]
demos: Add matrix math "library"

10 years agodemos: Add spinning cube demo
Courtney Goeltzenleuchter [Thu, 23 Oct 2014 19:16:59 +0000 (13:16 -0600)]
demos: Add spinning cube demo

10 years agoxgl: Update to specific version of external libraries
Courtney Goeltzenleuchter [Wed, 29 Oct 2014 23:50:15 +0000 (17:50 -0600)]
xgl: Update to specific version of external libraries

As the BIL spec is rapidly changing, we will explicitly
check out the working version at the time the driver
was tested. Need to update the REVISION values in
the update_external_sources.sh to update to later versions
of BIL.

10 years agodemos/tri: make it prettier
Chia-I Wu [Sat, 25 Oct 2014 04:47:33 +0000 (12:47 +0800)]
demos/tri: make it prettier

And easier to see what the demo does.

10 years agodemos/tri: use xglCmdClear*
Chia-I Wu [Sat, 25 Oct 2014 04:40:28 +0000 (12:40 +0800)]
demos/tri: use xglCmdClear*

The demo was written before xglCmdClear* was supported.  We should be fine
now.

10 years agodemos/tri: fix the shaders
Chia-I Wu [Sat, 25 Oct 2014 04:11:27 +0000 (12:11 +0800)]
demos/tri: fix the shaders

The GLSL code was apparently copy-and-pasted from some other test when the
hardcoded shaders were replaced.  It was not supposed to work.

10 years agomisc: Exit update script on error
Courtney Goeltzenleuchter [Fri, 24 Oct 2014 20:37:18 +0000 (14:37 -0600)]
misc: Exit update script on error

10 years agodemo: tri - only need version 130 for this shader
Courtney Goeltzenleuchter [Thu, 23 Oct 2014 21:16:07 +0000 (15:16 -0600)]
demo: tri - only need version 130 for this shader

10 years agodemos: Convert shader to GLSL
Courtney Goeltzenleuchter [Mon, 13 Oct 2014 23:51:58 +0000 (17:51 -0600)]
demos: Convert shader to GLSL

10 years agodemos/tri: enable FF vertex fetch
Chia-I Wu [Wed, 8 Oct 2014 04:14:39 +0000 (12:14 +0800)]
demos/tri: enable FF vertex fetch

10 years agodemos/tri: allocate depth buffer
Chia-I Wu [Tue, 7 Oct 2014 06:15:01 +0000 (14:15 +0800)]
demos/tri: allocate depth buffer

And enable depth test with XGL_COMPARE_GREATER.

10 years agodemos/tri: allocate vertex buffer
Chia-I Wu [Wed, 8 Oct 2014 03:52:22 +0000 (11:52 +0800)]
demos/tri: allocate vertex buffer

10 years agodemos/tri: allocate textures
Chia-I Wu [Mon, 6 Oct 2014 07:30:33 +0000 (15:30 +0800)]
demos/tri: allocate textures

10 years agodemos: Add gen7 ISA to tri demo
Courtney Goeltzenleuchter [Wed, 17 Sep 2014 19:17:12 +0000 (13:17 -0600)]
demos: Add gen7 ISA to tri demo

10 years agodemos: add tri
Chia-I Wu [Sat, 13 Sep 2014 03:12:55 +0000 (11:12 +0800)]
demos: add tri

10 years agotools: utility script to create and update external sources
Courtney Goeltzenleuchter [Sat, 18 Oct 2014 00:21:42 +0000 (18:21 -0600)]
tools: utility script to create and update external sources

10 years agointel: Support GLSL compiling in less intrusive way
Courtney Goeltzenleuchter [Fri, 10 Oct 2014 22:29:46 +0000 (16:29 -0600)]
intel: Support GLSL compiling in less intrusive way

Removed all the extension semantics. Support for compiling GLSL in the
driver is intended to be a tempory feature and these changes minimize
the impact on the driver and make it easier to remove in the future.

10 years agointel: Add shader structure for GLSL compile extension
Courtney Goeltzenleuchter [Mon, 6 Oct 2014 18:44:03 +0000 (12:44 -0600)]
intel: Add shader structure for GLSL compile extension

10 years agocheckpoint: Adding GLSL compiler extension
Courtney Goeltzenleuchter [Sat, 4 Oct 2014 00:05:10 +0000 (18:05 -0600)]
checkpoint: Adding GLSL compiler extension

10 years agocmake: Lift common glslang definitions up to main CMakeLists
Courtney Goeltzenleuchter [Fri, 3 Oct 2014 21:34:53 +0000 (15:34 -0600)]
cmake: Lift common glslang definitions up to main CMakeLists

10 years agocompiler: C linkage for icd alloc and free
Cody Northrop [Thu, 25 Sep 2014 20:00:32 +0000 (14:00 -0600)]
compiler: C linkage for icd alloc and free

10 years agolayers: Update object tracker to account for Memory alloc/free
Tobin Ehlis [Tue, 28 Oct 2014 15:19:13 +0000 (09:19 -0600)]
layers: Update object tracker to account for Memory alloc/free

10 years agolayers: Verify that slot binding is compatible with shader mapping
Tobin Ehlis [Mon, 27 Oct 2014 23:12:54 +0000 (17:12 -0600)]
layers: Verify that slot binding is compatible with shader mapping

10 years agoBug fixes and enhancements to draw_state.c
Tobin Ehlis [Mon, 27 Oct 2014 20:53:17 +0000 (14:53 -0600)]
Bug fixes and enhancements to draw_state.c

10 years agoLayers: Change Basic layer to implement an extension and wrap GetExtension
Jon Ashburn [Fri, 24 Oct 2014 21:57:32 +0000 (15:57 -0600)]
Layers: Change Basic layer to implement an extension  and wrap GetExtension

10 years agoLoader: GPA fixes and also properly insert wrapped gpu objs into chain
Jon Ashburn [Fri, 24 Oct 2014 21:48:55 +0000 (15:48 -0600)]
Loader: GPA fixes  and also properly insert wrapped gpu objs into chain

Loader wasn't properly inserting the wrapped gpu objects for activated layers
into  the chain of objects.  This was a problem for any calls that used
the wrapped gpu object chain after activation of layers.

10 years agoBug fixes for draw_state.c layer
Tobin Ehlis [Fri, 24 Oct 2014 19:03:56 +0000 (13:03 -0600)]
Bug fixes for draw_state.c layer

10 years agoInitial version of draw state layer
Tobin Ehlis [Fri, 24 Oct 2014 18:01:45 +0000 (12:01 -0600)]
Initial version of draw state layer

Prints out Descriptor Set state at the time of Draw.

10 years agoAdd xglDestroyDevice() call to test framework.
Tobin Ehlis [Thu, 23 Oct 2014 19:45:13 +0000 (13:45 -0600)]
Add xglDestroyDevice() call to test framework.

10 years agolayers: update documentation
Jon Ashburn [Thu, 23 Oct 2014 16:59:23 +0000 (10:59 -0600)]
layers: update documentation

10 years agoLoader: Fix Seg fault when layers not activated via env var
Jon Ashburn [Thu, 23 Oct 2014 16:29:09 +0000 (10:29 -0600)]
Loader: Fix Seg fault when layers not activated via env var

10 years agolayers : Updates to layers README
Tobin Ehlis [Thu, 23 Oct 2014 14:44:44 +0000 (08:44 -0600)]
layers : Updates to layers README

10 years agoMore formated struct printing for API Dump
Tobin Ehlis [Thu, 23 Oct 2014 14:19:47 +0000 (08:19 -0600)]
More formated struct printing for API Dump

10 years agoFix memory leaks in loader related to layers.
Jon Ashburn [Thu, 23 Oct 2014 03:15:26 +0000 (21:15 -0600)]
Fix memory leaks in loader  related to layers.

10 years agoMake layer activation via CreateDevice struct or env variable
Jon Ashburn [Thu, 23 Oct 2014 00:13:16 +0000 (18:13 -0600)]
Make layer activation via CreateDevice struct or env variable

Also finish making all activated layers per icd and per gpu.

10 years agoBetter memory management in api_dump layer and struct print helper
Tobin Ehlis [Wed, 22 Oct 2014 21:13:53 +0000 (15:13 -0600)]
Better memory management in api_dump layer and struct print helper

10 years agoLoader: fix dispatch table initialization to handle multiple layers
Jon Ashburn [Wed, 22 Oct 2014 18:42:13 +0000 (12:42 -0600)]
Loader: fix dispatch table initialization to handle  multiple layers

10 years agoImproved API Dump and OBJ Track layers
Tobin Ehlis [Wed, 22 Oct 2014 15:06:33 +0000 (09:06 -0600)]
Improved API Dump and OBJ Track layers

Added generator script just for layers that generates API Dump and Object Tracker layers.  Improved output of API Dump layer.

10 years agoInitial layer to dump api calls
Tobin Ehlis [Tue, 21 Oct 2014 16:47:45 +0000 (10:47 -0600)]
Initial layer to dump api calls

10 years agoAdded object_track.c layer and include cmake step to build libXGLLayerObjectTrack.so
Tobin Ehlis [Mon, 20 Oct 2014 22:50:21 +0000 (16:50 -0600)]
Added object_track.c layer and include cmake step to build libXGLLayerObjectTrack.so

10 years agoChange GetProcAddr function signature to use XGL types.
Jon Ashburn [Fri, 17 Oct 2014 21:31:22 +0000 (15:31 -0600)]
Change GetProcAddr  function signature to use XGL types.

Fix bug in GPA for basic_plugin.c .

10 years agoMake layer activation per icd in loader and gets deactivated.
Jon Ashburn [Fri, 17 Oct 2014 21:09:07 +0000 (15:09 -0600)]
Make layer activation per icd in loader  and gets deactivated.

Fixes issue where multiple xglInitAndEnumerate were causing the layer
activation to fail  and dispatch table setup in loader to fail.

10 years agoAdd function to set an icd's dispatch table for subsequently created objects.
Jon Ashburn [Thu, 16 Oct 2014 21:48:50 +0000 (15:48 -0600)]
Add function to set an icd's dispatch table for subsequently created objects.

With layers the loaders dispatch table is used instead of the drivers dispatch
table.  The gpu objects were reflecting this change but not subsequent objects.
Tell the icd driver about the loader's dispatch table so it will use it on
object creation rather than the default  driver dispatch table.

10 years agoAdd xglEnumerateLayers function including support in layers.
Jon Ashburn [Wed, 15 Oct 2014 21:30:23 +0000 (15:30 -0600)]
Add xglEnumerateLayers function including support in layers.

Also add this call to xglbase (init.cpp) test.

10 years agoFixes to Basic and Generic layers to work singly with LD_PRELOAD
Jon Ashburn [Wed, 15 Oct 2014 18:08:33 +0000 (12:08 -0600)]
Fixes to Basic and Generic layers to work singly with LD_PRELOAD

10 years agoLayers initial prototype.
Jon Ashburn [Wed, 15 Oct 2014 01:15:22 +0000 (19:15 -0600)]
Layers initial prototype.

Includes  an auto generated layer (GenericLayer) that wraps  all api calls.
Includes a basic handwritten layer (basicLayer)  that wraps a few apis.
Adds xglGetProcAddr as a new api, which is used to chain layers together.
All layers and loader implement  a dispatch table.

10 years agoloader: initialize memory
Courtney Goeltzenleuchter [Tue, 28 Oct 2014 16:29:27 +0000 (10:29 -0600)]
loader: initialize memory

uninitialized use from by valgrind

10 years agoicd: add icd_format_is_equal()
Chia-I Wu [Mon, 20 Oct 2014 05:50:43 +0000 (13:50 +0800)]
icd: add icd_format_is_equal()

It returns true when the formats are equal.

10 years agointel: fix memory leak spotted by valgrind
Courtney Goeltzenleuchter [Fri, 26 Sep 2014 00:13:21 +0000 (18:13 -0600)]
intel: fix memory leak spotted by valgrind

10 years agoicd: Fix incorrect return type
Courtney Goeltzenleuchter [Wed, 15 Oct 2014 00:14:31 +0000 (18:14 -0600)]
icd: Fix incorrect return type

10 years agoFix loader icd_scan to Null terminate strings
Jon Ashburn [Fri, 3 Oct 2014 22:31:35 +0000 (16:31 -0600)]
Fix loader icd_scan to Null terminate strings

10 years agoinclude: update xgl.h with FF vertex fetch
Chia-I Wu [Mon, 6 Oct 2014 07:07:25 +0000 (15:07 +0800)]
include: update xgl.h with FF vertex fetch

https://cvs.khronos.org/svn/repos/oglc/trunk/nextgen/proposals/IMG/xgl_vertex_input_description2_img.h

10 years agoicd: add icd_format_get_channel_count
Chia-I Wu [Wed, 8 Oct 2014 01:12:58 +0000 (09:12 +0800)]
icd: add icd_format_get_channel_count

10 years agoAdded graphiviz dot and png files to visualize some API details
Tobin Ehlis [Mon, 6 Oct 2014 15:07:53 +0000 (09:07 -0600)]
Added graphiviz dot and png files to visualize some API details

10 years agoadd stubs for XGL_WSI_X11
Chia-I Wu [Tue, 23 Sep 2014 02:37:23 +0000 (10:37 +0800)]
add stubs for XGL_WSI_X11

10 years agoinclude: add preliminary XGL_WSI_X11 proposal
Chia-I Wu [Tue, 23 Sep 2014 02:37:08 +0000 (10:37 +0800)]
include: add preliminary XGL_WSI_X11 proposal

It is built around DRI3 and Present.

10 years agotidy up the build system a bit
Chia-I Wu [Thu, 18 Sep 2014 09:05:09 +0000 (17:05 +0800)]
tidy up the build system a bit

10 years agodelete GitSHA1.c generation
Chia-I Wu [Thu, 18 Sep 2014 08:58:27 +0000 (16:58 +0800)]
delete GitSHA1.c generation

It is unused.  Could be revived anytime if found useful.

10 years agoicd: add an API to scan Linux DRM subsystem
Chia-I Wu [Mon, 15 Sep 2014 05:08:49 +0000 (13:08 +0800)]
icd: add an API to scan Linux DRM subsystem

It differs from the scanner in intel ICD in that both legacy (primary) nodes
and render nodes are supported.  And it does not open() any of them.

10 years agoxgl-generate: do not hardcode #include's
Chia-I Wu [Sat, 13 Sep 2014 05:36:06 +0000 (13:36 +0800)]
xgl-generate: do not hardcode #include's

Add core_headers to xgl.py and use it to generate #include's

10 years agoremove XGLConfig.h.in
Chia-I Wu [Sat, 13 Sep 2014 05:18:47 +0000 (13:18 +0800)]
remove XGLConfig.h.in

Unused.

10 years agoxgl: Remove mantle headers
Courtney Goeltzenleuchter [Thu, 11 Sep 2014 18:51:27 +0000 (12:51 -0600)]
xgl: Remove mantle headers

10 years agoicd: add u_uif
Chia-I Wu [Mon, 8 Sep 2014 16:23:07 +0000 (00:23 +0800)]
icd: add u_uif

For bit-preserving uint32_t to float type casting.