]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
iio: sx9310: Simplify error return handling
authorDaniel Campello <campello@chromium.org>
Mon, 3 Aug 2020 23:58:10 +0000 (17:58 -0600)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Thu, 3 Sep 2020 18:40:42 +0000 (19:40 +0100)
Checks for non-zero return values to signal error conditions.

Signed-off-by: Daniel Campello <campello@chromium.org>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/proximity/sx9310.c

index 419f47a2fbd58740c077735f05b2100bc25ac0d4..55269c2064c0d26b60ee7802ba7fff08e81ed890 100644 (file)
@@ -347,7 +347,7 @@ static int sx9310_read_prox_data(struct sx9310_data *data,
        int ret;
 
        ret = regmap_write(data->regmap, SX9310_REG_SENSOR_SEL, chan->channel);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        return regmap_bulk_read(data->regmap, chan->address, val, sizeof(*val));
@@ -363,7 +363,7 @@ static int sx9310_wait_for_sample(struct sx9310_data *data)
        unsigned int val;
 
        ret = regmap_read(data->regmap, SX9310_REG_PROX_CTRL0, &val);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        val = FIELD_GET(SX9310_REG_PROX_CTRL0_SCANPERIOD_MASK, val);
@@ -376,17 +376,17 @@ static int sx9310_wait_for_sample(struct sx9310_data *data)
 static int sx9310_read_proximity(struct sx9310_data *data,
                                 const struct iio_chan_spec *chan, int *val)
 {
-       int ret = 0;
+       int ret;
        __be16 rawval;
 
        mutex_lock(&data->mutex);
 
        ret = sx9310_get_read_channel(data, chan->channel);
-       if (ret < 0)
+       if (ret)
                goto out;
 
        ret = sx9310_enable_irq(data, SX9310_CONVDONE_IRQ);
-       if (ret < 0)
+       if (ret)
                goto out_put_channel;
 
        mutex_unlock(&data->mutex);
@@ -400,22 +400,22 @@ static int sx9310_read_proximity(struct sx9310_data *data,
 
        mutex_lock(&data->mutex);
 
-       if (ret < 0)
+       if (ret)
                goto out_disable_irq;
 
        ret = sx9310_read_prox_data(data, chan, &rawval);
-       if (ret < 0)
+       if (ret)
                goto out_disable_irq;
 
        *val = sign_extend32(be16_to_cpu(rawval),
                             (chan->address == SX9310_REG_DIFF_MSB ? 11 : 15));
 
        ret = sx9310_disable_irq(data, SX9310_CONVDONE_IRQ);
-       if (ret < 0)
+       if (ret)
                goto out_put_channel;
 
        ret = sx9310_put_read_channel(data, chan->channel);
-       if (ret < 0)
+       if (ret)
                goto out;
 
        mutex_unlock(&data->mutex);
@@ -437,7 +437,7 @@ static int sx9310_read_samp_freq(struct sx9310_data *data, int *val, int *val2)
        unsigned int regval;
        int ret = regmap_read(data->regmap, SX9310_REG_PROX_CTRL0, &regval);
 
-       if (ret < 0)
+       if (ret)
                return ret;
 
        regval = FIELD_GET(SX9310_REG_PROX_CTRL0_SCANPERIOD_MASK, regval);
@@ -539,7 +539,7 @@ static void sx9310_push_events(struct iio_dev *indio_dev)
 
        /* Read proximity state on all channels */
        ret = regmap_read(data->regmap, SX9310_REG_STAT0, &val);
-       if (ret < 0) {
+       if (ret) {
                dev_err(&data->client->dev, "i2c transfer error in irq\n");
                return;
        }
@@ -573,7 +573,7 @@ static irqreturn_t sx9310_irq_thread_handler(int irq, void *private)
        mutex_lock(&data->mutex);
 
        ret = regmap_read(data->regmap, SX9310_REG_IRQ_SRC, &val);
-       if (ret < 0) {
+       if (ret) {
                dev_err(&data->client->dev, "i2c transfer error in irq\n");
                goto out;
        }
@@ -616,20 +616,20 @@ static int sx9310_write_event_config(struct iio_dev *indio_dev,
        mutex_lock(&data->mutex);
        if (state) {
                ret = sx9310_get_event_channel(data, chan->channel);
-               if (ret < 0)
+               if (ret)
                        goto out_unlock;
                if (!(data->chan_event & ~BIT(chan->channel))) {
                        ret = sx9310_enable_irq(data, eventirq);
-                       if (ret < 0)
+                       if (ret)
                                sx9310_put_event_channel(data, chan->channel);
                }
        } else {
                ret = sx9310_put_event_channel(data, chan->channel);
-               if (ret < 0)
+               if (ret)
                        goto out_unlock;
                if (!data->chan_event) {
                        ret = sx9310_disable_irq(data, eventirq);
-                       if (ret < 0)
+                       if (ret)
                                sx9310_get_event_channel(data, chan->channel);
                }
        }
@@ -668,7 +668,7 @@ static int sx9310_set_trigger_state(struct iio_trigger *trig, bool state)
                ret = sx9310_enable_irq(data, SX9310_CONVDONE_IRQ);
        else if (!data->chan_read)
                ret = sx9310_disable_irq(data, SX9310_CONVDONE_IRQ);
-       if (ret < 0)
+       if (ret)
                goto out;
 
        data->trigger_enabled = state;
@@ -697,7 +697,7 @@ static irqreturn_t sx9310_trigger_handler(int irq, void *private)
                         indio_dev->masklength) {
                ret = sx9310_read_prox_data(data, &indio_dev->channels[bit],
                                            &val);
-               if (ret < 0)
+               if (ret)
                        goto out;
 
                data->buffer.channels[i++] = val;
@@ -802,13 +802,13 @@ static int sx9310_init_compensation(struct iio_dev *indio_dev)
        unsigned int ctrl0;
 
        ret = regmap_read(data->regmap, SX9310_REG_PROX_CTRL0, &ctrl0);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        /* run the compensation phase on all channels */
        ret = regmap_write(data->regmap, SX9310_REG_PROX_CTRL0,
                           ctrl0 | SX9310_REG_PROX_CTRL0_SENSOREN_MASK);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        ret = regmap_read_poll_timeout(data->regmap, SX9310_REG_STAT1, val,
@@ -834,21 +834,21 @@ static int sx9310_init_device(struct iio_dev *indio_dev)
        unsigned int i, val;
 
        ret = regmap_write(data->regmap, SX9310_REG_RESET, SX9310_SOFT_RESET);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        usleep_range(1000, 2000); /* power-up time is ~1ms. */
 
        /* Clear reset interrupt state by reading SX9310_REG_IRQ_SRC. */
        ret = regmap_read(data->regmap, SX9310_REG_IRQ_SRC, &val);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        /* Program some sane defaults. */
        for (i = 0; i < ARRAY_SIZE(sx9310_default_regs); i++) {
                initval = &sx9310_default_regs[i];
                ret = regmap_write(data->regmap, initval->reg, initval->def);
-               if (ret < 0)
+               if (ret)
                        return ret;
        }
 
@@ -902,14 +902,14 @@ static int sx9310_probe(struct i2c_client *client)
                return PTR_ERR(data->regmap);
 
        ret = regmap_read(data->regmap, SX9310_REG_WHOAMI, &data->whoami);
-       if (ret < 0) {
+       if (ret) {
                dev_err(&client->dev, "error in reading WHOAMI register: %d",
                        ret);
                return ret;
        }
 
        ret = sx9310_set_indio_dev_name(&client->dev, indio_dev, data->whoami);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        ACPI_COMPANION_SET(&indio_dev->dev, ACPI_COMPANION(&client->dev));
@@ -920,7 +920,7 @@ static int sx9310_probe(struct i2c_client *client)
        i2c_set_clientdata(client, indio_dev);
 
        ret = sx9310_init_device(indio_dev);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        if (client->irq) {
@@ -929,7 +929,7 @@ static int sx9310_probe(struct i2c_client *client)
                                                sx9310_irq_thread_handler,
                                                IRQF_TRIGGER_LOW | IRQF_ONESHOT,
                                                "sx9310_event", indio_dev);
-               if (ret < 0)
+               if (ret)
                        return ret;
 
                data->trig =
@@ -951,7 +951,7 @@ static int sx9310_probe(struct i2c_client *client)
                                              iio_pollfunc_store_time,
                                              sx9310_trigger_handler,
                                              &sx9310_buffer_setup_ops);
-       if (ret < 0)
+       if (ret)
                return ret;
 
        return devm_iio_device_register(&client->dev, indio_dev);