diff options
| author | Ingo Molnar <mingo@elte.hu> | 2010-03-15 03:17:33 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2010-03-15 03:17:33 -0400 |
| commit | 12b8aeee3e51654fb95a3baff2e093f2513bb87d (patch) | |
| tree | 73f78d62591b197cd53747e36a2f3d707b79a50b /drivers/i2c/algos | |
| parent | 25268498c9e07870323aead10751b7c6e99a3a78 (diff) | |
| parent | a3d3203e4bb40f253b1541e310dc0f9305be7c84 (diff) | |
Merge branch 'linus' into timers/core
Conflicts:
Documentation/feature-removal-schedule.txt
Merge reason: Resolve the conflict, update to upstream.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'drivers/i2c/algos')
| -rw-r--r-- | drivers/i2c/algos/i2c-algo-bit.c | 9 | ||||
| -rw-r--r-- | drivers/i2c/algos/i2c-algo-pcf.c | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/drivers/i2c/algos/i2c-algo-bit.c b/drivers/i2c/algos/i2c-algo-bit.c index e25e13980af3..e8d568c3fb09 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, | |||
| 522 | int i, ret; | 522 | int i, ret; |
| 523 | unsigned short nak_ok; | 523 | unsigned short nak_ok; |
| 524 | 524 | ||
| 525 | if (adap->pre_xfer) { | ||
| 526 | ret = adap->pre_xfer(i2c_adap); | ||
| 527 | if (ret < 0) | ||
| 528 | return ret; | ||
| 529 | } | ||
| 530 | |||
| 525 | bit_dbg(3, &i2c_adap->dev, "emitting start condition\n"); | 531 | bit_dbg(3, &i2c_adap->dev, "emitting start condition\n"); |
| 526 | i2c_start(adap); | 532 | i2c_start(adap); |
| 527 | for (i = 0; i < num; i++) { | 533 | for (i = 0; i < num; i++) { |
| @@ -570,6 +576,9 @@ static int bit_xfer(struct i2c_adapter *i2c_adap, | |||
| 570 | bailout: | 576 | bailout: |
| 571 | bit_dbg(3, &i2c_adap->dev, "emitting stop condition\n"); | 577 | bit_dbg(3, &i2c_adap->dev, "emitting stop condition\n"); |
| 572 | i2c_stop(adap); | 578 | i2c_stop(adap); |
| 579 | |||
| 580 | if (adap->post_xfer) | ||
| 581 | adap->post_xfer(i2c_adap); | ||
| 573 | return ret; | 582 | return ret; |
| 574 | } | 583 | } |
| 575 | 584 | ||
diff --git a/drivers/i2c/algos/i2c-algo-pcf.c b/drivers/i2c/algos/i2c-algo-pcf.c index 7ce75775ec73..6b6bd06202b2 100644 --- a/drivers/i2c/algos/i2c-algo-pcf.c +++ b/drivers/i2c/algos/i2c-algo-pcf.c | |||
| @@ -176,7 +176,7 @@ static int pcf_init_8584 (struct i2c_algo_pcf_data *adap) | |||
| 176 | */ | 176 | */ |
| 177 | if (((temp = get_pcf(adap, 1)) & 0x7f) != (0)) { | 177 | if (((temp = get_pcf(adap, 1)) & 0x7f) != (0)) { |
| 178 | DEB2(printk(KERN_ERR "i2c-algo-pcf.o: PCF detection failed -- can't select S0 (0x%02x).\n", temp)); | 178 | DEB2(printk(KERN_ERR "i2c-algo-pcf.o: PCF detection failed -- can't select S0 (0x%02x).\n", temp)); |
| 179 | return -ENXIO; /* definetly not PCF8584 */ | 179 | return -ENXIO; /* definitely not PCF8584 */ |
| 180 | } | 180 | } |
| 181 | 181 | ||
| 182 | /* load own address in S0, effective address is (own << 1) */ | 182 | /* load own address in S0, effective address is (own << 1) */ |
