Loading [MathJax]/extensions/tex2jax.js
  • <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • NVIDIA DRIVE OS Linux SDK API Reference

    6.0.4 Release
    All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
    nvmedia_dla_nvscisync.h
    Go to the documentation of this file.
    1 /*
    2  * Copyright (c) 2019-2022, 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 6
    42 
    43 #define NVMEDIA_DLA_NVSCISYNC_VERSION_PATCH 0
    44 
    49 #define NVMEDIA_DLA_MAX_PRENVSCISYNCFENCES (8U)
    50 
    80  NvMediaVersion *version
    81 );
    82 
    128  const NvMediaDla *dla,
    129  NvSciSyncAttrList attrlist,
    130  NvMediaNvSciSyncClientType clienttype
    131 );
    132 
    179  const NvMediaDla* dla,
    180  NvSciSyncAttrList attrlist,
    181  NvMediaNvSciSyncClientType clienttype
    182 );
    183 
    233  NvMediaDla *dla,
    234  NvMediaNvSciSyncObjType syncobjtype,
    235  NvSciSyncObj nvscisync
    236 );
    237 
    279  NvMediaDla *dla,
    280  NvSciSyncObj nvscisync
    281 );
    282 
    326  NvMediaDla *dla,
    327  NvSciSyncObj nvscisyncSOF
    328 );
    329 
    373  NvMediaDla *dla,
    374  NvSciSyncObj nvscisyncEOF
    375 );
    376 
    427  NvMediaDla *dla,
    428  const NvSciSyncFence *prenvscisyncfence
    429 );
    430 
    487  const NvMediaDla *dla,
    488  NvSciSyncObj sofnvscisyncobj,
    489  NvSciSyncFence *sofnvscisyncfence
    490 );
    491 
    549  const NvMediaDla *dla,
    550  NvSciSyncObj eofnvscisyncobj,
    551  NvSciSyncFence *eofnvscisyncfence
    552 );
    553 
    599  NvMediaDla* dla,
    600  NvSciSyncObj syncObj
    601 );
    602 
    648  NvMediaDla* dla,
    649  NvSciSyncObj syncObj
    650 );
    651 
    652 /*
    653  * \defgroup history_nvmedia_dla_nvscisync History
    654  * Provides change history for the NvMedia Dla NvSciSync API
    655  *
    656  * \section history_nvmedia_dla_nvscisync Version History
    657  *
    658  * <b> Version 1.0 </b> March 14, 2019
    659  * - Initial release
    660  *
    661  * <b> Version 1.1 </b> April 11, 2019
    662  * - Add new API NvMediaDlaSetNvSciSyncObjforSOF and NvMediaDlaGetEOFNvSciSyncFence
    663  * - Rename NvMediaDlaUnRegisterNvSciSyncObj to NvMediaDlaUnregisterNvSciSyncObj
    664  *
    665  * <b> Version 1.2 </b> Jan 22, 2020
    666  * - Disable NvMediaDlaSetNvSciSyncObjforSOF and NvMediaDlaGetSOFNvSciSyncFence in
    667  * safety build as they are currently unsupported.
    668  *
    669  * <b> Version 1.3 </b> Jul 20, 2020
    670  * - Added support for NvSciSyncObj backed by deterministic primitive.
    671  * - Currently timestamp feature is disabled with NvSciSyncObj backed by
    672  * deterministic primitive.
    673  * - Added new APIs: NvMediaDlaInsertEOFNvSciSyncObj,
    674  * NvMediaDlaInsertSOFNvSciSyncObj (disabled in safety),
    675  * NvMediaDlaFillNvSciSyncDeterministicAttrList
    676  *
    677  * <b> Version 1.4 </b> July 26, 2021
    678  * - Update comments for NvMediaDlaGetEOFNvSciSyncFence and NvMediaDlaGetSOFNvSciSyncFence
    679  *
    680  * <b> Version 1.5 </b> August 20, 2021
    681  * - Update doxygen comments for All APIs to have Thread safety information and API Group information
    682  *
    683  * <b> Version 1.6 </b> October 25, 2021
    684  * - Enable SOF feature in safety builds.
    685  * - Enable timestamp support for all primitives.
    686  *
    687  * <b> Version 1.6.0 </b> May 10, 2022
    688  * - Added patch version number macro: NVMEDIA_DLA_NVSCISYNC_VERSION_PATCH.
    689  *
    690  */
    691 
    694 #ifdef __cplusplus
    695 } /* extern "C" */
    696 #endif
    697 
    698 #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.
    NvMediaStatus
    NvMediaStatus
    Defines all possible error codes.
    Definition: nvmedia_core.h:104
    NvMediaNvSciSyncObjType
    NvMediaNvSciSyncObjType
    Defines NvMedia NvSciSyncObj types.
    Definition: nvmedia_core.h:187
    NvMediaNvSciSyncClientType
    NvMediaNvSciSyncClientType
    NvMedia NvSciSync Client Type.
    Definition: nvmedia_core.h:174
    NvSciSyncAttrList
    struct NvSciSyncAttrListRec * NvSciSyncAttrList
    A container constituting an NvSciSyncAttrList which contains:
    Definition: nvscisync.h:314
    nvscisync.h
    NVIDIA Software Communications Interface (SCI) : NvSciSync
    NvMediaVersion
    Holds NvMedia version information.
    Definition: nvmedia_core.h:149
    NvMediaDlaInsertPreNvSciSyncFence
    NvMediaStatus NvMediaDlaInsertPreNvSciSyncFence(NvMediaDla *dla, const NvSciSyncFence *prenvscisyncfence)
    Sets an NvSciSyncFence as a prefence for a DLA submit operation.
    NvMediaDlaInsertEOFNvSciSyncObj
    NvMediaStatus NvMediaDlaInsertEOFNvSciSyncObj(NvMediaDla *dla, NvSciSyncObj syncObj)
    Sets NvSciSyncObj as a EOF 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
    NvMediaDlaInsertSOFNvSciSyncObj
    NvMediaStatus NvMediaDlaInsertSOFNvSciSyncObj(NvMediaDla *dla, NvSciSyncObj syncObj)
    Sets NvSciSyncObj as a SOF for a DLA submit operation.
    NvMediaDlaSetNvSciSyncObjforSOF
    NvMediaStatus NvMediaDlaSetNvSciSyncObjforSOF(NvMediaDla *dla, NvSciSyncObj nvscisyncSOF)
    Sets the NvSciSyncObj to be used for a Start of Frame (SOF) NvSciSyncFence.
    NvMediaDlaGetEOFNvSciSyncFence
    NvMediaStatus NvMediaDlaGetEOFNvSciSyncFence(const NvMediaDla *dla, NvSciSyncObj eofnvscisyncobj, NvSciSyncFence *eofnvscisyncfence)
    Gets an EOF NvSciSyncFence for a DLA submit operation.
    NvMediaDlaFillNvSciSyncDeterministicAttrList
    NvMediaStatus NvMediaDlaFillNvSciSyncDeterministicAttrList(const NvMediaDla *dla, NvSciSyncAttrList attrlist, NvMediaNvSciSyncClientType clienttype)
    Fills the NvMediaDla specific NvSciSync deterministic attributes.
    NvMediaDlaUnregisterNvSciSyncObj
    NvMediaStatus NvMediaDlaUnregisterNvSciSyncObj(NvMediaDla *dla, NvSciSyncObj nvscisync)
    Unregisters an NvSciSyncObj with NvMediaDla.
    NvSciSyncFence
    Defines the opaque NvSciSyncFence.
    Definition: nvscisync.h:240
    NvMediaDla
    struct NvMediaDla NvMediaDla
    Holds a handle to the NvMedia DLA device.
    Definition: nvmedia_dla.h:74
    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:295
    NvMediaDlaRegisterNvSciSyncObj
    NvMediaStatus NvMediaDlaRegisterNvSciSyncObj(NvMediaDla *dla, NvMediaNvSciSyncObjType syncobjtype, NvSciSyncObj nvscisync)
    Registers an NvSciSyncObj with NvMediaDla.
    人人超碰97caoporen国产