diff options
| author | Takashi Iwai <tiwai@suse.de> | 2010-03-22 17:05:48 +0100 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2010-03-22 17:05:48 +0100 |
| commit | 2fb20b61550d3c5335e59819ed22734900d4d6e3 (patch) | |
| tree | 5ac7690306a0230b51e79afe5cfd3e6575b98cb1 /drivers/i2c/algos/i2c-algo-bit.c | |
| parent | 23caaf19b11eda7054348452e1618d4512a86907 (diff) | |
| parent | 6da7a2aa899f75116e1a62cef78c358ada9878b7 (diff) | |
| download | olio-linux-3.10-2fb20b61550d3c5335e59819ed22734900d4d6e3.tar.xz olio-linux-3.10-2fb20b61550d3c5335e59819ed22734900d4d6e3.zip | |
Merge branch 'topic/misc' into topic/usb
Diffstat (limited to 'drivers/i2c/algos/i2c-algo-bit.c')
| -rw-r--r-- | drivers/i2c/algos/i2c-algo-bit.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/i2c/algos/i2c-algo-bit.c b/drivers/i2c/algos/i2c-algo-bit.c index e25e13980af..e8d568c3fb0 100644 --- a/drivers/i2c/algos/i2c-algo-bit.c +++ b/drivers/i2c/algos/i2c-algo-bit.c @@ -522,6 +522,12 @@ static int bit_xfer(struct i2c_adapter *i2c_adap, int i, ret; unsigned short nak_ok; + if (adap->pre_xfer) { + ret = adap->pre_xfer(i2c_adap); + if (ret < 0) + return ret; + } + bit_dbg(3, &i2c_adap->dev, "emitting start condition\n"); i2c_start(adap); for (i = 0; i < num; i++) { @@ -570,6 +576,9 @@ static int bit_xfer(struct i2c_adapter *i2c_adap, bailout: bit_dbg(3, &i2c_adap->dev, "emitting stop condition\n"); i2c_stop(adap); + + if (adap->post_xfer) + adap->post_xfer(i2c_adap); return ret; } |