Modify soft devices to synchronize TSEL=-2 timestamps

Use dbLinkDoLocked() to ensure a timestamp set by TSEL=-2
comes from the same update as the value.
This commit is contained in:
Andrew Johnson
2017-04-19 16:50:38 -05:00
parent d2db634ed2
commit 89f13aa51b
15 changed files with 236 additions and 62 deletions
+11
View File
@@ -20,6 +20,17 @@
-->
<h3>Synchronized Timestamps with TSEL=-2</h3>
<p>Most Soft Channel input device support routines have supported fetching the
timestamp through the INP link along with the input data. However before now
there was no guarantee that the timestamp provided by a CA link came from the
same update as the data, since the two were read at separate times without
maintaining a lock on the CA input buffer. This shortcoming has been fixed as
part of the new link support code, which allows code using a link to pass a
subroutine to the link type to be run with the link locked. The subroutine may
make multiple requests for metadata from the link, but must not block.</p>
<h3>Device Support Address Type <tt>JSON_LINK</tt></h3>
<p>Device support may be written to expect hardware addresses in the new