'\" t .\" Title: struct i2c_client .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.78.1 .\" Date: January 2017 .\" Manual: I2C and SMBus Subsystem .\" Source: Kernel Hackers Manual 4.8.15 .\" Language: English .\" .TH "STRUCT I2C_CLIENT" "9" "January 2017" "Kernel Hackers Manual 4\&.8\&." "I2C and SMBus Subsystem" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" struct_i2c_client \- represent an I2C slave device .SH "SYNOPSIS" .sp .nf struct i2c_client { unsigned short flags; unsigned short addr; char name[I2C_NAME_SIZE]; struct i2c_adapter * adapter; struct device dev; int irq; struct list_head detected; #if IS_ENABLED(CONFIG_I2C_SLAVE) i2c_slave_cb_t slave_cb; #endif }; .fi .SH "MEMBERS" .PP flags .RS 4 I2C_CLIENT_TEN indicates the device uses a ten bit chip address; I2C_CLIENT_PEC indicates it uses SMBus Packet Error Checking .RE .PP addr .RS 4 Address used on the I2C bus connected to the parent adapter\&. .RE .PP name[I2C_NAME_SIZE] .RS 4 Indicates the type of the device, usually a chip name that\*(Aqs generic enough to hide second\-sourcing and compatible revisions\&. .RE .PP adapter .RS 4 manages the bus segment hosting this I2C device .RE .PP dev .RS 4 Driver model device node for the slave\&. .RE .PP irq .RS 4 indicates the IRQ generated by this device (if any) .RE .PP detected .RS 4 member of an i2c_driver\&.clients list or i2c\-core\*(Aqs userspace_devices list .RE .PP slave_cb .RS 4 Callback when I2C slave mode of an adapter is used\&. The adapter calls it to pass on slave events to the slave driver\&. .RE .SH "DESCRIPTION" .PP 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\&. .SH "COPYRIGHT" .br