iio: sensors-core: st: Clean-up error handling in st_sensors_init_sensor()
authorLee Jones <lee.jones@linaro.org>
Mon, 16 Sep 2013 16:02:00 +0000 (17:02 +0100)
committerJonathan Cameron <jic23@kernel.org>
Sat, 21 Sep 2013 18:24:04 +0000 (19:24 +0100)
Strip out all those unnecessary gotos and just return the error right away.

Aids to simplicity and reduces 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 d21b611d875bb9801fa6de68a8e98f1219f8c683..32a56fda51fec4a012c8a7d069f4418cb3dd835e 100644 (file)
@@ -241,29 +241,28 @@ int st_sensors_init_sensor(struct iio_dev *indio_dev,
 
        err = st_sensors_set_enable(indio_dev, false);
        if (err < 0)
-               goto init_error;
+               return err;
 
        if (sdata->current_fullscale) {
                err = st_sensors_set_fullscale(indio_dev,
                                               sdata->current_fullscale->num);
                if (err < 0)
-                       goto init_error;
+                       return err;
        } else
                dev_info(&indio_dev->dev, "Full-scale not possible\n");
 
        err = st_sensors_set_odr(indio_dev, sdata->odr);
        if (err < 0)
-               goto init_error;
+               return err;
 
        /* set BDU */
        err = st_sensors_write_data_with_mask(indio_dev,
                        sdata->sensor->bdu.addr, sdata->sensor->bdu.mask, true);
        if (err < 0)
-               goto init_error;
+               return err;
 
        err = st_sensors_set_axis_enable(indio_dev, ST_SENSORS_ENABLE_ALL_AXIS);
 
-init_error:
        return err;
 }
 EXPORT_SYMBOL(st_sensors_init_sensor);