![]() |
xilloader
Vitis Drivers API Documentation
|
Macros | |
| #define | XILLOADER_MODULE_ID (7U) |
| Module id for xilloader. More... | |
| #define | PAYLOAD_ARG_CNT XIPIPSU_MAX_MSG_LEN |
| 1 for API ID + 5 for API arguments + 1 for reserved + 1 for CRC More... | |
| #define | RESPONSE_ARG_CNT XIPIPSU_MAX_MSG_LEN |
| 1 for status + 3 for values + 3 for reserved + 1 for CRC More... | |
| #define | XLOADER_TARGET_IPI_INT_MASK (0x00000002U) |
| Target PMC IPI interrupt mask. More... | |
| #define | XLOADER_MODULE_ID_SHIFT (8U) |
| Module id shift. More... | |
| #define | XLOADER_PAYLOAD_LEN_SHIFT (16U) |
| Length shift mask. More... | |
| #define | XILLOADER_MODULE_ID_MASK ((u32)XILLOADER_MODULE_ID << XLOADER_MODULE_ID_SHIFT) |
| Module id mask. More... | |
| #define | XLOADER_SHARED_MEM_SIZE (160U) |
| Max size of shared memory used to store the CDO command. More... | |
Functions | |
| int | XLoader_ProcessMailbox (XLoader_ClientInstance *ClientPtr, u32 *MsgPtr, u32 MsgLen) |
| This function sends IPI request to the target module and gets the response from it. More... | |
| int | XLoader_ClientInit (XLoader_ClientInstance *const InstancePtr, XMailbox *const MailboxPtr) |
| This function sets the instance of mailbox. More... | |
Variables | |
| XMailbox * | XLoader_ClientInstance::MailboxPtr |
| Pointer to mailbox for IPI communication. More... | |
| u32 | XLoader_ClientInstance::Response [RESPONSE_ARG_CNT] |
| Buffer to store the response of the IPI. More... | |
| u32 | XLoader_ClientInstance::SlrIndex |
| SLR index number. More... | |
| #define PAYLOAD_ARG_CNT XIPIPSU_MAX_MSG_LEN |
1 for API ID + 5 for API arguments + 1 for reserved + 1 for CRC
| #define RESPONSE_ARG_CNT XIPIPSU_MAX_MSG_LEN |
1 for status + 3 for values + 3 for reserved + 1 for CRC
Referenced by XLoader_ProcessMailbox().
| #define XILLOADER_MODULE_ID (7U) |
Module id for xilloader.
| #define XILLOADER_MODULE_ID_MASK ((u32)XILLOADER_MODULE_ID << XLOADER_MODULE_ID_SHIFT) |
Module id mask.
| #define XLOADER_MODULE_ID_SHIFT (8U) |
Module id shift.
| #define XLOADER_PAYLOAD_LEN_SHIFT (16U) |
Length shift mask.
| #define XLOADER_SHARED_MEM_SIZE (160U) |
Max size of shared memory used to store the CDO command.
| #define XLOADER_TARGET_IPI_INT_MASK (0x00000002U) |
Target PMC IPI interrupt mask.
Referenced by XLoader_ProcessMailbox().
| int XLoader_ClientInit | ( | XLoader_ClientInstance * | InstancePtr, |
| XMailbox * | MailboxPtr | ||
| ) |
This function sets the instance of mailbox.
| InstancePtr | Pointer to the client instance. |
| MailboxPtr | Pointer to the mailbox instance. |
Referenced by main().
| int XLoader_ProcessMailbox | ( | XLoader_ClientInstance * | ClientPtr, |
| u32 * | MsgPtr, | ||
| u32 | MsgLen | ||
| ) |
This function sends IPI request to the target module and gets the response from it.
| MsgPtr | Pointer to the payload message. |
| MsgLen | Length of the message. |
Send IPI CDO to PLM. Return XST_FAILURE if sending data failed
- 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.
References RESPONSE_ARG_CNT, and XLOADER_TARGET_IPI_INT_MASK.
Referenced by XLoader_AddImageStorePdi(), XLoader_CfiSelectiveReadback(), XLoader_ConfigureJtagState(), XLoader_ExtractMetaheader(), XLoader_GetATFHandOffParams(), XLoader_GetImageInfo(), XLoader_GetImageInfoList(), XLoader_GetOptionalData(), XLoader_LoadImage(), XLoader_LoadPartialPdi(), XLoader_ReadDdrCryptoPerfCounters(), XLoader_RemoveImageStorePdi(), and XLoader_UpdateMultiboot().
| XMailbox* XLoader_ClientInstance::MailboxPtr |
Pointer to mailbox for IPI communication.
| u32 XLoader_ClientInstance::Response[RESPONSE_ARG_CNT] |
Buffer to store the response of the IPI.
| u32 XLoader_ClientInstance::SlrIndex |
SLR index number.