[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250813225840.576305-6-afd@ti.com>
Date: Wed, 13 Aug 2025 17:58:40 -0500
From: Andrew Davis <afd@...com>
To: Jonathan Cameron <jic23@...nel.org>,
David Lechner
<dlechner@...libre.com>,
Nuno Sá <nuno.sa@...log.com>,
Andy Shevchenko <andy@...nel.org>
CC: <linux-iio@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
Andrew Davis
<afd@...com>
Subject: [PATCH 6/6] iio: health: afe4404: Use dev_err_probe() helper
This checks for EPROBE_DEFER and allows us to print out the error code
while return it directly saving some lines of code.
Signed-off-by: Andrew Davis <afd@...com>
---
drivers/iio/health/afe4404.c | 62 +++++++++++++-----------------------
1 file changed, 22 insertions(+), 40 deletions(-)
diff --git a/drivers/iio/health/afe4404.c b/drivers/iio/health/afe4404.c
index 19dd821155dd4..18f3cf94e8f71 100644
--- a/drivers/iio/health/afe4404.c
+++ b/drivers/iio/health/afe4404.c
@@ -460,39 +460,31 @@ static int afe4404_probe(struct i2c_client *client)
afe->irq = client->irq;
afe->regmap = devm_regmap_init_i2c(client, &afe4404_regmap_config);
- if (IS_ERR(afe->regmap)) {
- dev_err(dev, "Unable to allocate register map\n");
- return PTR_ERR(afe->regmap);
- }
+ if (IS_ERR(afe->regmap))
+ return dev_err_probe(dev, PTR_ERR(afe->regmap),
+ "Unable to allocate register map\n");
for (i = 0; i < F_MAX_FIELDS; i++) {
afe->fields[i] = devm_regmap_field_alloc(dev, afe->regmap,
afe4404_reg_fields[i]);
- if (IS_ERR(afe->fields[i])) {
- dev_err(dev, "Unable to allocate regmap fields\n");
- return PTR_ERR(afe->fields[i]);
- }
+ if (IS_ERR(afe->fields[i]))
+ return dev_err_probe(dev, PTR_ERR(afe->fields[i]),
+ "Unable to allocate regmap fields\n");
}
ret = devm_regulator_get_enable(dev, "tx_sup");
- if (ret) {
- dev_err(dev, "Unable to enable regulator\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "Unable to enable regulator\n");
ret = regmap_write(afe->regmap, AFE440X_CONTROL0,
AFE440X_CONTROL0_SW_RESET);
- if (ret) {
- dev_err(dev, "Unable to reset device\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "Unable to reset device\n");
ret = regmap_multi_reg_write(afe->regmap, afe4404_reg_sequences,
ARRAY_SIZE(afe4404_reg_sequences));
- if (ret) {
- dev_err(dev, "Unable to set register defaults\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "Unable to set register defaults\n");
indio_dev->modes = INDIO_DIRECT_MODE;
indio_dev->channels = afe4404_channels;
@@ -505,43 +497,33 @@ static int afe4404_probe(struct i2c_client *client)
"%s-dev%d",
indio_dev->name,
iio_device_id(indio_dev));
- if (!afe->trig) {
- dev_err(dev, "Unable to allocate IIO trigger\n");
- return -ENOMEM;
- }
+ if (!afe->trig)
+ return dev_err_probe(dev, -ENOMEM, "Unable to allocate IIO trigger\n");
iio_trigger_set_drvdata(afe->trig, indio_dev);
ret = devm_iio_trigger_register(dev, afe->trig);
- if (ret) {
- dev_err(dev, "Unable to register IIO trigger\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "Unable to register IIO trigger\n");
ret = devm_request_threaded_irq(dev, afe->irq,
iio_trigger_generic_data_rdy_poll,
NULL, IRQF_ONESHOT,
AFE4404_DRIVER_NAME,
afe->trig);
- if (ret) {
- dev_err(dev, "Unable to request IRQ\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "Unable to request IRQ\n");
}
ret = devm_iio_triggered_buffer_setup(dev, indio_dev,
&iio_pollfunc_store_time,
afe4404_trigger_handler, NULL);
- if (ret) {
- dev_err(dev, "Unable to setup buffer\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "Unable to setup buffer\n");
ret = devm_iio_device_register(dev, indio_dev);
- if (ret) {
- dev_err(dev, "Unable to register IIO device\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "Unable to register IIO device\n");
return 0;
}
--
2.39.2
Powered by blists - more mailing lists