hayodea
eddee05e41
Delete: qualeBundle.h
2025-10-05 21:44:12 -04:00
hayodea
ccc7fd8e04
Rename: Concept=>Cologex
2025-10-05 21:43:46 -04:00
hayodea
eb810e62e9
Todo: update
2025-10-04 14:52:25 -04:00
hayodea
3a50be05f8
Qutex: nRequiredLocks==1 at front should never call backoff
2025-10-04 14:52:02 -04:00
latentprion
168d8d616c
Todo: update
2025-10-04 11:16:04 -04:00
latentprion
16775c6f1e
Todo: update
2025-10-04 10:42:39 -04:00
hayodea
385b7d5a3c
Todo: Investigate MWait to reduce spinlock power usage
2025-10-02 20:19:54 -04:00
hayodea
d857999fdf
Update comment notes
2025-10-02 01:14:04 -04:00
hayodea
fa2609f4ce
User /includes: Add common stim frame types header
2025-10-02 00:29:09 -04:00
hayodea
a91a995407
Config.h.in: Remove these "legacy" artifacts
2025-10-01 20:04:21 -04:00
hayodea
eb5875fe0d
Rename: Sense API => Stim Buff API
2025-10-01 20:03:47 -04:00
hayodea
56b8e83a09
Update senseApiDesc.h and opts.cpp for clarity in device attachment and usage examples
2025-10-01 18:20:59 -04:00
hayodea
a66d91fa31
DevAttachment:Rename: api=>stimbuffapi, implexor=>qualeiface
2025-10-01 18:10:58 -04:00
hayodea
b69572eee7
Update livoxGen1 stimbuffapi
2025-10-01 14:13:27 -04:00
hayodea
b771856330
Update docs on DAP specs and DA specs
2025-10-01 13:27:37 -04:00
hayodea
c7ca889e9c
Rename DASpec.md=>deviceAttachmentPipelineSpec.md
2025-10-01 13:15:11 -04:00
hayodea
da1ca774e7
Version: Bump version to v0.01.000
v0.01.000
2025-10-01 11:30:19 -04:00
hayodea
abc11bc7fc
LivoxGen1: Remove obsolete locking comment
...
We have now implemented serialization for device at/detachment
2025-10-01 11:28:59 -04:00
hayodea
1b29f0e521
CMake: Terser config tokens
2025-10-01 11:08:59 -04:00
hayodea
f40225681c
Update todo
2025-10-01 11:02:53 -04:00
hayodea
e9e273c012
CMake: PRefix config opt with CONFIG_
2025-10-01 11:02:28 -04:00
hayodea
942f9d8515
DevMgr: formatting
2025-10-01 10:21:32 -04:00
hayodea
1e22656299
DevMgr: Call uniq_ptr.release on DeviceReattacher
2025-10-01 10:19:08 -04:00
hayodea
80004ab1e7
CMake: Device Reattacher period is now 2000ms
2025-09-30 23:10:10 -04:00
hayodea
55fe2675df
DevMgr: Use releaseQutexEarly
2025-09-30 22:53:17 -04:00
hayodea
af19125ac2
Qutex: Add check for double-release()
2025-09-30 22:53:01 -04:00
hayodea
eb7fe11de4
SerialAsyncContin/LockSet: add releaseQutexEarly()
...
This method allows us to avoid double-release()ing qutexes when we
want to release a qutex early. If we don't use releaseQutexEarly(),
then inside of callOriginalCb when LockSet::release is called, the
Qutex will be release()d a second time.
2025-09-30 22:47:54 -04:00
hayodea
7ddbde1a2f
DevMgr:removeDASpec: Make serialized; acquire DevMgr qutex
2025-09-30 22:10:39 -04:00
hayodea
ac3d97b3ec
DevMgr:newDASpecInd: now lockvoked, acquires DevMgr qutex
...
We now acquire the DevMgr qutex when doing the newDASpecInd async
op. The qutex is held across an async sequence with potentially
a real hardware blocking bottleneck.
2025-09-30 22:01:34 -04:00
hayodea
274143e41d
Formatting
2025-09-30 21:40:26 -04:00
hayodea
d75430ef82
Qutex: Document the need to deal with early release()s
2025-09-30 21:25:58 -04:00
hayodea
06f3f2eebe
DevMgr:attachAllUnattachedDevicesFromKnownListReq: acquire qutex
...
We should acquire the qutex here before iterating through the list
of DA specs.
2025-09-30 21:24:51 -04:00
hayodea
07609c6d6c
SenseApiLib:Add isBeingDestroyed atomic flag for getter bailout
...
Since we have no choice but to access the sh_ptr<SenseApiLib> for
a lib before we can get its Qutex, we use this flag to ensure that
we can know whether the SenseApiLib data structure and its Qutex
are still valid when we enter -- i.e, we ensure that the SenseApiLib
object wasn't destroyed under our feet.
2025-09-30 21:01:00 -04:00
hayodea
1bad358921
DevMgr:at/detachSenseDevReq: release SenseApiMgr Qutex early
...
Release it early when we no longer need it.
2025-09-30 20:29:39 -04:00
hayodea
77e123ff4a
DevMgr:at/detachSenseDevReq: acquire SenseApiMgr qutex
2025-09-30 19:53:57 -04:00
hayodea
9c3a8ea695
Indentation
2025-09-30 19:51:50 -04:00
hayodea
0ff86a0a5e
SenseApiMgr: Add Qutex
2025-09-30 19:51:01 -04:00
hayodea
8ad5179a61
DevMgr:at/detachSenseDevReq: only acquire API lib lock
...
We don't actually manipulate any of SenseApiMgr or DevMgr's state
so there's no need to acquire their locks.
2025-09-30 19:47:23 -04:00
hayodea
e600b0f96e
DevMgr:at/detachSenseDevReq: acquire Api lib Qutex
2025-09-30 18:12:20 -04:00
hayodea
b0d61c3e38
DevMgr:at/detachSenseDevReq: Acquire DevMgr Qutex
2025-09-30 14:22:51 -04:00
hayodea
296e517389
SerAsyncContin: Make LockSet vector constructor arg mandatory
2025-09-30 14:22:12 -04:00
hayodea
758586bb3c
LockerAndInvoker: Move template method impls around
2025-09-30 14:07:13 -04:00
hayodea
ccf0ab77bf
Move SerializedAsyncContin template method impls into header
2025-09-30 13:59:07 -04:00
hayodea
774661e1f0
AsyncContinChainLink: Make getCallersContinuationShPtr() const
2025-09-30 13:59:07 -04:00
hayodea
33b61f429a
LockSet: Move method impls into template header
2025-09-30 13:42:13 -04:00
hayodea
7ded9d287d
Split comment into relevant locations
2025-09-30 13:27:06 -04:00
hayodea
a55bcc2a03
LockerAndInvoker: better var naming
2025-09-30 10:43:30 -04:00
hayodea
f15c07bc83
LockSet:tryAcquireOrBackoff use optional<ref_wrapper<Qutex>>
...
Replace the previous Qutex** raw pointer with a std::optional.
2025-09-30 10:36:19 -04:00
hayodea
e3ce533fe4
Use optional for type-safe retval
2025-09-30 10:22:28 -04:00
hayodea
2075c0b797
Get Lval for sh_ptr and fix build error
2025-09-30 03:53:47 -04:00