| i3cpsx Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List

- Data Structures
- Data Fields

Data Fields
XI3cPsx Struct Reference

The XI3cPsx driver instance data. More...

## Data Fields
XI3cPsx_Config | Config
| Configuration structure. More...
u32 | IsReady
| Device is initialized and ready. More...
u32 | Options
| Options set in the device. More...
u32 | Addr [20]
| Dynamic Addresses to be assigned. More...
XI3cPsx_Master_Caps | Caps
| Cmd, Data fifo depths. More...
u8 * | SendBufferPtr
| Pointer to send buffer. More...
u8 * | RecvBufferPtr
| Pointer to recv buffer. More...
u16 | SendByteCount
| Number of bytes still expected to send. More...
u16 | RecvByteCount
| Number of bytes still expected to receive. More...
u16 | 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...
XI3cPsx_IntrHandler | StatusHandler
| Event handler function. More...
void * | CallBackRef
| Callback reference for event handler. More...

## Detailed Description

The XI3cPsx 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

u32 XI3cPsx::Addr[20]

Dynamic Addresses to be assigned.

void* XI3cPsx::CallBackRef

Callback reference for event handler.

Referenced by XI3cPsx_MasterInterruptHandler(), and XI3cPsx_SetStatusHandler().

XI3cPsx_Master_Caps XI3cPsx::Caps

Cmd, Data fifo depths.

XI3cPsx_Config XI3cPsx::Config

Configuration structure.

Referenced by XI3cPsx_BusInit(), XI3cPsx_CfgInitialize(), XI3cPsx_MasterInterruptHandler(), XI3cPsx_MasterRecv(), XI3cPsx_MasterRecvPolled(), XI3cPsx_MasterSend(), XI3cPsx_MasterSendPolled(), XI3cPsx_RdRxFifo(), XI3cPsx_Reset(), XI3cPsx_ResetFifos(), XI3cPsx_SendAddrAssignCmd(), XI3cPsx_SetupSlave(), XI3cPsx_SlaveRecvPolled(), XI3cPsx_SlaveSendPolled(), XI3cPsx_WrCmdFifo(), and XI3cPsx_WrTxFifo().

u16 XI3cPsx::CurrByteCount

No.

of bytes expected in current transfer

s32 XI3cPsx::Is10BitAddr

Indicates if user set 10 bit address.

u32 XI3cPsx::IsReady

Device is initialized and ready.

Referenced by XI3cPsx_CfgInitialize(), XI3cPsx_MasterInterruptHandler(), XI3cPsx_ResetFifos(), XI3cPsx_SetStatusHandler(), XI3cPsx_SetupSlave(), XI3cPsx_SlaveInterruptHandler(), XI3cPsx_SlaveRecv(), XI3cPsx_SlaveRecvPolled(), and XI3cPsx_SlaveSendPolled().

s32 XI3cPsx::IsRepeatedStart

Indicates if user set repeated start.

s32 XI3cPsx::IsSend

Whether master is sending or receiving.

u32 XI3cPsx::Options

Options set in the device.

u8* XI3cPsx::RecvBufferPtr

Pointer to recv buffer.

Referenced by XI3cPsx_MasterInterruptHandler(), XI3cPsx_MasterRecv(), XI3cPsx_MasterRecvPolled(), XI3cPsx_RdRxFifo(), and XI3cPsx_SlaveRecvPolled().

u16 XI3cPsx::RecvByteCount

Number of bytes still expected to receive.

Referenced by XI3cPsx_MasterInterruptHandler(), XI3cPsx_MasterRecv(), XI3cPsx_MasterRecvPolled(), XI3cPsx_RdRxFifo(), and XI3cPsx_SlaveRecvPolled().

u8* XI3cPsx::SendBufferPtr

Pointer to send buffer.

Referenced by XI3cPsx_MasterInterruptHandler(), XI3cPsx_MasterSend(), XI3cPsx_MasterSendPolled(), XI3cPsx_SlaveSendPolled(), and XI3cPsx_WrTxFifo().

u16 XI3cPsx::SendByteCount

Number of bytes still expected to send.

Referenced by XI3cPsx_MasterInterruptHandler(), XI3cPsx_MasterSend(), XI3cPsx_MasterSendPolled(), XI3cPsx_SlaveSendPolled(), and XI3cPsx_WrTxFifo().

XI3cPsx_IntrHandler XI3cPsx::StatusHandler

Event handler function.

Referenced by XI3cPsx_MasterInterruptHandler(), and XI3cPsx_SetStatusHandler().

s32 XI3cPsx::UpdateTxSize

If tx size register has to be updated.