aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimofey Titovets <nefelim4ag@gmail.com>2024-09-28 19:51:59 +0200
committerKevinOConnor <kevin@koconnor.net>2024-10-26 22:06:30 -0400
commit1c3b30b8159717a416e2dcc9bf92038151f1fcd5 (patch)
tree5f98ec2e3706f8ac728371c56da35ce4186d7910
parent1563a68144500f6b0fea5dbd693e7648eb27b5f2 (diff)
downloadkutter-1c3b30b8159717a416e2dcc9bf92038151f1fcd5.tar.gz
kutter-1c3b30b8159717a416e2dcc9bf92038151f1fcd5.tar.xz
kutter-1c3b30b8159717a416e2dcc9bf92038151f1fcd5.zip
ldc1612: shutdown on i2c errors
Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
-rw-r--r--src/i2ccmds.h1
-rw-r--r--src/sensor_ldc1612.c3
2 files changed, 3 insertions, 1 deletions
diff --git a/src/i2ccmds.h b/src/i2ccmds.h
index 5e54b454..55c97b6b 100644
--- a/src/i2ccmds.h
+++ b/src/i2ccmds.h
@@ -26,5 +26,6 @@ void i2cdev_set_software_bus(struct i2cdev_s *i2c, struct i2c_software *is);
int i2c_dev_read(struct i2cdev_s *i2c, uint8_t reg_len, uint8_t *reg
, uint8_t read_len, uint8_t *read);
int i2c_dev_write(struct i2cdev_s *i2c, uint8_t write_len, uint8_t *data);
+void i2c_shutdown_on_err(int ret);
#endif
diff --git a/src/sensor_ldc1612.c b/src/sensor_ldc1612.c
index 28c0bed5..8b67884f 100644
--- a/src/sensor_ldc1612.c
+++ b/src/sensor_ldc1612.c
@@ -146,7 +146,8 @@ check_home(struct ldc1612 *ld, uint32_t data)
static void
read_reg(struct ldc1612 *ld, uint8_t reg, uint8_t *res)
{
- i2c_dev_read(ld->i2c, sizeof(reg), &reg, 2, res);
+ int ret = i2c_dev_read(ld->i2c, sizeof(reg), &reg, 2, res);
+ i2c_shutdown_on_err(ret);
}
// Read the status register on the ldc1612