![]() |
xilsem
Vitis Drivers API Documentation
|
This file demonstrates on how to use XilSEM CRAM client interface on PL Microblaze to send commands to PLM firmware and read responses from PLM.
MODIFICATION HISTORY:
Ver Who Date Changes
0.1 gupta 11/16/2022 Initial Creation 0.2 anv 10/18/2023 Added macro protection to Enable Error Injection Feature usage and Updated to get XilSEM CRAM status prints and Added Test print summary 0.3 gam 01/02/2023 Fixed IPI interrupt ID for PL MB Versal Net, changed Uncorrectable and CRC error data. Moved Error injection sequence in the end of main function to get clear prints.
Functions | |
| int | SetUpInterruptSystem (XIntc *XIntcInstancePtr) |
| This function connects the IPI interrupts to the interrupt controller and to the processor. More... | |
| int | IntcAndIpiInit (void) |
| This function initializes Interrupt Controller and IPI drivers. More... | |
| int | main (void) |
| int IntcAndIpiInit | ( | void | ) |
This function initializes Interrupt Controller and IPI drivers.
Initialize the interrupt controller driver so that it is ready to use.
Perform a self-test to ensure that the hardware was built correctly.
References SetUpInterruptSystem().
Referenced by main().
| int main | ( | void | ) |
Initialize IPI Driver This initialization is required to get XilSEM event notifications from PLM
Initialize CRAM scan if not initialized This is applicable when CRAM Scan is set for deferred start up.
Enable event Notifications to receive notifications from PLM upon detection of any error in CFRAME
References CFRAME_MAX_TYPE, CMD_ACK_SEM_GET_CONFIG, CMD_ACK_SEM_READ_FRAME_ECC, XSemCfrStatus::ErrAddrH, XSemCfrStatus::ErrAddrL, XSemCfrStatus::ErrCorCnt, IntcAndIpiInit(), MAX_CRAMERR_REGISTER_CNT, XSemIpiResp::RespMsg1, XSemIpiResp::RespMsg2, XSemIpiResp::RespMsg3, XSemIpiResp::RespMsg4, XSemCfrStatus::Status, XSem_CmdCfrGetCrc(), XSem_CmdCfrGetStatus(), XSem_CmdCfrGetTotalFrames(), XSem_CmdCfrReadFrameEcc(), and XSem_CmdGetConfig().
| int SetUpInterruptSystem | ( | XIntc * | XIntcInstancePtr | ) |
This function connects the IPI interrupts to the interrupt controller and to the processor.
| Intc | instance pointer. |
Connect IPI interrupt handler that will be called when an interrupt for the IPI occurs, the IPI interrupt handler performs the specific interrupt processing for IPI.
Start the interrupt controller such that interrupts are enabled for all devices that cause interrupts.
References INTC_DEVICE_IPI_INT_ID.
Referenced by IntcAndIpiInit().