NVIDIA DRIVE OS Linux SDK API Reference

5.2.3 Release
For Test and Development only
nvmedia_dla_nvscisync.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019-2020, NVIDIA CORPORATION. All rights reserved. All
3  * information contained herein is proprietary and confidential to NVIDIA
4  * Corporation. Any use, reproduction, or disclosure without the written
5  * permission of NVIDIA Corporation is prohibited.
6  */
7 
17 #ifndef NVMEDIA_DLA_NVSCISYNC_H
18 #define NVMEDIA_DLA_NVSCISYNC_H
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
24 #include "nvmedia_core.h"
25 #include "nvscisync.h"
26 #include "nvmedia_dla.h"
27 
39 #define NVMEDIA_DLA_NVSCISYNC_VERSION_MAJOR 1
40 
41 #define NVMEDIA_DLA_NVSCISYNC_VERSION_MINOR 2
42 
47 #define NVMEDIA_DLA_MAX_PRENVSCISYNCFENCES (8U)
48 
65  NvMediaVersion *version
66 );
67 
100  const NvMediaDla *dla,
101  NvSciSyncAttrList attrlist,
102  NvMediaNvSciSyncClientType clienttype
103 );
104 
141  NvMediaDla *dla,
142  NvMediaNvSciSyncObjType syncobjtype,
143  NvSciSyncObj nvscisync
144 );
145 
174  NvMediaDla *dla,
175  NvSciSyncObj nvscisync
176 );
177 
178 #if (NV_IS_SAFETY == 0)
179 
206  NvMediaDla *dla,
207  NvSciSyncObj nvscisyncSOF
208 );
209 #endif // (NV_IS_SAFETY == 0)
210 
236  NvMediaDla *dla,
237  NvSciSyncObj nvscisyncEOF
238 );
239 
277  NvMediaDla *dla,
278  const NvSciSyncFence *prenvscisyncfence
279 );
280 
281 #if (NV_IS_SAFETY == 0)
282 
321  const NvMediaDla *dla,
322  NvSciSyncObj sofnvscisyncobj,
323  NvSciSyncFence *sofnvscisyncfence
324 );
325 #endif // (NV_IS_SAFETY == 0)
326 
364  const NvMediaDla *dla,
365  NvSciSyncObj eofnvscisyncobj,
366  NvSciSyncFence *eofnvscisyncfence
367 );
368 
369 /*
370  * \defgroup history_nvmedia_dla_nvscisync History
371  * Provides change history for the NvMedia Dla NvSciSync API
372  *
373  * \section history_nvmedia_dla_nvscisync Version History
374  *
375  * <b> Version 1.0 </b> March 14, 2019
376  * - Initial release
377  *
378  * <b> Version 1.1 </b> April 11, 2019
379  * - Add new API NvMediaDlaSetNvSciSyncObjforSOF and NvMediaDlaGetEOFNvSciSyncFence
380  * - Rename NvMediaDlaUnRegisterNvSciSyncObj to NvMediaDlaUnregisterNvSciSyncObj
381  *
382  * <b> Version 1.2 </b> Jan 22, 2020
383  * - Disable NvMediaDlaSetNvSciSyncObjforSOF and NvMediaDlaGetSOFNvSciSyncFence in
384  * safety build as they are currently unsupported.
385  *
386  */
387 
390 #ifdef __cplusplus
391 }; /* extern "C" */
392 #endif
393 
394 #endif /* NVMEDIA_DLA_NVSCISYNC_H */
NvMediaDlaFillNvSciSyncAttrList
NvMediaStatus NvMediaDlaFillNvSciSyncAttrList(const NvMediaDla *dla, NvSciSyncAttrList attrlist, NvMediaNvSciSyncClientType clienttype)
Fills the NvMediaDla specific NvSciSync attributes.
nvmedia_dla.h
NVIDIA Media Interface: DLA
NvMediaDlaGetSOFNvSciSyncFence
NvMediaStatus NvMediaDlaGetSOFNvSciSyncFence(const NvMediaDla *dla, NvSciSyncObj sofnvscisyncobj, NvSciSyncFence *sofnvscisyncfence)
Gets an SOF NvSciSyncFence for a DLA submit operation.
NvMediaNvSciSyncObjType
NvMediaNvSciSyncObjType
Defines NvMedia NvSciSyncObj types.
Definition: nvmedia_core.h:271
NvSciSyncAttrList
struct NvSciSyncAttrListRec * NvSciSyncAttrList
A container constituting an NvSciSyncAttrList which contains:
Definition: nvscisync.h:308
nvscisync.h
NVIDIA Software Communications Interface (SCI) : NvSciSync
NvMediaVersion
Holds NvMedia version information.
Definition: nvmedia_core.h:237
NvMediaDlaInsertPreNvSciSyncFence
NvMediaStatus NvMediaDlaInsertPreNvSciSyncFence(NvMediaDla *dla, const NvSciSyncFence *prenvscisyncfence)
Sets an NvSciSyncFence as a prefence for a DLA submit operation.
NvMediaDlaNvSciSyncGetVersion
NvMediaStatus NvMediaDlaNvSciSyncGetVersion(NvMediaVersion *version)
Returns the version information for the NvMedia DLA NvSciSync library.
nvmedia_core.h
NVIDIA Media Interface: Core
NvMediaDlaSetNvSciSyncObjforSOF
NvMediaStatus NvMediaDlaSetNvSciSyncObjforSOF(NvMediaDla *dla, NvSciSyncObj nvscisyncSOF)
Sets the NvSciSyncObj to be used for a Start of Frame (SOF) NvSciSyncFence.
NvMediaStatus
NvMediaStatus
Defines all possible error codes.
Definition: nvmedia_core.h:180
NvMediaDlaGetEOFNvSciSyncFence
NvMediaStatus NvMediaDlaGetEOFNvSciSyncFence(const NvMediaDla *dla, NvSciSyncObj eofnvscisyncobj, NvSciSyncFence *eofnvscisyncfence)
Gets an EOF NvSciSyncFence for a DLA submit operation.
NvMediaDlaUnregisterNvSciSyncObj
NvMediaStatus NvMediaDlaUnregisterNvSciSyncObj(NvMediaDla *dla, NvSciSyncObj nvscisync)
Unregisters an NvSciSyncObj with NvMediaDla.
NvSciSyncFence
Defines the opaque NvSciSyncFence.
Definition: nvscisync.h:234
NvMediaDla
struct NvMediaDla NvMediaDla
Holds a handle to the NvMedia DLA device.
Definition: nvmedia_dla.h:72
NvMediaDlaSetNvSciSyncObjforEOF
NvMediaStatus NvMediaDlaSetNvSciSyncObjforEOF(NvMediaDla *dla, NvSciSyncObj nvscisyncEOF)
Sets an NvSciSyncObj to be used for a End of Frame (EOF) NvSciSyncFence.
NvSciSyncObj
struct NvSciSyncObjRec * NvSciSyncObj
A Synchronization Object is a container holding the reconciled NvSciSyncAttrList defining constraints...
Definition: nvscisync.h:289
NvMediaDlaRegisterNvSciSyncObj
NvMediaStatus NvMediaDlaRegisterNvSciSyncObj(NvMediaDla *dla, NvMediaNvSciSyncObjType syncobjtype, NvSciSyncObj nvscisync)
Registers an NvSciSyncObj with NvMediaDla.
NvMediaNvSciSyncClientType
NvMediaNvSciSyncClientType
NvMedia NvSciSync Client Type.
Definition: nvmedia_core.h:258