| iicps Vitis Drivers API Documentation

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

- Data Structures
- Data Fields

Data Fields
XIicPs Struct Reference
IICPS APIs

The XIicPs driver instance data. More...

## Data Fields
XIicPs_Config | Config
| Configuration structure. More...
u32 | IsReady
| Device is initialized and ready. More...
u32 | Options
| Options set in the device. More...
u8 * | SendBufferPtr
| Pointer to send buffer. More...
u8 * | RecvBufferPtr
| Pointer to recv buffer. More...
s32 | SendByteCount
| Number of bytes still expected to send. More...
s32 | RecvByteCount
| Number of bytes still expected to receive. More...
s32 | CurrByteCount
| No. More...
s32 | UpdateTxSize
| If tx size register has to be updated. More...
s32 | IsSend
| Whether master is sending or receiving. More...
s32 | IsRepeatedStart
| Indicates if user set repeated start. More...
s32 | Is10BitAddr
| Indicates if user set 10 bit address. More...
XIicPs_IntrHandler | StatusHandler
| Event handler function. More...
void * | CallBackRef
| Callback reference for event handler. More...

## Detailed Description

The XIicPs driver instance data.

The user is required to allocate a variable of this type for each IIC device in the system. A pointer to a variable of this type is then passed to the driver API functions.

## Field Documentation

void* XIicPs::CallBackRef

Callback reference for event handler.

Referenced by XIicPs_CfgInitialize(), XIicPs_MasterInterruptHandler(), XIicPs_SetStatusHandler(), and XIicPs_SlaveInterruptHandler().

XIicPs_Config XIicPs::Config

Configuration structure.

Referenced by MasterSendData(), SlaveRecvData(), TransmitFifoFill(), XIicPs_Abort(), XIicPs_BusIsBusy(), XIicPs_CfgInitialize(), XIicPs_ClearOptions(), XIicPs_DisableSlaveMonitor(), XIicPs_EnableSlaveMonitor(), XIicPs_GetOptions(), XIicPs_GetSClk(), XIicPs_MasterInterruptHandler(), XIicPs_MasterIntrRead(), XIicPs_MasterPolledRead(), XIicPs_MasterRead(), XIicPs_MasterRecv(), XIicPs_MasterRecvPolled(), XIicPs_MasterSend(), XIicPs_MasterSendPolled(), XIicPs_Reset(), XIicPs_SelfTest(), XIicPs_SetOptions(), XIicPs_SetSClk(), XIicPs_SetupMaster(), XIicPs_SetupSlave(), XIicPs_SlaveInterruptHandler(), XIicPs_SlaveRecv(), XIicPs_SlaveRecvPolled(), XIicPs_SlaveSend(), XIicPs_SlaveSendPolled(), XIicPsSclHold(), XIicPsSetTimeOut(), and XIicPsSmbusMasterReadBlockData().

s32 XIicPs::CurrByteCount

No.

of bytes expected in current transfer

Referenced by XIicPs_MasterIntrRead(), XIicPs_MasterRead(), and XIicPs_MasterRecv().

s32 XIicPs::Is10BitAddr

Indicates if user set 10 bit address.

Referenced by XIicPs_ClearOptions(), XIicPs_EnableSlaveMonitor(), XIicPs_SetOptions(), and XIicPs_SetupMaster().

u32 XIicPs::IsReady

Device is initialized and ready.

Referenced by XIicPs_Abort(), XIicPs_CfgInitialize(), XIicPs_ClearOptions(), XIicPs_GetOptions(), XIicPs_GetSClk(), XIicPs_MasterInterruptHandler(), XIicPs_MasterRecv(), XIicPs_MasterRecvPolled(), XIicPs_MasterSend(), XIicPs_MasterSendPolled(), XIicPs_Reset(), XIicPs_SelfTest(), XIicPs_SetOptions(), XIicPs_SetSClk(), XIicPs_SetStatusHandler(), XIicPs_SetupSlave(), XIicPs_SlaveInterruptHandler(), XIicPs_SlaveRecv(), XIicPs_SlaveRecvPolled(), XIicPs_SlaveSend(), and XIicPs_SlaveSendPolled().

s32 XIicPs::IsRepeatedStart

Indicates if user set repeated start.

Referenced by EepromWriteData(), MasterSendData(), XIicPs_CfgInitialize(), XIicPs_ClearOptions(), XIicPs_GetOptions(), XIicPs_MasterInterruptHandler(), XIicPs_MasterRead(), XIicPs_MasterRecv(), XIicPs_MasterRecvPolled(), XIicPs_MasterSend(), XIicPs_MasterSendPolled(), and XIicPs_SetOptions().

s32 XIicPs::IsSend

Whether master is sending or receiving.

Referenced by XIicPs_MasterInterruptHandler(), XIicPs_MasterIntrRead(), XIicPs_MasterIntrSend(), XIicPs_MasterRecv(), and XIicPs_MasterSend().

u32 XIicPs::Options

Options set in the device.

Referenced by XIicPs_CfgInitialize(), XIicPs_ClearOptions(), and XIicPs_SetOptions().

u8* XIicPs::RecvBufferPtr

Pointer to recv buffer.

Referenced by XIicPs_MasterRecv(), XIicPs_MasterRecvPolled(), XIicPs_MasterSend(), XIicPs_SlaveInterruptHandler(), XIicPs_SlaveRecv(), XIicPs_SlaveRecvPolled(), and XIicPs_SlaveSend().

s32 XIicPs::RecvByteCount

Number of bytes still expected to receive.

Referenced by SlaveRecvData(), XIicPs_MasterInterruptHandler(), XIicPs_MasterIntrRead(), XIicPs_MasterPolledRead(), XIicPs_MasterRead(), XIicPs_MasterRecv(), and XIicPs_MasterRecvPolled().

u8* XIicPs::SendBufferPtr

Pointer to send buffer.

Referenced by XIicPs_MasterRecv(), XIicPs_MasterSend(), XIicPs_MasterSendPolled(), XIicPs_SlaveRecv(), XIicPs_SlaveSend(), and XIicPs_SlaveSendPolled().

s32 XIicPs::SendByteCount

Number of bytes still expected to send.

Referenced by MasterSendData(), TransmitFifoFill(), XIicPs_MasterIntrSend(), XIicPs_MasterSend(), XIicPs_MasterSendPolled(), XIicPs_SlaveInterruptHandler(), XIicPs_SlaveSend(), and XIicPs_SlaveSendPolled().

XIicPs_IntrHandler XIicPs::StatusHandler

Event handler function.

Referenced by XIicPs_CfgInitialize(), XIicPs_MasterInterruptHandler(), XIicPs_SetStatusHandler(), and XIicPs_SlaveInterruptHandler().

s32 XIicPs::UpdateTxSize

If tx size register has to be updated.

Referenced by XIicPs_MasterIntrRead(), XIicPs_MasterPolledRead(), XIicPs_MasterRead(), XIicPs_MasterRecv(), and XIicPs_MasterRecvPolled().