platform/upstream/Vulkan-Tools.git
9 years agolayers: Remove wrapping of GPU objects by loader and layers
Jon Ashburn [Thu, 9 Apr 2015 03:33:34 +0000 (21:33 -0600)]
layers: Remove wrapping of GPU objects by loader and layers

Loader only wraps GPU objects for creating a layer chain. After layer activation
layers and loader use unwrapped gpu object returned by the driver.

This is a large simplification.

This fixes a nasty bug where layers intercepting entrypoints with gpu objects
but not all these entrypoints would fail.  These would cause non-uniform
unwrapping of gpu objects by the time the driver was called with a gpu object.

Fixes issue in loader_get_icd where it was trying to compare a wrapped GPU
against a non-wrapped GPU.

9 years agoloader: Don't have GetExtensionSupport as loader special case code
Jon Ashburn [Thu, 9 Apr 2015 00:57:27 +0000 (18:57 -0600)]
loader: Don't have GetExtensionSupport as loader special case code

Allows layers to intercept GetExtensionSupport()

9 years agoloader: Activate layers at EnumerateGpus instead of CreateDevice
Jon Ashburn [Thu, 9 Apr 2015 00:20:54 +0000 (18:20 -0600)]
loader: Activate layers at EnumerateGpus instead of CreateDevice

9 years agoloader: refactor layer activation function to handle more general inputs
Jon Ashburn [Mon, 6 Apr 2015 16:58:22 +0000 (10:58 -0600)]
loader: refactor layer activation function to handle more general inputs

Renamed structure types as well.

TODO: verify vk-layer-generate.py

v2: fix LoaderEntrypointsSubcommand (olv)

9 years agoloader: Store the enabled extensions at CreateInstance
Jon Ashburn [Wed, 8 Apr 2015 21:49:00 +0000 (15:49 -0600)]
loader: Store the enabled extensions at CreateInstance

9 years agovulkan.h: v75. Add cube-compatible image create bit. Bug 13609
Mark Lobodzinski [Thu, 9 Apr 2015 23:46:33 +0000 (18:46 -0500)]
vulkan.h: v75.  Add cube-compatible image create bit.  Bug 13609

Khronos SVN change #30288. Did not update version number.

9 years agovulkan.h: Added comments as specified in Bug 13606
Mark Lobodzinski [Thu, 9 Apr 2015 23:31:21 +0000 (18:31 -0500)]
vulkan.h: Added comments as specified in Bug 13606

Specified units for some VkImage* structure members.

9 years agolayers: ObjTracker -- free each queue's memRefs
Mark Lobodzinski [Thu, 9 Apr 2015 17:09:45 +0000 (12:09 -0500)]
layers: ObjTracker -- free each queue's memRefs

Cleanup and free memRef-related resources for each queue upon device
destruction.

TODO: Verify vk-layer-generation.py
TODO: APIDump layer needs some help

9 years agolayers: Get ObjectTracker working with memory reference changes
Courtney Goeltzenleuchter [Wed, 15 Apr 2015 06:14:36 +0000 (00:14 -0600)]
layers: Get ObjectTracker working with memory reference changes

Memory References are no longer specified in the QueueSubmit API, but
are controlled through new APIs.  Update mem ref validation for new
entry points.

9 years agovulkan: beautification changes
Courtney Goeltzenleuchter [Fri, 10 Apr 2015 14:34:15 +0000 (08:34 -0600)]
vulkan: beautification changes

TODO: verify vk-layer-generate.py

TODO: need to rename object tracker generator

v2: fix "python3 vulkan.py"
    fix dead cod in tri introduced by rebase
    beautify wsi_null.c (olv)

9 years agoWin: Fix typo and incorrect strlen for finding/loading ICDs.
Ian Elliott [Fri, 10 Apr 2015 00:07:15 +0000 (18:07 -0600)]
Win: Fix typo and incorrect strlen for finding/loading ICDs.

9 years agoglavesnapshot: Follow vulkan.h changes
Courtney Goeltzenleuchter [Wed, 15 Apr 2015 01:07:22 +0000 (19:07 -0600)]
glavesnapshot: Follow vulkan.h changes

9 years agoFixed Windows compilation/link errors ...
Courtney Goeltzenleuchter [Wed, 15 Apr 2015 01:07:06 +0000 (19:07 -0600)]
Fixed Windows compilation/link errors ...

without Glave auto-gen changes.

9 years agovulkan: API renaming
Courtney Goeltzenleuchter [Wed, 15 Apr 2015 00:48:46 +0000 (18:48 -0600)]
vulkan: API renaming

VK_DEVICE_QUEUE_CREATE_INFO => VkDeviceQueueCreateInfo
VK_DEVICE_CREATE_INFO => VkDeviceCreateInfo
VK_INSTANCE_CREATE_INFO => VkInstanceCreateInfo
VK_LAYER_CREATE_INFO => VkLayerCreateInfo
VK_MEMORY_ALLOC_INFO => VkMemoryAllocInfo
VK_MEMORY_ALLOC_IMAGE_INFO => VkMemoryAllocImageInfo
VK_MEMORY_ALLOC_BUFFER_INFO => VkMemoryAllocBufferInfo
VK_BUFFER_CREATE_INFO => VkBufferCreateInfo
VK_BUFFER_VIEW_CREATE_INFO => VkBufferViewCreateInfo

9 years agorename programming guide.
Courtney Goeltzenleuchter [Thu, 9 Apr 2015 19:42:03 +0000 (13:42 -0600)]
rename programming guide.

9 years agorename vkPlatform.h -> vk_platform.h
Courtney Goeltzenleuchter [Thu, 9 Apr 2015 17:52:55 +0000 (11:52 -0600)]
rename vkPlatform.h -> vk_platform.h

9 years agolayers: Migrate remaining malloc/free calls in DrawState to new/delete
Tobin Ehlis [Wed, 8 Apr 2015 16:58:37 +0000 (10:58 -0600)]
layers: Migrate remaining malloc/free calls in DrawState to new/delete

9 years agolayers: Unify APIDump into a single layer with settings to vary behavior
Tobin Ehlis [Thu, 9 Apr 2015 15:19:36 +0000 (09:19 -0600)]
layers: Unify APIDump into a single layer with settings to vary behavior

9 years agoxgl.h v70. Fix for vkUpdateDescriptors. Bug 13615
Courtney Goeltzenleuchter [Thu, 9 Apr 2015 17:43:10 +0000 (11:43 -0600)]
xgl.h v70. Fix for vkUpdateDescriptors. Bug 13615

git-svn-id: https://cvs.khronos.org/svn/repos/oglc/trunk/nextgen/XGL@30104 e7fa87d3-cd2b-0410-9028-fcbf551c1848

9 years agovk_helper: convert xgl refs to vk/vulkan refs
Courtney Goeltzenleuchter [Tue, 14 Apr 2015 22:30:53 +0000 (16:30 -0600)]
vk_helper: convert xgl refs to vk/vulkan refs

9 years agolayers: remove unused functions from generator
Courtney Goeltzenleuchter [Wed, 15 Apr 2015 03:15:34 +0000 (21:15 -0600)]
layers: remove unused functions from generator

9 years agorenaming: Move many xgl files to vk version
Courtney Goeltzenleuchter [Tue, 14 Apr 2015 20:55:44 +0000 (14:55 -0600)]
renaming: Move many xgl files to vk version

9 years agorename: more renaming
Courtney Goeltzenleuchter [Thu, 9 Apr 2015 16:06:13 +0000 (10:06 -0600)]
rename: more renaming

9 years agorename: Clean header to match svn version
Courtney Goeltzenleuchter [Thu, 9 Apr 2015 16:05:30 +0000 (10:05 -0600)]
rename: Clean header to match svn version

9 years agoStage 1 of rename
Courtney Goeltzenleuchter [Wed, 8 Apr 2015 21:36:08 +0000 (15:36 -0600)]
Stage 1 of rename

TODO: re-enable glave build, advance API for glave

v2: get rid of outdated code in tri introduced by rebase
    rename wsi_null.c (olv)

9 years agoSymbolic links while things are moving
Courtney Goeltzenleuchter [Thu, 9 Apr 2015 00:04:29 +0000 (18:04 -0600)]
Symbolic links while things are moving

9 years agoparam_check: Add Queue[Add|Remove]MemReference
Courtney Goeltzenleuchter [Wed, 8 Apr 2015 19:57:08 +0000 (13:57 -0600)]
param_check: Add Queue[Add|Remove]MemReference

9 years agointel: Add XGL_PIPE_EVENT_LOCAL_FRAGMENT_PROCESSING_COMPLETE
Tony Barbour [Wed, 8 Apr 2015 19:11:36 +0000 (13:11 -0600)]
intel: Add XGL_PIPE_EVENT_LOCAL_FRAGMENT_PROCESSING_COMPLETE

9 years agoinclude: Dbg entrypoints should be protected by XGL_PROTOTYPES
Jon Ashburn [Mon, 6 Apr 2015 23:38:17 +0000 (17:38 -0600)]
include: Dbg entrypoints should be protected by XGL_PROTOTYPES
Needed if including header file and want to define one's own entrypoints statically

9 years agomisc: Add create_info struct to CreateInstance()
Jon Ashburn [Sat, 4 Apr 2015 20:52:07 +0000 (14:52 -0600)]
misc: Add create_info struct to CreateInstance()

Allows extnesion or layer enablement at CreateInstance
Khronos Bug 13637

9 years agolayers: Update GetExtensionSupport() to handle queries for layer name
Jon Ashburn [Thu, 2 Apr 2015 18:06:28 +0000 (12:06 -0600)]
layers: Update GetExtensionSupport() to handle queries for layer name

Layers now support loader querying their layer name via GetExtensionSupport
in addition to EnumerateLayers.
Also fixed bugs in ObjectTracker and DrawState to add the extensions they
support in the GetExtensionSupport queries.

Conflicts:
xgl-layer-generate.py

9 years agoloader: Merge extensions and layers
Courtney Goeltzenleuchter [Fri, 27 Feb 2015 22:19:33 +0000 (15:19 -0700)]
loader: Merge extensions and layers

Update loader so that it extensions and layers work in same
basic fashion. That is, application can query for extension/layer
support by calling GetExtensionSupport. The loader will then query
the available drivers AND layers for that support. Likewise,
when the application does CreateDevice the list of "extensions"
can be both layers and extensions and the loader will figure out
the right thing to do.

Conflicts:
loader/loader.c
xgl-generate.py

9 years agolayers: Set default debug output to stdout
Courtney Goeltzenleuchter [Sun, 22 Feb 2015 23:15:32 +0000 (16:15 -0700)]
layers: Set default debug output to stdout

9 years agoUpdated header file to version 67 (xglResetFences)
Mark Lobodzinski [Tue, 7 Apr 2015 21:07:57 +0000 (16:07 -0500)]
Updated header file to version 67 (xglResetFences)

Added changes to fence semantics for this revision.

tests: Create contructor with no args

intel: Added Tony's patch for ResetFences support in the ICD.

v2: reset fence in intel_fence_seq_seqno().  We need the reset to make
    xglQueueWaitIdle() work (olv)

layers: Added ResetFences support to MemTracker

Add new entrypoint and fence semantics for fence status flags.

layers: Completed changed fence semantics for MemTracker

Completed the changes for xgl header revision 67, adding resetFences.

layers: Changes to support xglResetFences

v2: squashed into one commit (olv)

9 years agolayers: Incorporated memory reference handling into MemTracker
Mark Lobodzinski [Tue, 7 Apr 2015 18:38:21 +0000 (13:38 -0500)]
layers: Incorporated memory reference handling into MemTracker

API was changed for handling memory references, updated memtracker
layer to correctly track and validate memory references.

9 years agolayers: Fixes to get them building and working with descriptor changes
Mark Lobodzinski [Tue, 7 Apr 2015 14:34:09 +0000 (09:34 -0500)]
layers: Fixes to get them building and working with descriptor changes

9 years agolayers: Updated for explicit fence validation with multiple queues
Courtney Goeltzenleuchter [Tue, 14 Apr 2015 06:01:21 +0000 (00:01 -0600)]
layers: Updated for explicit fence validation with multiple queues

Fences were being validated to make sure they had been retired, layer
was updated to validate that the app has checked the fences.

9 years agolayers: Added support for multiple queues
Mark Lobodzinski [Thu, 2 Apr 2015 13:52:53 +0000 (08:52 -0500)]
layers: Added support for multiple queues

Not supported on Intel, but will be on other hw.

9 years agolayers: Added GetDeviceQueue API, fixed up variable names
Mark Lobodzinski [Tue, 31 Mar 2015 21:05:35 +0000 (16:05 -0500)]
layers: Added GetDeviceQueue API, fixed up variable names

Updated LinkedList-related variable names

Conflicts:
layers/mem_tracker.cpp

9 years agoxgl: Enable new mem ref functions
Courtney Goeltzenleuchter [Tue, 7 Apr 2015 23:13:38 +0000 (17:13 -0600)]
xgl: Enable new mem ref functions

v2: remove a stale comment in the sample driver (olv)

9 years agotri: Add AddMemRef support
Courtney Goeltzenleuchter [Thu, 2 Apr 2015 22:30:29 +0000 (16:30 -0600)]
tri: Add AddMemRef support

9 years agocube: Add AddMemReferences
Courtney Goeltzenleuchter [Thu, 2 Apr 2015 22:25:42 +0000 (16:25 -0600)]
cube: Add AddMemReferences

9 years agoxgl: Remove QueueSetGlobalMemReferences
Courtney Goeltzenleuchter [Tue, 7 Apr 2015 22:40:50 +0000 (16:40 -0600)]
xgl: Remove QueueSetGlobalMemReferences

9 years agoxgl: Remove old GPU maxMemReferencesPerSubmission
Courtney Goeltzenleuchter [Tue, 7 Apr 2015 22:23:00 +0000 (16:23 -0600)]
xgl: Remove old GPU maxMemReferencesPerSubmission

The GPU property maxMemReferencesPerSubmission is now
in the GPU QUEUE properties as maxMemReferences.

9 years agoxgl: Add MaxMemReferences to GPU_QUEUE_PROPS
Courtney Goeltzenleuchter [Thu, 2 Apr 2015 20:22:12 +0000 (14:22 -0600)]
xgl: Add MaxMemReferences to GPU_QUEUE_PROPS

9 years agoxgl: Add QueueMemReference functions
Courtney Goeltzenleuchter [Thu, 2 Apr 2015 19:39:07 +0000 (13:39 -0600)]
xgl: Add QueueMemReference functions

9 years agolayers: Fix multi-line strings.
Jeremy Hayes [Tue, 7 Apr 2015 19:38:03 +0000 (13:38 -0600)]
layers: Fix multi-line strings.

9 years agolayers: Improve xglCreateInstance validation.
Jeremy Hayes [Tue, 7 Apr 2015 19:30:04 +0000 (13:30 -0600)]
layers: Improve xglCreateInstance validation.

9 years agolayers: Improve xglCreateRenderPass validation.
Jeremy Hayes [Tue, 7 Apr 2015 15:49:05 +0000 (09:49 -0600)]
layers: Improve xglCreateRenderPass validation.

9 years agolayers: move APIDump layers to generate_intercept
Mike Stroyan [Fri, 3 Apr 2015 23:45:53 +0000 (17:45 -0600)]
layers: move APIDump layers to generate_intercept

Finish moving the rest of layer generation to using generate_intercept.
Make APIDump variants for File and NoAddr subclasses of APIDump and APIDumpCpp.

9 years agolayers: use class attributes in code generation
Mike Stroyan [Fri, 3 Apr 2015 23:13:23 +0000 (17:13 -0600)]
layers: use class attributes in code generation

Move layer_name from parameters to class attribute.
Move no_addr setting from parameters to class attribute.
Access generate_intercept method through class instead of parameter.

9 years agolayers: update ObjectTracker code generation
Mike Stroyan [Fri, 3 Apr 2015 20:39:16 +0000 (14:39 -0600)]
layers: update ObjectTracker code generation

Change ObjectTracker generation to use _generate_dispatch_entrypoints_with_func

9 years agolayers: restructure code generation for layers
Mike Stroyan [Fri, 3 Apr 2015 19:58:35 +0000 (13:58 -0600)]
layers: restructure code generation for layers

Changed _generate_dispatch_entrypoints in xgl-layer-generate.py
to remove specific layer handling.
Instead pass it a "generate_intercept" function to decide which
API calls to intercept and output layer specific intercept code.
Output layer_intercept_proc() function per layer instead of using
xgl_generic_intercept_proc_helper.h so intercept lists can vary
for different generated layers.

9 years agolayers: more uniform generated layer callbacks
Mike Stroyan [Thu, 2 Apr 2015 19:38:55 +0000 (13:38 -0600)]
layers: more uniform generated layer callbacks

Make the code to generate DbgRegisterMsgCallback and
DbgUnregisterMsgCallback in _generate_dispatch_entrypoints
more uniform across layers.
This also fixes the ObjectTracker layer to pass on these calls
to the next layer or icd.

9 years agolayers: drop ParamCheck from generator script
Mike Stroyan [Mon, 6 Apr 2015 21:24:46 +0000 (15:24 -0600)]
layers: drop ParamCheck from generator script

ParamChecker is no longer generated by xgl-layer-generate.py

9 years agolayers: Improve CreateImage checks.
Jeremy Hayes [Mon, 6 Apr 2015 20:36:23 +0000 (14:36 -0600)]
layers: Improve CreateImage checks.

9 years agolayers: Remove param checker from auto-gen.
Jeremy Hayes [Mon, 6 Apr 2015 19:46:11 +0000 (13:46 -0600)]
layers: Remove param checker from auto-gen.

9 years agolayers: Use brackets for if in previous fix
Tony Barbour [Mon, 6 Apr 2015 17:09:26 +0000 (11:09 -0600)]
layers: Use brackets for if in previous fix

9 years agolayers: Check for valid pipeline before validating
Tony Barbour [Mon, 6 Apr 2015 17:00:38 +0000 (11:00 -0600)]
layers: Check for valid pipeline before validating

9 years agoinclude: Add vk_dbg.h for the Dbg extension definitions
Jon Ashburn [Sat, 4 Apr 2015 18:13:28 +0000 (12:13 -0600)]
include: Add vk_dbg.h for the Dbg extension definitions

9 years agoWSI fixes (Jon caught): new disp-obj macro + extend VkObjectType.
Ian Elliott [Tue, 7 Apr 2015 19:50:42 +0000 (13:50 -0600)]
WSI fixes (Jon caught): new disp-obj macro + extend VkObjectType.

A recent "vulkan.h" header change means we should use the
VK_DEFINE_DISP_SUBCLASS_HANDLE() macor instead of the VK_DEFINE_HANDLE() macro.

Also, we needed to extend the VkObjectType enum/typedef.

9 years agoAdd WSI header file, for use in the SDK.
Ian Elliott [Fri, 3 Apr 2015 15:45:49 +0000 (09:45 -0600)]
Add WSI header file, for use in the SDK.

9 years agobuild: enable Glave and all layers but drawState
Jon Ashburn [Wed, 1 Apr 2015 19:30:06 +0000 (13:30 -0600)]
build: enable Glave and all layers but drawState

v2: enable drawState too (olv)

9 years agolayers: DrawState changes to support resource binding updates
Tobin Ehlis [Fri, 3 Apr 2015 18:01:11 +0000 (12:01 -0600)]
layers: DrawState changes to support resource binding updates

9 years agolayers: Fixes to get them building and working with descriptor changes
Courtney Goeltzenleuchter [Fri, 3 Apr 2015 04:54:15 +0000 (22:54 -0600)]
layers: Fixes to get them building and working with descriptor changes

9 years agoglave: Rename descriptor region to descriptor pool
Jon Ashburn [Mon, 30 Mar 2015 15:11:02 +0000 (09:11 -0600)]
glave: Rename descriptor region to descriptor pool

9 years agobinding: update for xglCmdBindDescriptorSets()
Chia-I Wu [Sat, 28 Mar 2015 07:23:55 +0000 (15:23 +0800)]
binding: update for xglCmdBindDescriptorSets()

This update makes it possible to bind multiple descriptor sets to the command
buffer.  We introduced intel_cmd_dset_data to hold the descriptor set offsets
in the global descriptor region as well as their dynamic offsets.  We also
changed the descriptor reading routines from

  intel_desc_set_read_surface()
  intel_desc_set_read_sampler()

to

  intel_desc_region_read_surface()
  intel_desc_region_read_sampler()

v2: fix a potential crash when allocation of dynamic_desc_indices fails

9 years agobinding: update for pImmutableSamplers
Chia-I Wu [Fri, 27 Mar 2015 04:56:09 +0000 (12:56 +0800)]
binding: update for pImmutableSamplers

v2: fix a typo in the type of shared_immutable_sampler (olv)

9 years agobinding: introduce XGL_DESCRIPTOR_SET_LAYOUT_CHAIN
Chia-I Wu [Thu, 26 Mar 2015 07:27:55 +0000 (15:27 +0800)]
binding: introduce XGL_DESCRIPTOR_SET_LAYOUT_CHAIN

Replace a chain of XGL_DESCRIPTOR_SET_LAYOUT by
XGL_DESCRIPTOR_SET_LAYOUT_CHAIN.  The change also drops
stageFlags/pSetBindPoints, and affects xglUpdateDescriptors().

xglCmdBindDescriptorSet() is not updated yet by this commit, which makes it
impossible to bind multiple sets.

The change also encourages the use of arrays of resources, which we do not
support.

v2: fix a typo in intel_desc_set_update_samplers() that prevents it from
working (olv)

9 years agobinding: remove XGL_DESCRIPTOR_TYPE_RAW_BUFFER*
Chia-I Wu [Thu, 26 Mar 2015 07:26:05 +0000 (15:26 +0800)]
binding: remove XGL_DESCRIPTOR_TYPE_RAW_BUFFER*

9 years agobinding: rename xglClearDescriptorPool()
Chia-I Wu [Thu, 26 Mar 2015 07:23:52 +0000 (15:23 +0800)]
binding: rename xglClearDescriptorPool()

Rename it to xglResetDescriptorPool().

9 years agobinding: update XGL_DESCRIPTOR_SET_LAYOUT_CREATE_INFO
Chia-I Wu [Thu, 26 Mar 2015 07:04:41 +0000 (15:04 +0800)]
binding: update XGL_DESCRIPTOR_SET_LAYOUT_CREATE_INFO

XGL_DESCRIPTOR_SET_LAYOUT_CREATE_INFO now has an array of bindings.  Rename
intel_desc_layout_range to intel_desc_layout_binding.

9 years agobinding: rename descriptor region to descriptor pool
Chia-I Wu [Thu, 26 Mar 2015 05:14:16 +0000 (13:14 +0800)]
binding: rename descriptor region to descriptor pool

This should be trivial, except that the intel driver has intel_desc_pool
internally.  Exchange the names of intel_desc_pool and intel_desc_region.

9 years agobinding: disable layers and tools
Chia-I Wu [Sat, 28 Mar 2015 01:59:21 +0000 (09:59 +0800)]
binding: disable layers and tools

9 years agolayers: Correct xglBindObjectMemory signature in MemTracker message.
Tobin Ehlis [Thu, 26 Mar 2015 14:24:16 +0000 (08:24 -0600)]
layers: Correct xglBindObjectMemory signature in MemTracker message.

9 years agolayers: Migrated DrawState layer to cpp
Tobin Ehlis [Tue, 17 Mar 2015 22:24:32 +0000 (16:24 -0600)]
layers: Migrated DrawState layer to cpp

Move almost all linked-lists to unordered_maps and vectors.
Clean up malloc/free with new/delete.
Skip write-strings compile warnings for graphviz_helper.

Still need to migrate the DS update tree to c++.

9 years agolayers: Convert memtracker to cpp
Mark Lobodzinski [Tue, 24 Mar 2015 21:29:24 +0000 (16:29 -0500)]
layers: Convert memtracker to cpp

Take advantage of containers, memory allocation, and strings.

9 years agoxgl: Update interface for sparse vertex attrs
Courtney Goeltzenleuchter [Tue, 31 Mar 2015 22:36:30 +0000 (16:36 -0600)]
xgl: Update interface for sparse vertex attrs

Bug #13402
header version: 0.64.0

9 years agoEliminate some Windows-compilation warnings.
Ian Elliott [Fri, 3 Apr 2015 15:54:13 +0000 (09:54 -0600)]
Eliminate some Windows-compilation warnings.

9 years agoobj_track: Eliminate warning for presentable image
Courtney Goeltzenleuchter [Thu, 26 Mar 2015 22:16:16 +0000 (16:16 -0600)]
obj_track: Eliminate warning for presentable image

Distinguish between freeObj calls that are being done for
layer internal reasons (i.e. tracking presentable_image objects)
and user actions to eliminate unnecessary warning from layer.

9 years agomem_tracker: Report PRESENTABLE_IMAGE_MEMORY obj
Courtney Goeltzenleuchter [Thu, 26 Mar 2015 22:15:39 +0000 (16:15 -0600)]
mem_tracker: Report PRESENTABLE_IMAGE_MEMORY obj

9 years agodemos: Correct use of pipeline barrier
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 19:36:41 +0000 (13:36 -0600)]
demos:  Correct use of pipeline barrier

9 years agoxgl: Rename XGL_QUEUE_SEMAPHORE to XGL_SEMAPHORE
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 23:14:29 +0000 (17:14 -0600)]
xgl: Rename XGL_QUEUE_SEMAPHORE to XGL_SEMAPHORE

bug #13473
header: r29790 (0.63.0)

9 years agoxgl: xglWaitForFences timeout units
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 22:37:00 +0000 (16:37 -0600)]
xgl: xglWaitForFences timeout units

bug #13425
header: r29769 (0.62.0)

v2: cast uint64_t to int64_t with range check (olv)

9 years agoxgl: Consistent naming scheme for resources in XGL
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 22:31:58 +0000 (16:31 -0600)]
xgl: Consistent naming scheme for resources in XGL

bug #13230
header revision: r29764 (0.62.0)

Part 1: Change BUFFER_USAGE, BUFFER_VIEW and BUFFER_VIEW_CREATE_INFO.

9 years agoxgl: Remove xglSetFastClearColor / xglSetFastClearDepth
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 22:13:30 +0000 (16:13 -0600)]
xgl: Remove xglSetFastClearColor / xglSetFastClearDepth

header: r29714 (0.61.0)

9 years agoFIXUP: Remove PIPELINE_DELTA
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 22:16:04 +0000 (16:16 -0600)]
FIXUP: Remove PIPELINE_DELTA

commit 57a757fda4f6a62cb1187b015f28119ce9c5a2b2
Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
Date:   Wed Mar 25 15:37:49 2015 -0600

    xgl: Remove PIPELINE_DELTA.

    bug: 13065
    header: 0.60.0

    Remove PIPELINE_DELTA.

    Add functions for creating and loading pipeline derivatives.

9 years agoxgl: Remove PIPELINE_DELTA.
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 21:37:49 +0000 (15:37 -0600)]
xgl: Remove PIPELINE_DELTA.

bug: 13065
header: 0.60.0

Remove PIPELINE_DELTA.

Add functions for creating and loading pipeline derivatives.

v2: fix warnings (olv)

9 years agoFIXUP: Add IMAGE_LAYOUT
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 22:16:56 +0000 (16:16 -0600)]
FIXUP: Add IMAGE_LAYOUT

commit 6f5bca9057be71e818982c4cece0cb5ed1743b0f
Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
Date:   Wed Mar 25 11:25:10 2015 -0600

    xgl: Add IMAGE_LAYOUT to Cmd*Image* calls

    This is part 2 of bug #12904.
    (2) Blit operations need to know what layout images are in. How do they figure that out?

    - Added new parameter(s) specifying the image layout(s) to the following functions:
        xglCmdCopyImage
        xglCmdCopyBufferToImage
        xglCmdCopyImageToBuffer
        xglCmdClearColorImage
        xglCmdClearColorImageRaw
        xglCmdClearDepthStencilImage
        xglCmdResolveImage

9 years agoxgl: Add IMAGE_LAYOUT to Cmd*Image* calls
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 17:25:10 +0000 (11:25 -0600)]
xgl: Add IMAGE_LAYOUT to Cmd*Image* calls

This is part 2 of bug #12904.
(2) Blit operations need to know what layout images are in. How do they figure that out?

- Added new parameter(s) specifying the image layout(s) to the following functions:
    xglCmdCopyImage
    xglCmdCopyBufferToImage
    xglCmdCopyImageToBuffer
    xglCmdClearColorImage
    xglCmdClearColorImageRaw
    xglCmdClearDepthStencilImage
    xglCmdResolveImage

9 years agoxgl: Add IMAGE_LAYOUT to Cmd*Image* calls
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 17:25:10 +0000 (11:25 -0600)]
xgl: Add IMAGE_LAYOUT to Cmd*Image* calls

This is part 2 of bug #12904.
(2) Blit operations need to know what layout images are in. How do they figure that out?

- Added new parameter(s) specifying the image layout(s) to the following functions:
    xglCmdCopyImage
    xglCmdCopyBufferToImage
    xglCmdCopyImageToBuffer
    xglCmdClearColorImage
    xglCmdClearColorImageRaw
    xglCmdClearDepthStencilImage
    xglCmdResolveImage

9 years agoxgl: Add xglCmdBlitImage entry point
Courtney Goeltzenleuchter [Fri, 3 Apr 2015 20:42:51 +0000 (14:42 -0600)]
xgl: Add xglCmdBlitImage entry point

Rebase updates
Part one of adding support for abitrary scaled blits and format conversions.
Just interface here. Functionality to follow.
bug #13071
alpha rev: r29665

9 years agoxgl: Add IMAGE_LAYOUT_UNDEFINED
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 14:49:17 +0000 (08:49 -0600)]
xgl: Add IMAGE_LAYOUT_UNDEFINED

part 1 of bug #12904:
(1) What layout are images in when they are created?

- Added new XGL_IMAGE_LAYOUT_UNINITIALIZED constant. This is the layout images are in right after creation. The application has to transition images to some useable layout before using the image. It can only be used as the source layout of a resource transition.

An image is considered to have UNDEFINED layout in the following cases:
* right after creation
* if the contents of the memory backing the image has been changed by performing an operation on another resource which (partially or fully) shares the same memory backing

The content of an image that is in UNDEFINED layout is considered undefined and unless the image is transitioned to another layout any operation on the image results in the content of the image to stay undefined.

The application can transition any image from UNDEFINED layout to another layout anytime. Right after that the content of the image still remains undefined but subsequent operations performed on the image (e.g. clear) will have well defined results.

9 years agoxgl: Add XGL_PIPE_EVENT to CmdResetEvent
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 00:02:34 +0000 (18:02 -0600)]
xgl: Add XGL_PIPE_EVENT to CmdResetEvent

part 3 of bug #12904
alpha header: r29684 (0.59.0)

(3) Where does xglCmdResetEvent update the event's status? Unlike xglCmdSetEvent this function doesn't take a parameter specifying this.

- Added pipeEvent parameter also to xglCmdResetEvent. Also renamed XGL_SET_EVENT to XGL_PIPE_EVENT as now it's no longer used only for set operations.

9 years agoxgl: Added XGL_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT
Courtney Goeltzenleuchter [Mon, 9 Mar 2015 01:41:29 +0000 (19:41 -0600)]
xgl: Added XGL_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT

bug #13066
alpha header: r29666

Currently not using this bit in sample driver.

9 years agoxgl: Add xglCmdBlitImage entry point
Courtney Goeltzenleuchter [Sun, 8 Mar 2015 23:02:18 +0000 (17:02 -0600)]
xgl: Add xglCmdBlitImage entry point

Part one of adding support for abitrary scaled blits and format conversions.
Just interface here. Functionality to follow.
bug #13071
alpha rev: r29665

9 years agoxgl: Proposal to remove XGL_FRAMEBUFFER
Courtney Goeltzenleuchter [Fri, 3 Apr 2015 21:25:24 +0000 (15:25 -0600)]
xgl: Proposal to remove XGL_FRAMEBUFFER

bug # 13323
alpha header: r29635

Don't actually remove XGL_FRAMEBUFFER but do change how
RenderPass and Framebuffer are connected. Some comments
from the bug:

- Created a new structure XGL_RENDER_PASS_BEGIN that contains
both the XGL_RENDER_PASS and XGL_FRAMEBUFFER.

- XGL_CMD_BUFFER_GRAPHICS_BEGIN_INFO and xglCmdBeginRenderPass
both use XGL_RENDER_PASS_BEGIN to ensure they stay consistent.

- Renamed the member in XGL_CMD_BUFFER_GRAPHICS_BEGIN_INFO to
renderPassContinue with a comment to clarify that this is
only needed when a render pass is split across two command buffer.

The last has the biggest impact on this patch. The tests now
directly call CmdBeginRenderPass and CmdEndRenderPass in the
command buffer rather than set the BEGIN_INFO to a render pass and
have the driver implicitly do BeginRenderPass and EndRenderPass.
It would probably still work, but didn't seem to match the intent
with this change in the header file.

9 years agoicd: remove unused icd-log.[ch]
Chia-I Wu [Sun, 22 Feb 2015 06:59:56 +0000 (14:59 +0800)]
icd: remove unused icd-log.[ch]

9 years agoFIXUP: update xglDbg.h for XGL_INSTANCE
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 20:35:54 +0000 (14:35 -0600)]
FIXUP: update xglDbg.h for XGL_INSTANCE

commit ba1c0f351db007373bf16d95e607ec4511e27164
Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
Date:   Mon Apr 13 14:10:06 2015 -0600

    xgl: update xglDbg.h for XGL_INSTANCE

9 years agoloader: Fix Dbg entrypoints with instance param to not loop all instances
Jon Ashburn [Tue, 17 Mar 2015 19:47:55 +0000 (13:47 -0600)]
loader: Fix Dbg entrypoints with instance param to not loop all instances

DbgRegisterMsgCallback, DbgUnregisterMsgCallback, DbgSetGlobalOption were all
making these calls for all instances rather than just instance passed in as
parameter.