From: Joshua Crofts Date: Mon, 11 May 2026 11:26:11 +0000 (+0200) Subject: iio: magnetometer: ak8975: check if gpiod read was successful X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=46dd701a39f0b6b1796e75a9eb87822b8b3a98f1;p=thirdparty%2Flinux.git iio: magnetometer: ak8975: check if gpiod read was successful Add a check that ensures that valid data has been read from GPIOD. If not, log an error and return the negative read value. Suggested-by: Jonathan Cameron Reviewed-by: Nuno Sá Signed-off-by: Joshua Crofts Reviewed-by: Maxwell Doose Signed-off-by: Jonathan Cameron --- diff --git a/drivers/iio/magnetometer/ak8975.c b/drivers/iio/magnetometer/ak8975.c index b990c123e2808..63b6e8465f5f3 100644 --- a/drivers/iio/magnetometer/ak8975.c +++ b/drivers/iio/magnetometer/ak8975.c @@ -658,6 +658,10 @@ static int wait_conversion_complete_gpio(struct ak8975_data *data, timeout_ms * USEC_PER_MSEC); if (ret) return ret; + if (val < 0) { + dev_err(&client->dev, "Error in reading GPIOD\n"); + return val; + } ret = i2c_smbus_read_byte_data(client, data->def->ctrl_regs[ST1]); if (ret < 0)