Bläddra i källkod

[i2c] fix the return value of rt_i2c_master_send/recv

fix the related PR: #7029
Wayne 2 år sedan
förälder
incheckning
3291882b38
1 ändrade filer med 2 tillägg och 2 borttagningar
  1. 2 2
      components/drivers/i2c/i2c_core.c

+ 2 - 2
components/drivers/i2c/i2c_core.c

@@ -122,7 +122,7 @@ rt_ssize_t rt_i2c_master_send(struct rt_i2c_bus_device *bus,
 
     ret = rt_i2c_transfer(bus, &msg, 1);
 
-    return ret;
+    return (ret == 1) ? count : ret;
 }
 
 rt_ssize_t rt_i2c_master_recv(struct rt_i2c_bus_device *bus,
@@ -142,5 +142,5 @@ rt_ssize_t rt_i2c_master_recv(struct rt_i2c_bus_device *bus,
 
     ret = rt_i2c_transfer(bus, &msg, 1);
 
-    return ret;
+    return (ret == 1) ? count : ret;
 }