[PATCH] i2c: qcom-geni: Fix return value for master_xfer
From: jorcrous
Date: Wed Feb 09 2022 - 16:04:15 EST
From: Jordan Crouse <jorcrous@xxxxxxxxxx>
The master_xfer function is supposed to return the number of messages that
were processed. Both geni_i2c_gpi_xfer and geni_i2c_fifo_xfer are
returning 0 which is being interpeted as a error in the upper layers.
Fixes: 8133682618cb ("i2c: qcom-geni: Add support for GPI DMA")
Signed-off-by: Jordan Crouse <jorcrous@xxxxxxxxxx>
---
drivers/i2c/busses/i2c-qcom-geni.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/i2c/busses/i2c-qcom-geni.c b/drivers/i2c/busses/i2c-qcom-geni.c
index c5345f3421a8..e008161e1a67 100644
--- a/drivers/i2c/busses/i2c-qcom-geni.c
+++ b/drivers/i2c/busses/i2c-qcom-geni.c
@@ -619,7 +619,7 @@ static int geni_i2c_gpi_xfer(struct geni_i2c_dev *gi2c, struct i2c_msg msgs[], i
geni_i2c_gpi_unmap(gi2c, &msgs[i], tx_buf, tx_addr, rx_buf, rx_addr);
}
- return 0;
+ return num;
err:
dmaengine_terminate_sync(gi2c->rx_c);
@@ -645,10 +645,10 @@ static int geni_i2c_fifo_xfer(struct geni_i2c_dev *gi2c,
ret = geni_i2c_tx_one_msg(gi2c, &msgs[i], m_param);
if (ret)
- break;
+ return ret;
}
- return ret;
+ return num;
}
static int geni_i2c_xfer(struct i2c_adapter *adap,
--
2.32.0