Merge tag 'linux-watchdog-5.9-rc1' of git://www.linux-watchdog.org/linux-watchdog
[linux-2.6-microblaze.git] / drivers / iio / gyro / st_gyro_buffer.c
index 9c92ff7..4feb7ad 100644 (file)
@@ -33,13 +33,9 @@ static int st_gyro_buffer_postenable(struct iio_dev *indio_dev)
 {
        int err;
 
-       err = iio_triggered_buffer_postenable(indio_dev);
-       if (err < 0)
-               return err;
-
        err = st_sensors_set_axis_enable(indio_dev, indio_dev->active_scan_mask[0]);
        if (err < 0)
-               goto st_gyro_buffer_predisable;
+               return err;
 
        err = st_sensors_set_enable(indio_dev, true);
        if (err < 0)
@@ -49,27 +45,18 @@ static int st_gyro_buffer_postenable(struct iio_dev *indio_dev)
 
 st_gyro_buffer_enable_all_axis:
        st_sensors_set_axis_enable(indio_dev, ST_SENSORS_ENABLE_ALL_AXIS);
-st_gyro_buffer_predisable:
-       iio_triggered_buffer_predisable(indio_dev);
        return err;
 }
 
 static int st_gyro_buffer_predisable(struct iio_dev *indio_dev)
 {
-       int err, err2;
+       int err;
 
        err = st_sensors_set_enable(indio_dev, false);
        if (err < 0)
-               goto st_gyro_buffer_predisable;
-
-       err = st_sensors_set_axis_enable(indio_dev, ST_SENSORS_ENABLE_ALL_AXIS);
-
-st_gyro_buffer_predisable:
-       err2 = iio_triggered_buffer_predisable(indio_dev);
-       if (!err)
-               err = err2;
+               return err;
 
-       return err;
+       return st_sensors_set_axis_enable(indio_dev, ST_SENSORS_ENABLE_ALL_AXIS);
 }
 
 static const struct iio_buffer_setup_ops st_gyro_buffer_setup_ops = {