power: twl4030: Add twl4030_i2c_read() function
Function twl4030_i2c_read() is like twl4030_i2c_read_u8() but instead of
single value it rather returns array of values.
Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
diff --git a/drivers/power/twl4030.c b/drivers/power/twl4030.c
index b0d5cba..f48af84 100644
--- a/drivers/power/twl4030.c
+++ b/drivers/power/twl4030.c
@@ -201,7 +201,7 @@
return 0;
}
-int twl4030_i2c_read_u8(u8 chip_no, u8 reg, u8 *valp)
+int twl4030_i2c_read(u8 chip_no, u8 reg, u8 *valp, int len)
{
struct udevice *dev;
int ret;
@@ -211,12 +211,11 @@
pr_err("unable to get I2C bus. ret %d\n", ret);
return ret;
}
- ret = dm_i2c_reg_read(dev, reg);
- if (ret < 0) {
+ ret = dm_i2c_read(dev, reg, valp, len);
+ if (ret) {
pr_err("reading from twl4030 failed. ret %d\n", ret);
return ret;
}
- *valp = (u8)ret;
return 0;
}
#endif