Commit graph

934 commits

Author SHA1 Message Date
Jakob Bornecrantz cf8dfe6357 st/prober: Prefer deb_path for finding usb bus and addr 2019-06-21 17:04:27 +01:00
Jakob Bornecrantz a3ae5ae453 st/prober: Probe for V4L devices 2019-06-21 17:04:27 +01:00
Jakob Bornecrantz cb44c822d2 st/prober: Refactor hidraw enumeration code in udev file 2019-06-21 17:04:27 +01:00
Jakob Bornecrantz dfdc794272 st/prober: Refactor libuvc code to own file 2019-06-21 17:04:27 +01:00
Jakob Bornecrantz d9b820c834 st/prober: Refactor libusb code to own file 2019-06-21 17:04:25 +01:00
Jakob Bornecrantz 7f07cee387 st/prober: Guard libudev usage 2019-06-21 17:03:20 +01:00
Jakob Bornecrantz d30cd0b639 st/oxr: Fix segfault due to bad U_ZERO of sub_paths 2019-06-18 21:32:08 +01:00
Ryan Pavlik e70a28b912 st/oxr: Fix enumerating swapchain formats on headless
Operating on the assumption that it's OK to pass a null countOutput sometimes.
2019-06-18 15:17:53 -05:00
Ryan Pavlik 93c5ae105f st/oxr: Fix typo. 2019-06-18 14:46:51 -05:00
Ryan Pavlik c327d5e48c st/oxr: Banish remaining bare calloc calls. 2019-06-18 14:14:01 -05:00
Ryan Pavlik 661fa79057 st/prober: Use U_ZERO 2019-06-18 14:14:01 -05:00
Ryan Pavlik bc4b36ed61 st/oxr: Use U_ZERO 2019-06-18 14:14:01 -05:00
Jakob Bornecrantz 739b6b7895 st/oxr: Code style fix 2019-06-18 13:09:59 -05:00
Ryan Pavlik 58f5d56d48 st/oxr: Code style fix 2019-06-18 13:09:59 -05:00
Ryan Pavlik 2228a00b08 st/oxr: Codespell fix 2019-06-18 13:09:59 -05:00
Jakob Bornecrantz e745a28374 st/oxr: Basic foundation for input and output
This commits lays the foundation for actions in Monado (input and output).
There are lots of things missing and non-conformant in there. But once in
more people then just me can test it out and work on it.
2019-06-18 17:56:10 +01:00
Benjamin Saunders 41ad2b872c st/oxr: Accept nonnull subactionPaths when countSubactionPaths is 0
It's not clear that this is forbidden, and it can make the caller's
life a little easier.
2019-06-14 12:06:00 -07:00
Ryan Pavlik 06cb5d680b st/oxr: Check requested OpenXR API version.
Conformance.
2019-06-12 15:40:19 -05:00
Ryan Pavlik 0bdb4e4aeb st/oxr: Unify checking of system ID, and do so in createSession 2019-06-12 15:40:19 -05:00
Ryan Pavlik 052728d515 st/oxr: Don't break on function unsupported errors. 2019-06-12 15:39:26 -05:00
Jakob Bornecrantz 8aec512de3 xrt: Update prober interface 2019-06-10 14:47:19 +01:00
Jakob Bornecrantz 1f64f714f6 xrt: Add input, hmd_parts and tracking interface
This patch has been spun of the rather massive amount of work for adding input
devices into Monado. The interfaces feels somewhat stable now so could do
with another pair of eyes on them, before too much work is done on st/oxr.
2019-06-10 14:47:19 +01:00
Jakob Bornecrantz 889c89590c st/oxr: Implement action stubs in oxr_input.c 2019-06-10 14:47:05 +01:00
Ryan Pavlik acec80da2f st/oxr: Fix graphics binding error codes/messages 2019-06-03 22:52:28 +00:00
Ryan Pavlik dab52d319d st/oxr: Support arbitrary next chains in session creation. 2019-06-03 22:52:28 +00:00
Ryan Pavlik 0a523bef05 st/oxr: Fix verifying XrSessionCreateInfo and graphics bindings structs.
Don't enforce next == NULL, and look through entire chain for structure
type enum, using oxr_chain.h
2019-06-03 22:52:28 +00:00
Ryan Pavlik fa8047fed3 st/oxr: Add oxr_chain.h header
This should replace all manual poking of the next chain.
Prefer the macros over the functions since they'll do your casting for you.
2019-06-03 22:52:28 +00:00
Ryan Pavlik e944bcb96f st/oxr: Parenthesize macro args.
Found by upcoming modifications.
2019-06-03 22:52:28 +00:00
Ryan Pavlik 74065d49dd st/oxr: Remove incorrect check in OXR_VERIFY_TYPE_AND_NULL
We are to ignore any unexpected types in a next chain.
2019-06-03 22:52:28 +00:00
Ryan Pavlik 9c979099e3 st/oxr: Fix some error message formatting in oxr_verify 2019-06-03 17:48:59 -05:00
Ryan Pavlik 0696203858 st/oxr: Document message style for oxr_error 2019-06-03 17:48:39 -05:00
Jakob Bornecrantz d97df04c11 xrt: Add new prober interface and code 2019-05-16 20:41:35 +01:00
Christoph Haag 09e9771a2d st/oxr: fix path length verification
We can't assume the string is null terminated.
2019-05-09 17:49:03 +00:00
Jakob Bornecrantz d5f5d9f354 st/oxr: Set session on action spaces 2019-05-09 12:42:28 +01:00
Jakob Bornecrantz a70fdba30e st/oxr: Move CMakeLists.txt into base directory 2019-05-03 18:53:24 +01:00
Jakob Bornecrantz dc9ab44a5a xrt: Rename xrt_prober to xrt_auto_prober 2019-05-03 18:53:07 +01:00
Benjamin Saunders 13cef1b8b9 comp: Support rendering individual array layers 2019-05-01 17:45:43 -07:00
Benjamin Saunders b6f2013bc5 st/oxr: Frame end uses the most recently released image 2019-05-01 17:45:43 -07:00
Ryan Pavlik 3a4e020920 st/oxr: Fix conformance issue in begin session. 2019-04-24 02:41:34 +00:00
Benjamin Saunders 570ba1ae88 st/oxr: Initialize action act_set pointer
Fixes a segfault in OXR_VERIFY_ACTION_AND_INIT_LOG
2019-04-22 09:19:59 -07:00
Jakob Bornecrantz bc77052493 st/oxr: Tidy code style 2019-04-20 02:54:23 +01:00
Benjamin Saunders 1da5cd9914 st/oxr: Initialize action set session pointer
Fixes a segfault in OXR_VERIFY_ACTION_AND_INIT_LOG
2019-04-15 09:52:40 +01:00
Benjamin Saunders 9b774cbd72 st/oxr: Verify action names 2019-04-15 09:52:37 +01:00
Benjamin Saunders f32cab368f st/oxr: Fix error code for empty path segments 2019-04-15 09:52:34 +01:00
Benjamin Saunders a776b94147 st/oxr: Fix localized name validation 2019-04-15 09:52:30 +01:00
Jakob Bornecrantz a6ea2816cb st/oxr: Tidy off by one error 2019-04-12 11:48:25 +01:00
Jakob Bornecrantz 98c91ccb25 st/oxr: Tidy code style 2019-04-12 11:46:59 +01:00
Jakob Bornecrantz fcdfd9d97d st/oxr: Pipe some path functions down into the path store 2019-04-12 11:30:01 +01:00
Jakob Bornecrantz 77b3b7b840 st/oxr: Add a path store 2019-04-12 11:30:01 +01:00
Jakob Bornecrantz 9173e1d31c st/oxr: Add code to verify full paths 2019-04-12 11:30:01 +01:00
Jakob Bornecrantz 51b5d55e61 st/oxr: Use correct error returns in single level path
Spotted by Ryan.
2019-04-12 11:30:01 +01:00
Ryan Pavlik 611febab5a st/oxr: Switch logger to using XRT_DEBUGBREAK 2019-04-08 19:49:38 +00:00
Ryan Pavlik 891eb7f1c4 st/oxr: Add a debug option to break/trap on error.
Might be useful for debugging, since once the consuming call has returned,
you've lost most of the context of what led to the error.
2019-04-08 19:49:38 +00:00
Ryan Pavlik af2756b50a st/oxr: Fix conformance issue in xrBeginFrame 2019-04-08 14:02:36 -05:00
Ryan Pavlik 3d2d391fbe st/oxr: Fix error message for xrCreateSession.
Missing graphics binding is XR_ERROR_GRAPHICS_DEVICE_INVALID.
2019-04-08 14:02:36 -05:00
Jakob Bornecrantz 1d4e73caea st/oxr: Return correct error value 2019-04-08 19:41:30 +01:00
Jakob Bornecrantz 78afc55d94 st/oxr: Improve the fixed size single path verifier 2019-04-08 18:35:09 +00:00
Jakob Bornecrantz 6355f02ae7 st/oxr: Tidy code style 2019-04-06 09:40:54 +01:00
Ryan Pavlik 98cdb84b26 st/oxr: Simplify and dedupe session creation.
The per-graphics-binding code now just "populates"
a centrally-created session, rather than "creates".
2019-04-05 17:45:37 -05:00
Ryan Pavlik 6209e17c76 st/oxr: Make verification macros confirm that the handle is alive. 2019-04-05 17:45:37 -05:00
Ryan Pavlik e5561b9b90 st/oxr: Minimal debug messenger "implementation".
Just does enough to avoid crashing - allowing the loader, etc.
to actually handle most of it.
2019-04-05 17:45:37 -05:00
Ryan Pavlik f533d737b9 st/oxr: Improve action space stubs. 2019-04-05 17:45:37 -05:00
Ryan Pavlik 0b2b99ca89 st/oxr: Improve actionset/action stubs. 2019-04-05 17:45:37 -05:00
Ryan Pavlik a958fd2820 st/oxr: Provide handle lifecycle management 2019-04-05 17:45:37 -05:00
Jakob Bornecrantz 918b7ea467 st/oxr: Silence warning 2019-04-05 10:42:49 +01:00
Christoph Haag ab275a625e st/oxr: Use system name from xrt_device 2019-04-05 09:52:29 +01:00
Jakob Bornecrantz cae8d40c11 st/oxr: Add viewport scaling env variable 2019-04-03 17:55:20 +01:00
Jakob Bornecrantz 4540cff077 st/oxr: Silence warning
Reviewed-by: Ryan Pavlik <ryan.pavlik@collabora.com>
2019-04-01 17:07:23 +01:00
Ryan Pavlik c147607728 st/oxr: Guard frame end and frame begin for use in headless sessions.
They aren't on the list of "illegal in headless" functions.
2019-03-27 16:23:01 +00:00
Ryan Pavlik 72b0a97142 st/oxr: Enable dynamic prediction by default. 2019-03-27 16:22:56 +00:00
Ryan Pavlik 82f5a974e3 st/oxr: Optionally perform dynamic prediction. 2019-03-27 16:22:41 +00:00
Ryan Pavlik f78509ba9b st/oxr: Hand determination of frame time and interval over to compositor 2019-03-27 13:39:22 +00:00
Ryan Pavlik f6c97ec253 comp: Pass time state down into compositor 2019-03-27 13:39:22 +00:00
Jakob Bornecrantz b47b9748a5 st/oxr: Tidy code style 2019-03-27 13:35:26 +00:00
Ryan Pavlik ef633d79fb st/oxr: Silence Clang warnings about typeof 2019-03-25 19:20:23 +00:00
Ryan Pavlik 9004ea80bb xrt: Devices get a timekeeping object, must return a timestamp.
Updates drivers to match.
2019-03-25 12:28:54 -05:00
Jakob Bornecrantz 992c176143 st/oxr: Fix verify prototype and add extern C attributes 2019-03-25 01:18:17 +00:00
Benjamin Saunders c8515e142d st/oxr: Ignore graphics bindings from disabled extensions 2019-03-24 15:03:23 -07:00
Benjamin Saunders 3c9eafc1f0 st/oxr: Implement XR_KHR_headless 2019-03-24 13:25:30 -07:00
Benjamin Saunders b7023c2ec6 st/oxr: More accurate xrGetReferenceSpaceBoundsRect return code 2019-03-23 10:05:27 -07:00
Ryan Pavlik f7d990c7e3 xrt: Use U_TYPED_CALLOC 2019-03-22 13:47:51 -05:00
Ryan Pavlik 1d6207eee8 st/oxr: Fix some type issues 2019-03-22 16:54:14 +00:00
Jakob Bornecrantz 0b7a620c02 st/oxr: Do not enumerate the XR_KHR_headless extension as it is not supported yet 2019-03-21 18:54:05 +00:00
Jakob Bornecrantz 15a97422ba xrt: Add all of Monado 2019-03-18 05:52:32 +00:00