[PATCH v3 5/8] iio: adc: ti-ads1015: use dev_err_probe() for error handling
Archit Anant <[email protected]>
| Newsgroups | org.kernel.vger.linux-iio,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Simplify the error handling paths in ads1015_probe() and ads1015_client_get_channels_config() by converting dev_err() calls that are immediately followed by a return statement over to the modern dev_err_probe() helper. Note: This patch takes advantage of the previously introduced local 'dev' pointer when converting the legacy dev_err(&client->dev, ...) calls, avoiding unnecessary code churn. Suggested-by: Jonathan Cameron <[email protected]> Signed-off-by: Archit Anant <[email protected]> --- drivers/iio/adc/ti-ads1015.c | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/drivers/iio/adc/ti-ads1015.c b/drivers/iio/adc/ti-ads1015.c index c88904d7190d..895bce7859d2 100644 --- a/drivers/iio/adc/ti-ads1015.c +++ b/drivers/iio/adc/ti-ads1015.c @@ -883,18 +883,16 @@ static int ads1015_client_get_channels_config(struct i2c_client *client) if (!fwnode_property_read_u32(node, "ti,gain", &pval)) { pga = pval; - if (pga > 5) { - dev_err(dev, "invalid gain on %pfw\n", node); - return -EINVAL; - } + if (pga > 5) + return dev_err_probe(dev, -EINVAL, + "invalid gain on %pfw\n", node); } if (!fwnode_property_read_u32(node, "ti,datarate", &pval)) { data_rate = pval; - if (data_rate > 7) { - dev_err(dev, "invalid data_rate on %pfw\n", node); - return -EINVAL; - } + if (data_rate > 7) + return dev_err_probe(dev, -EINVAL, + "invalid data_rate on %pfw\n", node); } data->channel_data[channel].pga = pga; @@ -978,18 +976,16 @@ static int ads1015_probe(struct i2c_client *client) data->regmap = devm_regmap_init_i2c(client, chip->has_comparator ? &ads1015_regmap_config : &tla2024_regmap_config); - if (IS_ERR(data->regmap)) { - dev_err(&client->dev, "Failed to allocate register map\n"); - return PTR_ERR(data->regmap); - } + if (IS_ERR(data->regmap)) + return dev_err_probe(dev, PTR_ERR(data->regmap), + "Failed to allocate register map\n"); ret = devm_iio_triggered_buffer_setup(dev, indio_dev, NULL, ads1015_trigger_handler, &ads1015_buffer_setup_ops); - if (ret < 0) { - dev_err(&client->dev, "iio triggered buffer setup failed\n"); - return ret; - } + if (ret < 0) + return dev_err_probe(dev, ret, + "iio triggered buffer setup failed\n"); if (client->irq && chip->has_comparator) { unsigned long irq_trig = irq_get_trigger_type(client->irq); @@ -1042,10 +1038,10 @@ static int ads1015_probe(struct i2c_client *client) ret = iio_device_register(indio_dev); if (ret < 0) { - dev_err(&client->dev, "Failed to register IIO device\n"); pm_runtime_disable(dev); pm_runtime_set_suspended(dev); - return ret; + return dev_err_probe(dev, ret, + "Failed to register IIO device\n"); } return 0; -- 2.39.5