| From c6cbfb91b878224e78408a2e15901c79de77115a Mon Sep 17 00:00:00 2001 |
| From: Dmitry Torokhov <dmitry.torokhov@gmail.com> |
| Date: Mon, 20 Apr 2015 15:14:47 -0700 |
| Subject: i2c: rk3x: report number of messages transmitted |
| |
| From: Dmitry Torokhov <dmitry.torokhov@gmail.com> |
| |
| commit c6cbfb91b878224e78408a2e15901c79de77115a upstream. |
| |
| master_xfer() method should return number of i2c messages transferred, |
| but on Rockchip we were usually returning just 1, which caused trouble |
| with users that actually check number of transferred messages vs. |
| checking for negative error codes. |
| |
| Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> |
| Signed-off-by: Wolfram Sang <wsa@the-dreams.de> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/i2c/busses/i2c-rk3x.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/i2c/busses/i2c-rk3x.c |
| +++ b/drivers/i2c/busses/i2c-rk3x.c |
| @@ -833,7 +833,7 @@ static int rk3x_i2c_xfer(struct i2c_adap |
| clk_disable(i2c->clk); |
| spin_unlock_irqrestore(&i2c->lock, flags); |
| |
| - return ret; |
| + return ret < 0 ? ret : num; |
| } |
| |
| static u32 rk3x_i2c_func(struct i2c_adapter *adap) |