1. NAME▲
struct_i2c_client - represent an I2C slave device
2. SYNOPSIS ▲
struct
i2c_client {
unsigned
short
flags;
unsigned
short
addr;
char
name[I2C_NAME_SIZE];
struct
i2c_adapter *
adapter;
struct
i2c_driver *
driver;
struct
device dev;
int
irq;
struct
list_head detected;
}
;
3. MEMBERS ▲
flags
I2C_CLIENT_TEN indicates the device uses a ten bit chip address; I2C_CLIENT_PEC indicates it uses SMBus Packet Error Checking
addr
Address used on the I2C bus connected to the parent adapter.
name[I2C_NAME_SIZE]
Indicates the type of the device, usually a chip name thatAqs generic enough to hide second-sourcing and compatible revisions.
adapter
manages the bus segment hosting this I2C device
driver
deviceAqs driver, hence pointer to access routines
dev
Driver model device node for the slave.
irq
indicates the IRQ generated by this device (if any)
detected
member of an i2c_driver.clients list or i2c-coreAqs userspace_devices list
4. DESCRIPTION ▲
An i2c_client identifies a single device (i.e. chip) connected to an i2c bus. The behaviour exposed to Linux is defined by the driver managing the device.
5. COPYRIGHT ▲