|
@@ -323,6 +323,10 @@ static void rk3x_i2c_handle_read(struct rk3x_i2c *i2c, unsigned int ipd)
|
|
/* ack interrupt */
|
|
/* ack interrupt */
|
|
i2c_writel(i2c, REG_INT_MBRF, REG_IPD);
|
|
i2c_writel(i2c, REG_INT_MBRF, REG_IPD);
|
|
|
|
|
|
|
|
+ /* Can only handle a maximum of 32 bytes at a time */
|
|
|
|
+ if (len > 32)
|
|
|
|
+ len = 32;
|
|
|
|
+
|
|
/* read the data from receive buffer */
|
|
/* read the data from receive buffer */
|
|
for (i = 0; i < len; ++i) {
|
|
for (i = 0; i < len; ++i) {
|
|
if (i % 4 == 0)
|
|
if (i % 4 == 0)
|