MODIFICATION HISTORY:
Ver Who Date Changes ----- ------ -------- -------------------------------------------- 1.00a drg/jz 01/30/10 First release 1.00a sdm 09/21/11 Updated the InstancePtr->Options in the XIicPs_CfgInitialize by calling XIicPs_GetOptions. 2.1 hk 04/25/14 Explicitly reset CR and clear FIFO in Abort function and state the same in the comments. CR# 784254. Fix for CR# 761060 - provision for repeated start.
#include "xiicps.h"
Functions | |
int | XIicPs_CfgInitialize (XIicPs *InstancePtr, XIicPs_Config *ConfigPtr, u32 EffectiveAddr) |
int | XIicPs_BusIsBusy (XIicPs *InstancePtr) |
void | XIicPs_Abort (XIicPs *InstancePtr) |
void | XIicPs_Reset (XIicPs *InstancePtr) |
int | TransmitFifoFill (XIicPs *InstancePtr) |
|
Put more data into the transmit FIFO, number of bytes is ether expected number of bytes for this transfer or available space in FIFO, which ever is less.
|
|
Aborts a transfer in progress by resetting the FIFOs. The byte counts are cleared.
|
|
Check whether the I2C bus is busy
|
|
Initializes a specific XIicPs instance such that the driver is ready to use. The state of the device after initialization is:
|
|
Resets the IIC device. Reset must only be called after the driver has been initialized. The configuration of the device after reset is the same as its configuration after initialization. Any data transfer that is in progress is aborted. The upper layer software is responsible for re-configuring (if necessary) and reenabling interrupts for the IIC device after the reset.
|