xilplmi
Vitis Drivers API Documentation
XilPlmi Client APIs

Macros

#define XPLMI_ADDR_HIGH_SHIFT   (32U)
 Shift value to get higher 32 bit address. More...
 

Functions

int XPlmi_GetDeviceID (XPlmi_ClientInstance *InstancePtr, XLoader_DeviceIdCode *DeviceIdCode)
 This function sends IPI request to provides Get device id. More...
 
int XPlmi_GetBoard (XPlmi_ClientInstance *InstancePtr, u64 Addr, u32 Size, u32 *ResponseLength)
 This function sends IPI request to Get board. More...
 
int XPlmi_TamperTrigger (XPlmi_ClientInstance *InstancePtr, u32 TamperResponse)
 This function sends IPI request to Tamper Trigger. More...
 
int XPlmi_EventLogging (XPlmi_ClientInstance *InstancePtr, u32 sub_cmd, u64 Addr, u32 Len)
 This function sends IPI request to Event Logging. More...
 
int XPlmi_ConfigSecureComm (XPlmi_ClientInstance *InstancePtr, XPlmi_SsitSecComm *SsitSecCommDataPtr)
 This function sends IPI request to configure secure communication. More...
 
int XPlmi_GetSecureCommStatus (XPlmi_ClientInstance *InstancePtr, u32 SlrIndex, u32 *SecCommStatus)
 This function sends IPI request to get secure communication status. More...
 
int XPlmi_SetDDRMCMainRegSts (XPlmi_ClientInstance *InstancePtr, u32 DDRMCNum, u32 RegSts)
 This function sends IPI request to set DDRMC main registers status command. More...
 
int XPlmi_InputSlrIndex (XPlmi_ClientInstance *InstancePtr, u32 SlrIndex)
 Adds the SLR Index. More...
 
int XPlmi_InPlacePlmUpdate_DDR (XPlmi_ClientInstance *Ptr, const u32 Flag, u32 DDRAddr)
 This function sends IPI request to In place plm update status. More...
 
int XPlmi_InPlacePlmUpdate_ImageStore (XPlmi_ClientInstance *Ptr, const u32 Flag, u32 PdiId)
 This function sends IPI request to In place plm update status through Image store. More...
 

Macro Definition Documentation

#define XPLMI_ADDR_HIGH_SHIFT   (32U)

Shift value to get higher 32 bit address.

Referenced by XPlmi_ConfigSecureComm(), XPlmi_EventLogging(), and XPlmi_GetBoard().

Function Documentation

int XPlmi_ConfigSecureComm ( XPlmi_ClientInstance *  InstancePtr,
XPlmi_SsitSecComm *  SsitSecCommDataPtr 
)

This function sends IPI request to configure secure communication.

Parameters
InstancePtrPointer to the client instance
SsitSecCommDataPtrPointer to structure which contains SLR index, IV1, IV2 and key
Returns
  • XST_SUCCESS on success.
  • XST_FAILURE on failure.
  • Performs input parameters validation. Return error code if input parameters are invalid
  • Send an IPI request to the PLM by using the XPlmi_SsitCfgSecComm CDO command 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.

References XPLMI_ADDR_HIGH_SHIFT, XPLMI_CONFIG_SECCOMM_CMD_ID, XPLMI_HEADER_LEN_3, and XPlmi_ProcessMailbox().

int XPlmi_EventLogging ( XPlmi_ClientInstance *  InstancePtr,
u32  sub_cmd,
u64  Addr,
u32  Len 
)

This function sends IPI request to Event Logging.

Parameters
InstancePtrPointer to the client instance
sub_cmdTo configure the debug information
AddrAddress where the event has to happen
LenLength of the buffer
Returns
  • XST_SUCCESS on success.
  • XST_FAILURE on failure.
  • Performs input parameters validation. Return error code if input parameters are invalid
  • Send an IPI request to the PLM by using the XPlmi_EventLogging CDO command 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.

References XPLMI_ADDR_HIGH_SHIFT, XPLMI_EVENT_LOGGING_CMD_ID, XPLMI_HEADER_LEN_4, XPlmi_ProcessMailbox(), and XPLMI_SLR_INDEX_SHIFT.

int XPlmi_GetBoard ( XPlmi_ClientInstance *  InstancePtr,
u64  Addr,
u32  Size,
u32 *  ResponseLength 
)

This function sends IPI request to Get board.

Parameters
InstancePtrPointer to the client instance
AddrAddress where PLM has to copy the board details
SizeMax size available at destination for PLM to copy in words
ResponseLengthLength of board data that PLM copied
Returns
  • XST_SUCCESS on success.
  • XST_FAILURE on failure.
  • Performs input parameters validation. Return error code if input parameters are invalid
  • Send an IPI request to the PLM by using the XPlmi_GetBoard CDO command 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.

References XPLMI_ADDR_HIGH_SHIFT, XPLMI_GET_BOARD_CMD_ID, XPLMI_HEADER_LEN_3, and XPlmi_ProcessMailbox().

int XPlmi_GetDeviceID ( XPlmi_ClientInstance *  InstancePtr,
XLoader_DeviceIdCode *  DeviceIdCode 
)

This function sends IPI request to provides Get device id.

Parameters
InstancePtrPointer to the client instance
DeviceIdCodeused to store the Id code register values.
Returns
  • XST_SUCCESS on success.
  • XST_FAILURE on failure.
  • Performs input parameters validation. Return error code if input parameters are invalid
  • Send an IPI request to the PLM by using the XPlmi_GetDeviceID CDO command 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.

References XPLMI_GET_DEVICE_CMD_ID, XPLMI_HEADER_LEN_0, and XPlmi_ProcessMailbox().

int XPlmi_GetSecureCommStatus ( XPlmi_ClientInstance *  InstancePtr,
u32  SlrIndex,
u32 *  SecCommStatus 
)

This function sends IPI request to get secure communication status.

Parameters
InstancePtrPointer to the client instance
SlrIndexSLR number for which secure communication establishment status is needed
SecCommStatusPointer to variable to which secure communication status is to be written
Returns
  • XST_SUCCESS on success.
  • XST_FAILURE on failure.
  • Performs input parameters validation. Return error code if input parameters are invalid
  • Send an IPI request to the PLM by using the XPlmi_GetSecureCommStatus CDO command 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.

References XPLMI_GETSECCOMM_STATUS_CMD_ID, XPLMI_HEADER_LEN_1, and XPlmi_ProcessMailbox().

int XPlmi_InPlacePlmUpdate_DDR ( XPlmi_ClientInstance *  Ptr,
const u32  Flag,
u32  DDRAddr 
)

This function sends IPI request to In place plm update status.

Parameters
PtrPointer to XPlmi_ClientInstance
FlagTo enable / disable jtag
DDRAddrAddress of DDR
Returns
  • XST_SUCCESS on success.
  • XST_FAILURE on failure.

References XPlmi_InPlacePlmUpdate().

int XPlmi_InPlacePlmUpdate_ImageStore ( XPlmi_ClientInstance *  Ptr,
const u32  Flag,
u32  PdiId 
)

This function sends IPI request to In place plm update status through Image store.

Parameters
PtrPointer to XPlmi_ClientInstance
FlagTo enable / disable jtag
PdiIdImage store pdi id
Returns
  • XST_SUCCESS on success.
  • XST_FAILURE on failure.

References XPlmi_InPlacePlmUpdate().

int XPlmi_InputSlrIndex ( XPlmi_ClientInstance *  InstancePtr,
u32  SlrIndex 
)

Adds the SLR Index.

Parameters
InstancePtris a pointer to instance XPlmi_ClientInstance
SlrIndex- SLR index number
Returns
- XST_SUCCESS - On valid input SlrIndex.
  • XST_FAILURE - On non valid input SlrIndex

References XPLMI_SLR_INDEX_3.

int XPlmi_SetDDRMCMainRegSts ( XPlmi_ClientInstance *  InstancePtr,
u32  DDRMCNum,
u32  RegSts 
)

This function sends IPI request to set DDRMC main registers status command.

Parameters
InstancePtrPointer to the client instance
DDRMCNumDDRMC number
RegStsTo be set status
Returns
  • XST_SUCCESS on success.
  • XST_FAILURE on failure.
  • Performs input parameters validation. Return error code if input parameters are invalid
  • Send an IPI request to the PLM by using the XPlmi_SetDDRMCMainRegSts CDO command 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.

References XPLMI_DDRMC_MAINREG_STS_SET_CMD_ID, XPLMI_HEADER_LEN_2, and XPlmi_ProcessMailbox().

int XPlmi_TamperTrigger ( XPlmi_ClientInstance *  InstancePtr,
u32  TamperResponse 
)

This function sends IPI request to Tamper Trigger.

Parameters
InstancePtrPointer to the client instance
TamperResponseTo select the valid tamper response
Returns
  • Handoff to the Rom on success.
  • XST_FAILURE on failure.
  • Performs input parameters validation. Return error code if input parameters are invalid
  • Send an IPI request to the PLM by using the XPlmi_TamperTrigger CDO command 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.

References XPLMI_HEADER_LEN_1, XPlmi_ProcessMailbox(), and XPLMI_TAMPER_TRIGGER_CMD_ID.