Browse Source

[i2c] fix the return value of rt_i2c_master_send/recv

fix the related PR: #7029
Wayne 2 năm trước cách đây
mục cha
commit
3291882b38
1 tập tin đã thay đổi với 2 bổ sung2 xóa
  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;
 }