iio: imu: inv_mpu6050: dynamic sampling rate change
authorJean-Baptiste Maneyrol <jmaneyrol@invensense.com>
Wed, 19 Feb 2020 14:39:56 +0000 (15:39 +0100)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 8 Mar 2020 17:28:39 +0000 (17:28 +0000)
Sampling rate can be changed while the chip is running. It can
be useful thus do not prevent it.

Signed-off-by: Jean-Baptiste Maneyrol <jmaneyrol@invensense.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/imu/inv_mpu6050/inv_mpu_core.c

index aeee396..9076b6b 100644 (file)
@@ -910,10 +910,6 @@ inv_mpu6050_fifo_rate_store(struct device *dev, struct device_attribute *attr,
            fifo_rate > INV_MPU6050_MAX_FIFO_RATE)
                return -EINVAL;
 
-       result = iio_device_claim_direct_mode(indio_dev);
-       if (result)
-               return result;
-
        /* compute the chip sample rate divider */
        d = INV_MPU6050_FIFO_RATE_TO_DIVIDER(fifo_rate);
        /* compute back the fifo rate to handle truncation cases */
@@ -946,7 +942,6 @@ fifo_rate_fail_power_off:
        result |= inv_mpu6050_set_power_itg(st, false);
 fifo_rate_fail_unlock:
        mutex_unlock(&st->lock);
-       iio_device_release_direct_mode(indio_dev);
        if (result)
                return result;