diff options
author | Maxime COQUELIN <maxime.coquelin@st.com> | 2014-02-28 07:52:56 -0500 |
---|---|---|
committer | Wolfram Sang <wsa@the-dreams.de> | 2014-03-10 12:35:08 -0400 |
commit | 4fda99627dc037d3b316c3b3250075645cfcbe4d (patch) | |
tree | 470cf4319541d41a2300f8a2826f83eb1b2e2aee | |
parent | cd5006db1b6b9128d1f5b0f1ad17cbced9d3841c (diff) |
i2c: st: Fix return in case of arbitration lost
This patch fixes the error returned to the i2c_transfer function
to -EAGAIN in case of arbitratin lost, so that the retry mechanism
can be used.
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
-rw-r--r-- | drivers/i2c/busses/i2c-st.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/i2c/busses/i2c-st.c b/drivers/i2c/busses/i2c-st.c index 9cf715d69551..872016196ef3 100644 --- a/drivers/i2c/busses/i2c-st.c +++ b/drivers/i2c/busses/i2c-st.c | |||
@@ -574,7 +574,7 @@ static irqreturn_t st_i2c_isr_thread(int irq, void *data) | |||
574 | writel_relaxed(it, i2c_dev->base + SSC_IEN); | 574 | writel_relaxed(it, i2c_dev->base + SSC_IEN); |
575 | 575 | ||
576 | st_i2c_set_bits(i2c_dev->base + SSC_I2C, SSC_I2C_STOPG); | 576 | st_i2c_set_bits(i2c_dev->base + SSC_I2C, SSC_I2C_STOPG); |
577 | c->result = -EIO; | 577 | c->result = -EAGAIN; |
578 | break; | 578 | break; |
579 | 579 | ||
580 | default: | 580 | default: |