From 8c0b3ca2fd51edb9aa2b4e7e4db84ee26366fa89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Bj=C3=B6rnsson?= Date: Sat, 18 Nov 2023 12:35:59 +0100 Subject: [PATCH] sensor: adltc2990: add missing return value checks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit adds two missing return value checks for i2c reads. Fixes #65328 Signed-off-by: Benjamin Björnsson --- drivers/sensor/adltc2990/adltc2990.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/drivers/sensor/adltc2990/adltc2990.c b/drivers/sensor/adltc2990/adltc2990.c index 3fdfda24851..ea56065ede6 100644 --- a/drivers/sensor/adltc2990/adltc2990.c +++ b/drivers/sensor/adltc2990/adltc2990.c @@ -142,7 +142,7 @@ static int adltc2990_trigger_measurement(const struct device *dev) } static int adltc2990_fetch_property_value(const struct device *dev, - enum adltc2990_monitoring_type type, + enum adltc2990_monitoring_type type, enum adltc2990_monitor_pins pin, int32_t *output) { @@ -187,9 +187,17 @@ static int adltc2990_fetch_property_value(const struct device *dev, return -EINVAL; } } + int ret; - i2c_reg_read_byte_dt(&cfg->bus, msb_address, &msb_value); - i2c_reg_read_byte_dt(&cfg->bus, lsb_address, &lsb_value); + ret = i2c_reg_read_byte_dt(&cfg->bus, msb_address, &msb_value); + if (ret) { + return ret; + } + + ret = i2c_reg_read_byte_dt(&cfg->bus, lsb_address, &lsb_value); + if (ret) { + return ret; + } uint16_t conversion_factor; uint8_t negative_bit_index = 14U, sensor_val_divisor = 100U;