Tobin Ehlis [Tue, 20 Jan 2015 16:48:48 +0000 (09:48 -0700)]
layers: Updated API codegen to handle AllocDescriptorSets
Tobin Ehlis [Tue, 20 Jan 2015 20:50:59 +0000 (13:50 -0700)]
glave: Trace and replay codegen handles AllocDescriptorSets
Conflicts:
glave-generate.py
Tobin Ehlis [Mon, 19 Jan 2015 15:42:29 +0000 (08:42 -0700)]
layers: Updating MemTracker and DrawState interfaces to match API updates
Still need to update functionality internal to the layers.
Conflicts:
layers/draw_state.c
layers/mem_tracker.c
Tobin Ehlis [Fri, 16 Jan 2015 22:13:34 +0000 (15:13 -0700)]
Various code clean-ups for glave and codegen with updated xgl.h
Conflicts:
glave-generate.py
Tobin Ehlis [Fri, 16 Jan 2015 15:56:30 +0000 (08:56 -0700)]
Added Mark's change to track Fence submit
Conflicts:
layers/object_track.h
Tobin Ehlis [Fri, 16 Jan 2015 00:53:54 +0000 (17:53 -0700)]
Glave now compiling although I'm certain it's very broken.
Time to start sifting through the code now to make it as functional as possible for when the driver catches up and we can really test things again.
Conflicts:
glave-generate.py
Tobin Ehlis [Fri, 16 Jan 2015 00:51:52 +0000 (17:51 -0700)]
All of the codegen for layers is now working well enough that the generated layers will compile.
Lots of updates required to DrawState and MemTracker layers so just commenting them out the build initially.
Conflicts:
layers/draw_state.c
layers/multi.cpp
xgl-layer-generate.py
xgl.py
Jon Ashburn [Thu, 29 Jan 2015 23:54:38 +0000 (16:54 -0700)]
instance: Remove xglInitAndEnumerateGpus
Jon Ashburn [Thu, 29 Jan 2015 23:44:24 +0000 (16:44 -0700)]
loader: Add loops for multiple instances on global debug calls
Jon Ashburn [Thu, 29 Jan 2015 22:47:01 +0000 (15:47 -0700)]
demos: Convert to using Instancing API rather than xglInitAndEnumerateGpus()
Jon Ashburn [Thu, 29 Jan 2015 22:45:51 +0000 (15:45 -0700)]
loader: Finish implement CreateInstance and DestroyInstance
Jon Ashburn [Thu, 29 Jan 2015 02:57:09 +0000 (19:57 -0700)]
loader: Implement EnumerateGpus()
Jon Ashburn [Thu, 29 Jan 2015 01:26:16 +0000 (18:26 -0700)]
intel: Instance functions create and destroy objects
Also they do the same init and removal as existing InitAndEnumerateGpus.
Jon Ashburn [Wed, 28 Jan 2015 18:01:35 +0000 (11:01 -0700)]
loader: Place icds into the instance, scan icds prior to instance create
Jon Ashburn [Mon, 26 Jan 2015 21:51:40 +0000 (14:51 -0700)]
instance: Added initial {Create|Destroy}Instance() and xglEnumerateGpus().
For now, retain the existing InitAndEnumerateGpus and have it create one
instance. New APIs aren't fully implemented yet in driver or loader.
Mark Lobodzinski [Thu, 29 Jan 2015 20:24:14 +0000 (14:24 -0600)]
xgl: Fix pMemBarriers references
Arrays of MemBarrier pointers were incorrectly declared. Reference
bug #13273, for xgl header rev #42.
Mark Lobodzinski [Thu, 29 Jan 2015 14:55:56 +0000 (08:55 -0600)]
xgl: Remove XGL_* typedef wrappers
Part of moving to xgl.h rev#38, svn rev 29293-29302
Mark Lobodzinski [Thu, 29 Jan 2015 16:04:52 +0000 (10:04 -0600)]
xgl: Updated headers for some missed SVN revisions
Miscellaneous updates for SVN revs 29191, 29205 and 29241. Basically
adding MAX_ENUM, copyright notices, and improved type definitions.
Jon Ashburn [Wed, 28 Jan 2015 22:05:09 +0000 (15:05 -0700)]
intel: Fix DBG_OBJECT_TYPE range
Mark Lobodzinski [Wed, 28 Jan 2015 19:29:48 +0000 (13:29 -0600)]
xgl: Add fast clear APIs
Added new APIs for optimized clears of color and depth buffers.
Bug# 13172, due to a bug in rev39, this also accounts for the change
in rev41.
Courtney Goeltzenleuchter [Tue, 27 Jan 2015 18:07:21 +0000 (11:07 -0700)]
xgl: Remove extraneous structSizes
Alpha header rev: r29437
Bug #13299
Courtney Goeltzenleuchter [Tue, 27 Jan 2015 17:54:01 +0000 (10:54 -0700)]
xgl: header updates for XGL_RESULT
alpha header version: r29593
XGL_RESULT is the XGL return codes.
Agreement part of F2F Jan 26, 2015.
Chia-I Wu [Wed, 28 Jan 2015 06:00:47 +0000 (14:00 +0800)]
xgl: fix constness of pointers
Mark Lobodzinski [Tue, 27 Jan 2015 19:24:03 +0000 (13:24 -0600)]
xgl: Add framebuffer-no-attachment support
Add default values if no attachments are present, correctly handle
override values when attachments are present. Bug# 13212, header
revision #36.
Jeremy Hayes [Fri, 23 Jan 2015 15:51:43 +0000 (08:51 -0700)]
Update XGL_FORMAT.
Mark Lobodzinski [Mon, 26 Jan 2015 23:06:34 +0000 (17:06 -0600)]
xgl: Add begin/end_range to all enums
Cosmetic change to xgl header for rev# 37, bug# 13244.
Mark Lobodzinski [Mon, 26 Jan 2015 23:02:32 +0000 (17:02 -0600)]
xgl: Rename XGL_WAIT_EVENT enum in header
For svn rev# 29226, generalized an XGL_WAIT_EVENT enum.
Courtney Goeltzenleuchter [Mon, 26 Jan 2015 22:09:47 +0000 (15:09 -0700)]
xgl: Bump rev for Command Atomic update
Bug #: 12997
Alpha header revision: r29249
Courtney Goeltzenleuchter [Wed, 21 Jan 2015 16:59:59 +0000 (09:59 -0700)]
xgl: Remove xglCmdAtomics
Implement changes for alpha header version 0.35.
Bug #12998.
Mark Lobodzinski [Mon, 26 Jan 2015 16:34:00 +0000 (10:34 -0600)]
xgl: Rename semaphore enums
Cosmetic xgl header change for xgl.h revision #40.
Jon Ashburn [Tue, 20 Jan 2015 23:59:42 +0000 (16:59 -0700)]
memory alloc: Remove last heaps from memory alloc and requirements
Also reorder memory_alloc_info struct as memPriority added back in as last
member in struct.
Conflicts:
demos/cube.c
demos/tri.c
icd/intel/buf.c
icd/intel/event.c
icd/intel/img.c
icd/intel/mem.c
icd/intel/pipeline.c
icd/intel/query.c
include/xgl.h
tests/image_tests.cpp
tests/init.cpp
tests/render_tests.cpp
tests/xgltestbinding.cpp
tests/xgltestbinding.h
Jon Ashburn [Tue, 20 Jan 2015 23:38:02 +0000 (16:38 -0700)]
memory alloc: Remove alignment from alloc_info structure
Conflicts:
icd/intel/mem.c
Jon Ashburn [Tue, 20 Jan 2015 22:06:59 +0000 (15:06 -0700)]
memory alloc: Remove MEMORY_ALLOC_FLAGS add MEMORY_TYPE
Jon Ashburn [Tue, 20 Jan 2015 20:55:32 +0000 (13:55 -0700)]
memory alloc: Remove memory_heap flags replace with memory_property flags
Conflicts:
include/xgl.h
tests/image_tests.cpp
tests/init.cpp
tests/xgltestbinding.h
Jon Ashburn [Mon, 19 Jan 2015 22:00:26 +0000 (15:00 -0700)]
memory alloc: Add IMAGE and BUFFER alloc info structures
For images have the tests fill in the IMAGE_ALLOC structures. For buffers
this is not yet done.
Conflicts:
demos/cube.c
demos/tri.c
include/xgl.h
tests/init.cpp
tests/xgltestbinding.cpp
Jon Ashburn [Fri, 16 Jan 2015 16:37:43 +0000 (09:37 -0700)]
memory alloc: Add MEMORY_ALLOCATION_COUNT support and usage in tests.
Driver always does one allocation but tests support drivers with N allocations.
Conflicts:
demos/cube.c
demos/tri.c
tests/image_tests.cpp
tests/render_tests.cpp
Jon Ashburn [Thu, 15 Jan 2015 17:39:19 +0000 (10:39 -0700)]
memory alloc: Add allocation index to BindObjectMemory
For now it is always index 0. Updates, driver, glave, tests, demos, include,
and layers.
Jon Ashburn [Wed, 14 Jan 2015 17:44:00 +0000 (10:44 -0700)]
memory alloc: Remove xglGetMemoryHeapXXX from driver,loader, glave, layers
Jon Ashburn [Wed, 14 Jan 2015 16:56:21 +0000 (09:56 -0700)]
demos: Remove calls to xglGetMemoryHeapXXX in xglinfo
Chia-I Wu [Sun, 4 Jan 2015 08:27:24 +0000 (16:27 +0800)]
xgl: move to new resource binding model
All except layout(set=) is supported. The change to
pipeline_compiler_interface.{cpp,h} is ugly and fragile. It should be fixed
after adding layout(set=) support.
Chia-I Wu [Fri, 16 Jan 2015 14:31:25 +0000 (22:31 +0800)]
demos, tests: use XGL_BUFFER_VIEW_RAW for constant buffers
Chia-I Wu [Sun, 18 Jan 2015 06:51:02 +0000 (14:51 +0800)]
complete fixed-function vertex fetch support
Update xgl.h (cosmetic changes only). Add support for new formats.
v2: fix blit tests and enhance xglinfo for new formats
Courtney Goeltzenleuchter [Fri, 23 Jan 2015 21:00:52 +0000 (14:00 -0700)]
BIL: Update to support descriptor set GLSL features
Courtney Goeltzenleuchter [Fri, 23 Jan 2015 18:47:02 +0000 (11:47 -0700)]
xgl: Fix syntax error
Mike Stroyan [Mon, 19 Jan 2015 18:37:12 +0000 (11:37 -0700)]
xgl: resource transition integrated, update xgl.h version
Mike Stroyan [Thu, 4 Dec 2014 11:08:39 +0000 (11:08 +0000)]
xgl: Resource transition proposal from Bug 12904.
Added resource transition proposal from Bug 12904.
Updated function prototypes.
Added XGL_IMAGE_CREATE_MUTABLE_FORMAT_BIT based on Intel's request.
Unless this flag is specified, image views created from the image must match the base format.
xgl.py: changes for resource tracking
loader: changes for resource tracking
icd: changes for resource tracking
tests: changes for resource tracking
demos: changes for resource tracking
Courtney Goeltzenleuchter [Wed, 21 Jan 2015 00:54:08 +0000 (17:54 -0700)]
xgl: Dynamic State complete, update header version
Tony Barbour [Fri, 16 Jan 2015 21:27:35 +0000 (14:27 -0700)]
driver:implement changes for Dynamic State
Courtney Goeltzenleuchter [Fri, 16 Jan 2015 00:19:45 +0000 (17:19 -0700)]
xgl: Buffer Object integrated, update xgl.h version
Chia-I Wu [Wed, 31 Dec 2014 23:55:04 +0000 (07:55 +0800)]
update for buffer object changes
Courtney Goeltzenleuchter [Thu, 15 Jan 2015 20:02:34 +0000 (13:02 -0700)]
xgl: Tiler updates complete, Update header version
Jeremy Hayes [Wed, 14 Jan 2015 23:17:08 +0000 (16:17 -0700)]
misc: Fix tiler rebase in driver, tests, include
Jon Ashburn [Sat, 3 Jan 2015 01:28:26 +0000 (18:28 -0700)]
glave: Make tiler GPU changes work for tracing and replaying
The tracing and replay code gen didn't handle all the special cases
for the removal of CmdBindAttachments() and the addition of nested structures
with pointers and objects in the three APIs: CreateFramebuffer,
CreateRenderPass, BeginCommandBuffer. It now does!
Jon Ashburn [Sat, 3 Jan 2015 01:24:05 +0000 (18:24 -0700)]
demos: Remove CmdBindAttachments() for tiler Gpus
Jon Ashburn [Sat, 3 Jan 2015 01:22:38 +0000 (18:22 -0700)]
layers: Remove CmdBindAttachment() for tiler GPUs
Jon Ashburn [Sat, 3 Jan 2015 01:15:22 +0000 (18:15 -0700)]
include: Remove CmdBindAttachments()
Jon Ashburn [Thu, 1 Jan 2015 00:11:49 +0000 (17:11 -0700)]
layers: Update BeginCommandBuffer API for Tiler Gpus
Jon Ashburn [Thu, 1 Jan 2015 00:08:35 +0000 (17:08 -0700)]
demos: Change BeginCommandBuffer for Tiler Gpus
Jon Ashburn [Wed, 31 Dec 2014 23:56:13 +0000 (16:56 -0700)]
include: xglBeginCommandBuffer API changed for Tiler Gpus
Bump version patch number also.
Jon Ashburn [Wed, 31 Dec 2014 18:30:53 +0000 (11:30 -0700)]
glave: Add support for new APIs to support Tiler Gpus
Adds support for xglCreateFramebuffer and xglCreateRenderPass
Jon Ashburn [Wed, 24 Dec 2014 19:09:06 +0000 (12:09 -0700)]
include: Add new API changes including structs/enums for Tiling GPU support
Omit changes for now that alter existing APIs: xglcmdBindAttachments and
xglBeginCommandBuffer
Bump the API version patch number, since we are diverging our version numbers
from the SVN history. This is necessary since we are not implementing header
changes in the same order they were added to SVN header.
Jeremy Hayes [Wed, 14 Jan 2015 21:58:37 +0000 (14:58 -0700)]
XGL: Move to svn r28460.
Courtney Goeltzenleuchter [Wed, 14 Jan 2015 22:21:10 +0000 (15:21 -0700)]
xgl: Do not build layers or glave during xgl.h update
Cody Northrop [Tue, 27 Jan 2015 18:31:41 +0000 (11:31 -0700)]
cmake: Fix BIL overlay to glslang
Chia-I Wu [Sun, 18 Jan 2015 03:09:29 +0000 (11:09 +0800)]
cmake: fix up gtest and set -fvisibility=hidden globally
GregF [Tue, 20 Jan 2015 18:55:00 +0000 (11:55 -0700)]
icd: update glslang, bil and lunarglass
Move ahead with versions installed by update_external_sources.sh
GregF [Tue, 20 Jan 2015 18:51:00 +0000 (11:51 -0700)]
icd: Link ICD with -Bsymbolic
We were previously linking with -Bsymbolic-functions, but this was not
sufficient as it caused glslang virtual function calls to still be linked
to rendersystemtest copy of glslang.
Jon Ashburn [Fri, 16 Jan 2015 16:48:37 +0000 (09:48 -0700)]
include: set version to 0.22.1 for recent ABI changes
While this branch is divereged from Khronos SVN sequence of xgl.h versions.
Any ABI change in this branch should increment the patch number: XX.YY.ZZ++.
Glave relies on the xgl.h version number to track trace file compatibility.
Jon Ashburn [Fri, 16 Jan 2015 15:46:38 +0000 (08:46 -0700)]
loader: Fix infinite loop on layer library scan if dlopen fails
Chia-I Wu [Thu, 15 Jan 2015 20:55:47 +0000 (04:55 +0800)]
xgl.py: missing xgl prefix in XGL_LAYER_DISPATCH_TABLE
67ac8db7571aa07cdce3dcaa39102198639f52f1 is incomplete.
Tobin Ehlis [Wed, 14 Jan 2015 19:47:30 +0000 (12:47 -0700)]
layers: Updated MemTracker to track per-region memory transition states for allocations
Tobin Ehlis [Thu, 8 Jan 2015 22:22:32 +0000 (15:22 -0700)]
layers: Added per-region memory state tracking
Initially only tracking mem transitions. Need to validate these and still have further work with images.
Tobin Ehlis [Thu, 8 Jan 2015 00:49:29 +0000 (17:49 -0700)]
layers: Enhancements to MemTracker and DrawState
DrawState flags error when Descriptor Set that hasn't had "EndUpdate" called is bound to cmd buffer.
Moved MemTracker struct defines to header.
Added State to memory objects and flag state transition errors at prepare time
Added CreateInfo for all object types that can be bound to memory
Jon Ashburn [Wed, 14 Jan 2015 15:52:37 +0000 (08:52 -0700)]
Revert "layers: Fix generation of EnumerateLayers in APIDump"
This reverts commit
9c8e8a955eded8788a68c694cea11742e8d84690.
Stale generated code was the real issue.
Jon Ashburn [Tue, 13 Jan 2015 23:33:56 +0000 (16:33 -0700)]
layers: Fix generation of EnumerateLayers in APIDump
Courtney Goeltzenleuchter [Tue, 13 Jan 2015 22:33:33 +0000 (15:33 -0700)]
xgl_helper: Eliminate compiler not used warning
Using static inline vs. static only prevents the compiler
from complaining that the functions have been defined but
not used.
Courtney Goeltzenleuchter [Tue, 13 Jan 2015 22:32:18 +0000 (15:32 -0700)]
layers: Make sure we deref pointers to counts
For functions that can return a count of elements, be sure to
dereference that pointer when looping over the array.
Jon Ashburn [Tue, 13 Jan 2015 15:38:14 +0000 (08:38 -0700)]
layers: Fix APIDump param generation for Cpp versus C
Remanent from the merge of glave_integration.
Peter Lohrmann [Fri, 9 Jan 2015 20:34:50 +0000 (12:34 -0800)]
glvreplay_xgl: Add 'EnableLayers' setting to control which XGL validation layers get enabled.
* The string is a comma separated list of layer names, defaulting to "Drawstate,ObjectTracker".
* Fix the way in which the settings are assigned to the default values, as the previous approach was attempting to delete the default 'EnableLayers' value, which would have caused problems eventually.
Peter Lohrmann [Fri, 9 Jan 2015 03:47:03 +0000 (19:47 -0800)]
glave: Update xgl debugger and replayer to include support for settings.
* glvreplay_xgl has a 'debugLevel' setting that is used to control the validation level.
* glvdebug_xgl has a 'supportDrawCalls' placeholder setting that is not currently hooked up.
Jon Ashburn [Fri, 19 Dec 2014 19:31:19 +0000 (12:31 -0700)]
glave: Fix xglCreateDevice replay code to not modify packet.
Fixes sporadic crashes on multiple replays.
Jon Ashburn [Fri, 19 Dec 2014 16:32:33 +0000 (09:32 -0700)]
glave: Remove MemTracker and replace with ObjectTracker
Too many tests cause MemTracker to spew a ton of errors.
Also don't print Info or Warnings during DbgCall in replayer as the
validation layers are too chatty!
Jon Ashburn [Fri, 19 Dec 2014 00:03:34 +0000 (17:03 -0700)]
glave: Register a handler in replayer for error msg callbacks and report these
Hook up DbgMsgCallbacks from validation layers to replayer. Log Warnings
and Info messages. For Error messages log them and also fail the replay of
the packet that caused it.
By default enable debug level 4 in debugger and layers MemTracker and DrawState.
Tobin Ehlis [Thu, 18 Dec 2014 22:20:05 +0000 (15:20 -0700)]
layers: APIDump* layers now print input array elements
Conflicts:
xgl-layer-generate.py
Tobin Ehlis [Thu, 18 Dec 2014 20:51:21 +0000 (13:51 -0700)]
layers: ParamChecker handles dynamic arrays of structs
Tobin Ehlis [Thu, 18 Dec 2014 17:32:57 +0000 (10:32 -0700)]
layers: Updated README to include ParamChecker
Conflicts:
layers/README.md
Tobin Ehlis [Thu, 18 Dec 2014 16:29:58 +0000 (09:29 -0700)]
layers: Validate structs embedded in structs
Jon Ashburn [Mon, 12 Jan 2015 22:46:51 +0000 (15:46 -0700)]
layers: Add comment to xgl_helper.py
Tobin Ehlis [Thu, 18 Dec 2014 15:44:01 +0000 (08:44 -0700)]
layers: Add ENUM param checks to "gpu" funcs
Tobin Ehlis [Thu, 18 Dec 2014 00:44:50 +0000 (17:44 -0700)]
layers: Initial ParamChecker layer
ParamChecker layer is generated and currently only checks that ENUM input to functions or ENUMS as part of input structs have valid values.
Conflicts:
layers/CMakeLists.txt
Chia-I Wu [Sat, 10 Jan 2015 15:21:30 +0000 (23:21 +0800)]
icd: clean up build rules
- lowercase local variables
- 4-space indentation
- use FindUdev
- use target_include_directories
- use target_link_libraries
Chia-I Wu [Sat, 10 Jan 2015 15:16:41 +0000 (23:16 +0800)]
cmake: use find_package() for XCB
Chia-I Wu [Sat, 10 Jan 2015 15:15:51 +0000 (23:15 +0800)]
cmake: add find modules
Add Find{DRM,UDev,XCB}.cmake. Require 2.8.11 for FOUND_VAR support in
find_package_handle_standard_args().
Chia-I Wu [Tue, 13 Jan 2015 03:03:58 +0000 (11:03 +0800)]
xgl.py: fix prototype paring
Drop "xgl" prefix.
Mark Lobodzinski [Fri, 9 Jan 2015 21:12:03 +0000 (15:12 -0600)]
xgl: Add xgl header changes for rev30 and 31.
Switched EnumerateLayer parameter order, added conditional definition
of xgl function prototypes, and prepended 'xgl' to all function
prototypes. This included fixes for bugs #13173 and #13180.
Tobin Ehlis [Sat, 10 Jan 2015 19:42:41 +0000 (12:42 -0700)]
layers: Create APIDump[NoAddr]Cpp layers using c++ string and streams
This is fully functional version of APIDump & APIDumpNoAddr using std::string and i/o streams
Hopefully this will fix a few random crashes that were being hit with rendersystemtests & APIDump
Long term we won't keep generating so many different APIDump layers.
The main APIDump layer will be the Cpp version and it will have settings file options to vary file i/o and noaddr along with any new options.
We should keep the C version of APIDump around until we're sure we don't need it, though.
Tobin Ehlis [Thu, 8 Jan 2015 21:26:53 +0000 (14:26 -0700)]
layers: Default MemTracker and DrawState to verbose stdout mode when no settings file present.
Jon Ashburn [Sat, 10 Jan 2015 00:36:10 +0000 (17:36 -0700)]
glave: Add GLVLIB_TRACE_IPADDR env var for remote system tracing
Setting this env var will make the xlg tracer library send packets to
a remote system rather than the local system.
Jon Ashburn [Sat, 10 Jan 2015 00:30:41 +0000 (17:30 -0700)]
glave: Add XGL_LAYER_CREATE_INFO structure to trace files
Recent test changes was adding this structure to the DEVICE_CREATE_INFO
structure. this was causing a regresiion in Glave.
Chia-I Wu [Sat, 10 Jan 2015 03:43:05 +0000 (11:43 +0800)]
layers: xgl-helper.py depends on xgl.h
This makes sure helpers are regenerated when xgl.h is edited.