mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
i2c: Rename the PEC functionality bit
Rename I2C_FUNC_SMBUS_HWPEC_CALC as I2C_FUNC_SMBUS_PEC, and list that functionality as always available through the software implementation. Update documentation accordingly (and list similar requirements). The way it's currently packaged doesn't present the capability in a useful way. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
This commit is contained in:
parent
24d0fb423c
commit
6662cbb989
4 changed files with 13 additions and 7 deletions
|
@ -90,12 +90,15 @@ ioctl(file,I2C_SLAVE,long addr)
|
||||||
|
|
||||||
ioctl(file,I2C_TENBIT,long select)
|
ioctl(file,I2C_TENBIT,long select)
|
||||||
Selects ten bit addresses if select not equals 0, selects normal 7 bit
|
Selects ten bit addresses if select not equals 0, selects normal 7 bit
|
||||||
addresses if select equals 0. Default 0.
|
addresses if select equals 0. Default 0. This request is only valid
|
||||||
|
if the adapter has I2C_FUNC_10BIT_ADDR.
|
||||||
|
|
||||||
ioctl(file,I2C_PEC,long select)
|
ioctl(file,I2C_PEC,long select)
|
||||||
Selects SMBus PEC (packet error checking) generation and verification
|
Selects SMBus PEC (packet error checking) generation and verification
|
||||||
if select not equals 0, disables if select equals 0. Default 0.
|
if select not equals 0, disables if select equals 0. Default 0.
|
||||||
Used only for SMBus transactions.
|
Used only for SMBus transactions. This request only has an effect if the
|
||||||
|
the adapter has I2C_FUNC_SMBUS_PEC; it is still safe if not, it just
|
||||||
|
doesn't have any effect.
|
||||||
|
|
||||||
ioctl(file,I2C_FUNCS,unsigned long *funcs)
|
ioctl(file,I2C_FUNCS,unsigned long *funcs)
|
||||||
Gets the adapter functionality and puts it in *funcs.
|
Gets the adapter functionality and puts it in *funcs.
|
||||||
|
@ -103,8 +106,10 @@ ioctl(file,I2C_FUNCS,unsigned long *funcs)
|
||||||
ioctl(file,I2C_RDWR,struct i2c_rdwr_ioctl_data *msgset)
|
ioctl(file,I2C_RDWR,struct i2c_rdwr_ioctl_data *msgset)
|
||||||
|
|
||||||
Do combined read/write transaction without stop in between.
|
Do combined read/write transaction without stop in between.
|
||||||
The argument is a pointer to a struct i2c_rdwr_ioctl_data {
|
Only valid if the adapter has I2C_FUNC_I2C. The argument is
|
||||||
|
a pointer to a
|
||||||
|
|
||||||
|
struct i2c_rdwr_ioctl_data {
|
||||||
struct i2c_msg *msgs; /* ptr to array of simple messages */
|
struct i2c_msg *msgs; /* ptr to array of simple messages */
|
||||||
int nmsgs; /* number of messages to exchange */
|
int nmsgs; /* number of messages to exchange */
|
||||||
}
|
}
|
||||||
|
|
|
@ -326,7 +326,7 @@ static u32 amd8111_func(struct i2c_adapter *adapter)
|
||||||
I2C_FUNC_SMBUS_BYTE_DATA |
|
I2C_FUNC_SMBUS_BYTE_DATA |
|
||||||
I2C_FUNC_SMBUS_WORD_DATA | I2C_FUNC_SMBUS_BLOCK_DATA |
|
I2C_FUNC_SMBUS_WORD_DATA | I2C_FUNC_SMBUS_BLOCK_DATA |
|
||||||
I2C_FUNC_SMBUS_PROC_CALL | I2C_FUNC_SMBUS_BLOCK_PROC_CALL |
|
I2C_FUNC_SMBUS_PROC_CALL | I2C_FUNC_SMBUS_BLOCK_PROC_CALL |
|
||||||
I2C_FUNC_SMBUS_I2C_BLOCK | I2C_FUNC_SMBUS_HWPEC_CALC;
|
I2C_FUNC_SMBUS_I2C_BLOCK | I2C_FUNC_SMBUS_PEC;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct i2c_algorithm smbus_algorithm = {
|
static const struct i2c_algorithm smbus_algorithm = {
|
||||||
|
|
|
@ -516,7 +516,7 @@ static u32 i801_func(struct i2c_adapter *adapter)
|
||||||
return I2C_FUNC_SMBUS_QUICK | I2C_FUNC_SMBUS_BYTE |
|
return I2C_FUNC_SMBUS_QUICK | I2C_FUNC_SMBUS_BYTE |
|
||||||
I2C_FUNC_SMBUS_BYTE_DATA | I2C_FUNC_SMBUS_WORD_DATA |
|
I2C_FUNC_SMBUS_BYTE_DATA | I2C_FUNC_SMBUS_WORD_DATA |
|
||||||
I2C_FUNC_SMBUS_BLOCK_DATA | I2C_FUNC_SMBUS_WRITE_I2C_BLOCK
|
I2C_FUNC_SMBUS_BLOCK_DATA | I2C_FUNC_SMBUS_WRITE_I2C_BLOCK
|
||||||
| (isich4 ? I2C_FUNC_SMBUS_HWPEC_CALC : 0);
|
| (isich4 ? I2C_FUNC_SMBUS_PEC : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct i2c_algorithm smbus_algorithm = {
|
static const struct i2c_algorithm smbus_algorithm = {
|
||||||
|
|
|
@ -491,7 +491,7 @@ struct i2c_msg {
|
||||||
#define I2C_FUNC_I2C 0x00000001
|
#define I2C_FUNC_I2C 0x00000001
|
||||||
#define I2C_FUNC_10BIT_ADDR 0x00000002
|
#define I2C_FUNC_10BIT_ADDR 0x00000002
|
||||||
#define I2C_FUNC_PROTOCOL_MANGLING 0x00000004 /* I2C_M_{REV_DIR_ADDR,NOSTART,..} */
|
#define I2C_FUNC_PROTOCOL_MANGLING 0x00000004 /* I2C_M_{REV_DIR_ADDR,NOSTART,..} */
|
||||||
#define I2C_FUNC_SMBUS_HWPEC_CALC 0x00000008 /* SMBus 2.0 */
|
#define I2C_FUNC_SMBUS_PEC 0x00000008
|
||||||
#define I2C_FUNC_SMBUS_BLOCK_PROC_CALL 0x00008000 /* SMBus 2.0 */
|
#define I2C_FUNC_SMBUS_BLOCK_PROC_CALL 0x00008000 /* SMBus 2.0 */
|
||||||
#define I2C_FUNC_SMBUS_QUICK 0x00010000
|
#define I2C_FUNC_SMBUS_QUICK 0x00010000
|
||||||
#define I2C_FUNC_SMBUS_READ_BYTE 0x00020000
|
#define I2C_FUNC_SMBUS_READ_BYTE 0x00020000
|
||||||
|
@ -527,7 +527,8 @@ struct i2c_msg {
|
||||||
I2C_FUNC_SMBUS_WORD_DATA | \
|
I2C_FUNC_SMBUS_WORD_DATA | \
|
||||||
I2C_FUNC_SMBUS_PROC_CALL | \
|
I2C_FUNC_SMBUS_PROC_CALL | \
|
||||||
I2C_FUNC_SMBUS_WRITE_BLOCK_DATA | \
|
I2C_FUNC_SMBUS_WRITE_BLOCK_DATA | \
|
||||||
I2C_FUNC_SMBUS_I2C_BLOCK)
|
I2C_FUNC_SMBUS_I2C_BLOCK | \
|
||||||
|
I2C_FUNC_SMBUS_PEC)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Data for SMBus Messages
|
* Data for SMBus Messages
|
||||||
|
|
Loading…
Reference in a new issue