Re: [PATCH 10/15] iio: sx9310: Simplify error return handling

From: Andy Shevchenko
Date: Tue Jul 28 2020 - 14:15:26 EST


On Tue, Jul 28, 2020 at 6:14 PM Daniel Campello <campello@xxxxxxxxxxxx> wrote:
>
> Checks for non-zero return values to signal error conditions.

Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>

> Signed-off-by: Daniel Campello <campello@xxxxxxxxxxxx>
> ---
>
> drivers/iio/proximity/sx9310.c | 52 +++++++++++++++++-----------------
> 1 file changed, 26 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/iio/proximity/sx9310.c b/drivers/iio/proximity/sx9310.c
> index 31234691a31abf..051c6515e62c18 100644
> --- a/drivers/iio/proximity/sx9310.c
> +++ b/drivers/iio/proximity/sx9310.c
> @@ -338,7 +338,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));
> @@ -354,7 +354,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 = (val & SX9310_REG_PROX_CTRL0_SCANPERIOD_MASK) >>
> @@ -368,13 +368,13 @@ 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;
>
> if (data->client->irq) {
> @@ -394,11 +394,11 @@ 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),
> @@ -411,7 +411,7 @@ static int sx9310_read_proximity(struct sx9310_data *data,
> }
>
> ret = sx9310_put_read_channel(data, chan->channel);
> - if (ret < 0)
> + if (ret)
> goto out;
>
> mutex_unlock(&data->mutex);
> @@ -434,7 +434,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 = (regval & SX9310_REG_PROX_CTRL0_SCANPERIOD_MASK) >>
> @@ -535,7 +535,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;
> }
> @@ -570,7 +570,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;
> }
> @@ -613,20 +613,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);
> }
> }
> @@ -665,7 +665,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;
> @@ -694,7 +694,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[i++] = val;
> @@ -801,13 +801,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,
> @@ -833,21 +833,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;
> }
>
> @@ -901,14 +901,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);
> --
> 2.28.0.rc0.142.g3c755180ce-goog
>


--
With Best Regards,
Andy Shevchenko