| ipipsu Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List
- Examples

Data Structures | Macros | Functions | Variables
xipipsu.h File Reference

## Data Structures
struct | XIpiPsu_Target
| Data structure used to refer IPI Targets. More...
struct | XIpiPsu_Config
| This typedef contains configuration information for the device. More...
struct | XIpiPsu
| The XIpiPsu driver instance data. More...

## Macros
#define | XIPIPSU_BUF_TYPE_MSG (0x001U)
| Message type buffer. More...
#define | XIPIPSU_BUF_TYPE_RESP (0x002U)
| Response buffer. More...
#define | XIPIPSU_CRC_INDEX (0x7U)
| Index where the CRC is stored. More...
#define | XIPIPSU_W0_TO_W6_SIZE (28U)
| Size of the word 0 to word 6. More...
#define | XIPIPSU_CRC_ERROR (0xFL)
| CRC error occurred. More...
#define | ENABLE_IPI_CRC_VAL (0x0U)
| Enable CRC. More...
#define | XIPIPSU_MAX_MSG_LEN XIPIPSU_MSG_BUF_SIZE
| Maximum message length. More...
#define | XIpiPsu_ReadReg(BaseAddress, RegOffset) Xil_In32((BaseAddress) + (RegOffset))
| Reads the register specified by the base address and offset. More...
#define | XIpiPsu_WriteReg(BaseAddress, RegOffset, Data) Xil_Out32(((BaseAddress) + (RegOffset)), (Data))
| Writes a value into a register specified by base address and offset. More...
#define | XIpiPsu_InterruptEnable(InstancePtr, Mask)
| Enable interrupts specified in Mask. More...
#define | XIpiPsu_InterruptDisable(InstancePtr, Mask)
| Disable interrupts specified in Mask. More...
#define | XIpiPsu_GetInterruptStatus(InstancePtr)
| Gets the STATUS REGISTER of the current IPI instance. More...
#define | XIpiPsu_ClearInterruptStatus(InstancePtr, Mask)
| Clears the STATUS REGISTER of the current IPI instance. More...
#define | XIpiPsu_GetObsStatus(InstancePtr)
| Gets the OBSERVATION REGISTER of the current IPI instance. More...

## Functions
XIpiPsu_Config * | XIpiPsu_LookupConfig (u32 DeviceId)
| Looks up the device configuration based on the unique device ID. More...
XStatus | XIpiPsu_CfgInitialize (XIpiPsu *InstancePtr, XIpiPsu_Config *CfgPtr, UINTPTR EffectiveAddress)
| Initializes the Instance pointer based on a given Config Pointer. More...
void | XIpiPsu_Reset (XIpiPsu *InstancePtr)
| Resets the given IPI register set. More...
XStatus | XIpiPsu_TriggerIpi (XIpiPsu *InstancePtr, u32 DestCpuMask)
| Triggers an IPI to a Destination CPU. More...
XStatus | XIpiPsu_PollForAck (const XIpiPsu *InstancePtr, u32 DestCpuMask, u32 TimeOutCount)
| Polls for an acknowledgement using Observation Register. More...
XStatus | XIpiPsu_ReadMessage (XIpiPsu *InstancePtr, u32 SrcCpuMask, u32 *MsgPtr, u32 MsgLength, u8 BufferType)
| Read an Incoming Message from a Source. More...
XStatus | XIpiPsu_WriteMessage (XIpiPsu *InstancePtr, u32 DestCpuMask, const u32 *MsgPtr, u32 MsgLength, u8 BufferType)
| Sends a Message to Destination. More...
void | XIpiPsu_SetConfigTable (u32 DeviceId, XIpiPsu_Config *ConfigTblPtr)
| Sets up the device configuration based on the unique device ID. More...

## Variables
XIpiPsu_Config | XIpiPsu_ConfigTable [XPAR_XIPIPSU_NUM_INSTANCES]
| The IPIPSU configuration table, sized by the number of instances defined in xparameters.h. More...