summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-07-24 13:44:40 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2012-07-24 13:44:40 -0700
commitddb03448274b95bff6df2a2f1a74d7eb4be529d3 (patch)
treebd54ec00a4c49ab359a1e7ecce85099f2eedf11d /include
parentdbf7b5915b39bfff548e4c6a3a753fc291a60e25 (diff)
parentfb604a3d58b79ef722942f664f11dee5e1f73ea4 (diff)
Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging
Pull i2c updates from Jean Delvare: "The most important changes here are a big cleanup of the i2c-piix4 driver, cleanups and interrupt support to the i2c-i801 driver, and support for the SCCB protocol." * 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: i2c-omap: Add support for I2C_M_STOP message flag i2c: Fall back to emulated SMBus if the operation isn't supported natively i2c: Add SCCB support i2c-tiny-usb: Add support for the Robofuzz OSIF USB/I2C converter i2c-i801: Enable IRQ for byte_by_byte transactions i2c-i801: Enable interrupts on ICH5/7/8/9/10 i2c-i801: Enable IRQ for SMBus transactions i2c-i801: Consolidate polling i2c-i801: Drop ENABLE_INT9 i2c-i801: Rename some SMBHSTCNT bit constants i2c-i801: Check and return errors during byte-by-byte transfers i2c-i801: Clear only status bits in HST_STS i2c-i801: Refactor use of LAST_BYTE in i801_block_transaction_byte_by_byte i2c-smbus: Use module_i2c_driver() i2c/writing-clients: Mention module_i2c_driver() i2c-piix4: Support AMD auxiliary SMBus controller i2c-piix4: Separate registration and probing code i2c-piix4: Eliminate piix4_smba global variable i2c/busses: Use module_pci_driver i2c: Update Guenter Roeck's e-mail address
Diffstat (limited to 'include')
-rw-r--r--include/linux/i2c.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/i2c.h b/include/linux/i2c.h
index ddfa04108baf..1d0fe4877b1f 100644
--- a/include/linux/i2c.h
+++ b/include/linux/i2c.h
@@ -425,6 +425,8 @@ void i2c_unlock_adapter(struct i2c_adapter *);
#define I2C_CLIENT_TEN 0x10 /* we have a ten bit chip address */
/* Must equal I2C_M_TEN below */
#define I2C_CLIENT_WAKE 0x80 /* for board_info; true iff can wake */
+#define I2C_CLIENT_SCCB 0x9000 /* Use Omnivision SCCB protocol */
+ /* Must match I2C_M_STOP|IGNORE_NAK */
/* i2c adapter classes (bitmask) */
#define I2C_CLASS_HWMON (1<<0) /* lm_sensors, ... */
@@ -541,6 +543,7 @@ struct i2c_msg {
__u16 flags;
#define I2C_M_TEN 0x0010 /* this is a ten bit chip address */
#define I2C_M_RD 0x0001 /* read data, from slave to master */
+#define I2C_M_STOP 0x8000 /* if I2C_FUNC_PROTOCOL_MANGLING */
#define I2C_M_NOSTART 0x4000 /* if I2C_FUNC_NOSTART */
#define I2C_M_REV_DIR_ADDR 0x2000 /* if I2C_FUNC_PROTOCOL_MANGLING */
#define I2C_M_IGNORE_NAK 0x1000 /* if I2C_FUNC_PROTOCOL_MANGLING */