iio: sensors-core: st: Clean-up error handling in st_sensors_read_info_raw()
authorLee Jones <lee.jones@linaro.org>
Tue, 10 Sep 2013 12:49:00 +0000 (13:49 +0100)
committerJonathan Cameron <jic23@kernel.org>
Sat, 14 Sep 2013 20:17:16 +0000 (21:17 +0100)
Saving a few lines of code.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/iio/common/st_sensors/st_sensors_core.c

index eb261a58fc6862c271094c7a96d2451636b30ae9..793136aff390a33a3fe323cd750933d62da46a7e 100644 (file)
@@ -352,28 +352,25 @@ int st_sensors_read_info_raw(struct iio_dev *indio_dev,
        mutex_lock(&indio_dev->mlock);
        if (indio_dev->currentmode == INDIO_BUFFER_TRIGGERED) {
                err = -EBUSY;
-               goto read_error;
+               goto out;
        } else {
                err = st_sensors_set_enable(indio_dev, true);
                if (err < 0)
-                       goto read_error;
+                       goto out;
 
                msleep((sdata->sensor->bootime * 1000) / sdata->odr);
                err = st_sensors_read_axis_data(indio_dev, ch, val);
                if (err < 0)
-                       goto read_error;
+                       goto out;
 
                *val = *val >> ch->scan_type.shift;
 
                err = st_sensors_set_enable(indio_dev, false);
        }
+out:
        mutex_unlock(&indio_dev->mlock);
 
        return err;
-
-read_error:
-       mutex_unlock(&indio_dev->mlock);
-       return err;
 }
 EXPORT_SYMBOL(st_sensors_read_info_raw);