xilsecure
Vitis Drivers API Documentation
XilSecure Mailbox APIs

Functions

int XSecure_ProcessMailbox (XMailbox *MailboxPtr, u32 *MsgPtr, u32 MsgLen)
 This function sends IPI request to the target module and gets the response from it. More...
 
int XSecure_ClientInit (XSecure_ClientInstance *const InstancePtr, XMailbox *const MailboxPtr)
 This function sets the instance of mailbox. More...
 

Function Documentation

int XSecure_ClientInit ( XSecure_ClientInstance *const  InstancePtr,
XMailbox *const  MailboxPtr 
)

This function sets the instance of mailbox.

Parameters
InstancePtrPointer to the client instance
MailboxPtrPointer to the mailbox instance
Returns
  • XST_SUCCESS On successful initialization
  • XST_FAILURE On failure

Set XMailbox instance provided by the user to client library instance by validating whether provided client instance is not NULL.

Referenced by main().

int XSecure_ProcessMailbox ( XMailbox *  MailboxPtr,
u32 *  MsgPtr,
u32  MsgLen 
)

This function sends IPI request to the target module and gets the response from it.

Parameters
MailboxPtrPointer to XMailbox
MsgPtrPointer to the payload message
MsgLenLength of the message
Returns
  • XST_SUCCESS If the IPI send and receive is successful
  • XST_FAILURE If there is a failure
  • Response received from server
Note
Payload consists of API ID and call arguments to be written in IPI buffer

Send CDO to PLM through IPI. Return XST_FAILURE if sending data failed

Wait for IPI response from PLM with a timeout. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response

Referenced by XSecure_AesDecryptCmKat(), XSecure_AesDecryptData(), XSecure_AesDecryptFinal(), XSecure_AesDecryptInit(), XSecure_AesDecryptKat(), XSecure_AesDecryptUpdate(), XSecure_AesEncryptData(), XSecure_AesEncryptFinal(), XSecure_AesEncryptInit(), XSecure_AesEncryptKat(), XSecure_AesEncryptUpdate(), XSecure_AesGmacUpdateAad(), XSecure_AesKekDecrypt(), XSecure_AesKeyZero(), XSecure_AesPerformOperation(), XSecure_AesPerformOperationAndZeroizeKey(), XSecure_AesSetDpaCm(), XSecure_AesWriteKey(), XSecure_EllipticGenerateKey(), XSecure_EllipticGenerateSign(), XSecure_EllipticSignGenKat(), XSecure_EllipticSignVerifyKat(), XSecure_EllipticValidateKey(), XSecure_EllipticVerifySign(), XSecure_GenSharedSecret(), XSecure_KeyUnwrap(), XSecure_ReleaseRsaKey(), XSecure_RsaPrivateDecKat(), XSecure_RsaPrivateDecrypt(), XSecure_RsaPublicEncKat(), XSecure_RsaPublicEncrypt(), XSecure_RsaSignVerification(), XSecure_Sha3Digest(), XSecure_Sha3Finish(), XSecure_Sha3Kat(), XSecure_Sha3Update(), XSecure_TrngGenerateRandNum(), and XSecure_TrngKat().