xilnvm
Vitis Drivers API Documentation
XilNVM mailbox APIs

Functions

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

Function Documentation

int XNvm_ClientInit ( XNvm_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

Perform input parameter validation on InstancePtr. If not NULL initialize the InstancePtr, else return XST_FAILURE.

Referenced by main().

int XNvm_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 mailbox instance
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
Note
Payload consists of API id and call arguments to be written in IPI buffer

Send IPI CDO to PLM. Return XST_FAILURE, if failure in IPI send request.

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

Referenced by XNvm_BbramLockUsrDataWrite(), XNvm_BbramReadUsrData(), XNvm_BbramWriteAesKey(), XNvm_BbramWriteUsrData(), XNvm_BbramZeroize(), XNvm_EfuseReadBootEnvCtrlBits(), XNvm_EfuseReadBootModeDis(), XNvm_EfuseReadDecOnly(), XNvm_EfuseReadDmeMode(), XNvm_EfuseReadDna(), XNvm_EfuseReadFipsInfoBits(), XNvm_EfuseReadIv(), XNvm_EfuseReadMiscCtrlBits(), XNvm_EfuseReadOffchipRevokeId(), XNvm_EfuseReadPpkHash(), XNvm_EfuseReadPuf(), XNvm_EfuseReadPufSecCtrlBits(), XNvm_EfuseReadRevocationId(), XNvm_EfuseReadRomRsvdBits(), XNvm_EfuseReadSecCtrlBits(), XNvm_EfuseReadSecMisc1Bits(), XNvm_EfuseReadUserFuses(), XNvm_EfuseRevokePpk(), XNvm_EfuseWrite(), XNvm_EfuseWriteBootEnvCtrlBits(), XNvm_EfuseWriteBootModeDis(), XNvm_EfuseWriteDecOnly(), XNvm_EfuseWriteDiceUds(), XNvm_EfuseWriteDmeMode(), XNvm_EfuseWriteFipsInfo(), XNvm_EfuseWriteGlitchConfigBits(), XNvm_EfuseWriteIVs(), XNvm_EfuseWriteMiscCtrlBits(), XNvm_EfuseWriteOffChipRevocationId(), XNvm_EfuseWritePlmUpdate(), XNvm_EfuseWritePuf(), XNvm_EfuseWritePufCtrlBits(), XNvm_EfuseWriteRevocationId(), XNvm_EfuseWriteRomRsvdBits(), XNvm_EfuseWriteSecCtrlBits(), XNvm_EfuseWriteSecMisc1Bits(), XNvm_EfuseWriteUserFuses(), and XNvm_WriteDmePrivateKey().