Scroll to navigation

STRUCT I2C_CLIENT(9) I2C and SMBus Subsystem STRUCT I2C_CLIENT(9)

NAME

struct_i2c_client - represent an I2C slave device

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; };

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 that´s generic enough to hide second-sourcing and compatible revisions.

adapter

manages the bus segment hosting this I2C device

driver

device´s 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-core´s userspace_devices list

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.

COPYRIGHT

April 2023 Kernel Hackers Manual 2.6.