List of APIs to initialize/de-initialize NvSciBuf module.
Functions | |
NvSciError | NvSciBufModuleOpen (NvSciBufModule *newModule) |
Initializes and returns a new NvSciBufModule with no NvSciBufAttrLists, buffers, or NvSciBufObjs bound to it. More... | |
void | NvSciBufModuleClose (NvSciBufModule module) |
Releases the NvSciBufModule obtained through an earlier call to NvSciBufModuleOpen(). More... | |
NvSciError | NvSciBufCheckVersionCompatibility (uint32_t majorVer, uint32_t minorVer, bool *isCompatible) |
Checks if loaded NvSciBuf library version is compatible with NvSciBuf library version with which elements dependent on NvSciBuf were built. More... | |
NvSciError | NvSciBufObjValidate (NvSciBufObj bufObj) |
Validates the NvSciBufObj satisfies the constraints of the NvSciBufAttrList that it is associated with. More... | |
NvSciError | NvSciBufAttrListValidateReconciledAgainstAttrs (const NvSciBufAttrList reconciledAttrList, const NvSciBufAttrKeyValuePair *pairArray, const size_t pairCount) |
Validate the reconciled NvSciBufAttrList against the set of all attributes that the user has set in the unreconciled NvSciBufAttrList(s). More... | |
NvSciError | NvSciBufObjGetMaxPerm (const NvSciBufObj bufObj, const NvSciIpcEndpoint ipcEndpoint, NvSciBufAttrValAccessPerm *accPerm) |
Retrieve the NvSciBufAttrValAccessPerm of an NvSciBufObj for given NvSciIpcEndpoint. More... | |
NvSciError NvSciBufAttrListValidateReconciledAgainstAttrs | ( | const NvSciBufAttrList | reconciledAttrList, |
const NvSciBufAttrKeyValuePair * | pairArray, | ||
const size_t | pairCount | ||
) |
Validate the reconciled NvSciBufAttrList against the set of all attributes that the user has set in the unreconciled NvSciBufAttrList(s).
This API provides the safety mechanism to detect and report any reconciliation errors.
[in] | reconciledAttrList | reconciled NvSciBufAttrList that need to be validated |
[in] | pairArray | Array of NvSciBufAttrKeyValuePair structures that the user has used to set in the unreconciled NvSciBufAttrList. Valid value: pairArray is valid input if it is not NULL and key member of every NvSciBufAttrKeyValuePair in the array is a valid enumeration value defined by the NvSciBufAttrKey enum and value member of every NvSciBufAttrKeyValuePair in the array is not NULL. |
[in] | pairCount | Number of elements/entries in pairArray. Valid value: pairCount is valid input if it is non-zero. |
panics if reconciledAttrList is invalid.
Usage considerations
NvSciError NvSciBufCheckVersionCompatibility | ( | uint32_t | majorVer, |
uint32_t | minorVer, | ||
bool * | isCompatible | ||
) |
Checks if loaded NvSciBuf library version is compatible with NvSciBuf library version with which elements dependent on NvSciBuf were built.
This function checks loaded NvSciBuf library version with input NvSciBuf library version and sets output variable true provided major version of the loaded library is same as majorVer and minor version of the loaded library is not less than minorVer. Additionally, this function also checks the versions of libraries that NvSciBuf depends on and sets the output variable to true if all libraries are compatible, else sets output to false.
[in] | majorVer | build major version. |
[in] | minorVer | build minor version. |
[out] | isCompatible | boolean value stating if loaded NvSciBuf library is compatible or not. |
Usage considerations
void NvSciBufModuleClose | ( | NvSciBufModule | module | ) |
Releases the NvSciBufModule obtained through an earlier call to NvSciBufModuleOpen().
Once the NvSciBufModule is closed and all NvSciBufAttrLists and NvSciBufObjs bound to it are freed, the NvSciBufModule will be de-initialized in the calling process.
[in] | module | The NvSciBufModule to close. |
Usage considerations
NvSciError NvSciBufModuleOpen | ( | NvSciBufModule * | newModule | ) |
Initializes and returns a new NvSciBufModule with no NvSciBufAttrLists, buffers, or NvSciBufObjs bound to it.
[out] | newModule | The new NvSciBufModule. |
Usage considerations
NvSciError NvSciBufObjGetMaxPerm | ( | const NvSciBufObj | bufObj, |
const NvSciIpcEndpoint | ipcEndpoint, | ||
NvSciBufAttrValAccessPerm * | accPerm | ||
) |
Retrieve the NvSciBufAttrValAccessPerm of an NvSciBufObj for given NvSciIpcEndpoint.
Application can use this API to ensure that when an NvSciBufObj is exported with NvSciBufAccessPerm_Auto, the NvSciBufObj will be exported with appropriate NvSciBufAttrValAccessPerm expected by the application.
[in] | bufObj | object for which access permissions need to be retrieved. |
[in] | ipcEndpoint | NvSciIpcEndpoint of the peer for which the permissions need to retrieved. Valid value: valid NvSciIpcEndpoint returned by NvSciIpc to identify the peer. |
[out] | accPerm | address at which the retrieved access permissions need to be stored. Valid Value: non NULL Pointer. |
Usage considerations
NvSciError NvSciBufObjValidate | ( | NvSciBufObj | bufObj | ) |
Validates the NvSciBufObj satisfies the constraints of the NvSciBufAttrList that it is associated with.
[in] | bufObj | Unused |
Usage considerations