Embedded Drivers 149
S0’: This is the internal address register and is filled during the initialization
time.
S1: Control register and the status register used for bus access and control.
S2: Clock register.
S3: Interrupt vector register.
The PCF8584 data sheet contains more information on how to program
the registers for initialization, transmission, and reception. The data sheet can
be downloaded from the Philips Semiconductor Web site.
Each algorithm driver is associated with a data structure
i2c_algorithm
declared in the file include/linux/i2c.h. This data structure has a function
pointer
master_xfer, which points to the function that implements the actual
I2C transmit and receive algorithm. Other important fields of this structure are:
name ...