iio: imu: inv_mpu6050: fix an error code problem in inv_mpu6050_read_raw
authorSu Hui <suhui@nfschina.com>
Mon, 30 Oct 2023 02:02:19 +0000 (10:02 +0800)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 26 Nov 2023 17:08:55 +0000 (17:08 +0000)
inv_mpu6050_sensor_show() can return -EINVAL or IIO_VAL_INT. Return the
true value rather than only return IIO_VAL_INT.

Fixes: d5098447147c ("iio: imu: mpu6050: add calibration offset support")
Signed-off-by: Su Hui <suhui@nfschina.com>
Link: https://lore.kernel.org/r/20231030020218.65728-1-suhui@nfschina.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/imu/inv_mpu6050/inv_mpu_core.c

index 3fbeef1a70186bf0c7b969f4c52219d7344bf112..6b034dccc3b17ee4e7898ca9bbda08243a8cc544 100644 (file)
@@ -750,13 +750,13 @@ inv_mpu6050_read_raw(struct iio_dev *indio_dev,
                        ret = inv_mpu6050_sensor_show(st, st->reg->gyro_offset,
                                                chan->channel2, val);
                        mutex_unlock(&st->lock);
-                       return IIO_VAL_INT;
+                       return ret;
                case IIO_ACCEL:
                        mutex_lock(&st->lock);
                        ret = inv_mpu6050_sensor_show(st, st->reg->accl_offset,
                                                chan->channel2, val);
                        mutex_unlock(&st->lock);
-                       return IIO_VAL_INT;
+                       return ret;
 
                default:
                        return -EINVAL;