Intel IXP400 Frozen Dessert Maker User Manual


 
Intel
®
IXP400 Software
I
2
C Driver (IxI2cDrv)
Programmer’s Guide IXP400 Software Version 2.0 April 2005
Document Number: 252539, Revision: 007 335
Slave-Interrupt Mode
When the processor is acting in I
2
C slave mode or responding to general calls in interrupt mode,
the client callbacks for transmit and receive are responsible for providing a buffer used to interface
with the I
2
C Data Buffer Register (IDBR), using the ixI2cDrvSlaveOrGenCallBufReplenish()
function.
Examples of Slave Interrupt mode operations is provided in “Example Sequence Flows for Slave
Mode” on page 336.
Slave-Polling Mode
In polling mode, the client polling task can check for pending requests to respond to slave request
or general calls using the
ixI2cDrvSlaveAddrAndGenCallDetectedCheck() function. The client
can then use the
ixI2cDrvSlaveOrGenDataReceive() or ixI2cDrvSlaveOrGenDataTransmit()
functions to transfer data.
Support Functions
After the I
2
C unit has been initialized as described above, there are several supporting functions
available in the API. These include functions that set the 7-bit Slave address to which the I
2
C Unit
responds, scan the I
2
C bus for slave units, check or reset port statistics, and show the current status
of the I
2
C unit and driver. The API can also uninitialize the I
2
C unit and remove the driver from
memory.