From: Prashant Rahul <prashantrahul23@gmail.com>
To: Jonathan Cameron <jic23@kernel.org>, linux-iio@vger.kernel.org
Cc: "Shuah Khan" <shuahkhan@gmail.com>,
"Prashant Rahul" <prashantrahul23@gmail.com>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Matti Vaittinen" <mazziesaccount@gmail.com>,
"Petr Mladek" <pmladek@suse.com>,
"Oleg Nesterov" <oleg@redhat.com>,
"Sebastian Andrzej Siewior" <bigeasy@linutronix.de>,
"Uwe Kleine-König (The Capable Hub)"
<u.kleine-koenig@baylibre.com>,
"John Ogness" <john.ogness@linutronix.de>,
"Dixit Parmar" <dixitparmar19@gmail.com>,
linux-kernel@vger.kernel.org
Subject: [PATCH] iio: adc: ti-adc*: use dev_err_probe for probe time errors
Date: Tue, 16 Jun 2026 18:35:43 +0530 [thread overview]
Message-ID: <20260616130612.73122-1-prashantrahul23@gmail.com> (raw)
This simplifies error handling and ensures consistent error reporting.
Also add missing error messages in a few probe paths where failures were
previously returned without any diagnostics.
Signed-off-by: Prashant Rahul <prashantrahul23@gmail.com>
---
drivers/iio/adc/ti-adc081c.c | 10 ++++------
drivers/iio/adc/ti-adc0832.c | 6 +++---
drivers/iio/adc/ti-adc084s021.c | 3 +--
drivers/iio/adc/ti-adc108s102.c | 2 +-
drivers/iio/adc/ti-adc128s052.c | 2 +-
drivers/iio/adc/ti-adc161s626.c | 6 +++---
6 files changed, 13 insertions(+), 16 deletions(-)
diff --git a/drivers/iio/adc/ti-adc081c.c b/drivers/iio/adc/ti-adc081c.c
index 33f82bdfeb94..f6ce23975b80 100644
--- a/drivers/iio/adc/ti-adc081c.c
+++ b/drivers/iio/adc/ti-adc081c.c
@@ -174,26 +174,24 @@ static int adc081c_probe(struct i2c_client *client)
err = regulator_enable(adc->ref);
if (err < 0)
- return err;
+ return dev_err_probe(&client->dev, err, "failed to enable regulator\n");
err = devm_add_action_or_reset(&client->dev, adc081c_reg_disable,
adc->ref);
if (err)
- return err;
+ return dev_err_probe(&client->dev, err, "failed to register cleanup action\n");
iio->name = dev_name(&client->dev);
iio->modes = INDIO_DIRECT_MODE;
iio->info = &adc081c_info;
iio->channels = model->channels;
iio->num_channels = ADC081C_NUM_CHANNELS;
err = devm_iio_triggered_buffer_setup(&client->dev, iio, NULL,
adc081c_trigger_handler, NULL);
- if (err < 0) {
- dev_err(&client->dev, "iio triggered buffer setup failed\n");
- return err;
- }
+ if (err < 0)
+ return dev_err_probe(&client->dev, err, "iio triggered buffer setup failed\n");
return devm_iio_device_register(&client->dev, iio);
}
diff --git a/drivers/iio/adc/ti-adc0832.c b/drivers/iio/adc/ti-adc0832.c
index cfcdafbe284b..ecd5dbb76e75 100644
--- a/drivers/iio/adc/ti-adc0832.c
+++ b/drivers/iio/adc/ti-adc0832.c
@@ -289,17 +289,17 @@ static int adc0832_probe(struct spi_device *spi)
ret = regulator_enable(adc->reg);
if (ret)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "failed to enable regulator\n");
ret = devm_add_action_or_reset(&spi->dev, adc0832_reg_disable,
adc->reg);
if (ret)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "failed to register cleanup action\n");
ret = devm_iio_triggered_buffer_setup(&spi->dev, indio_dev, NULL,
adc0832_trigger_handler, NULL);
if (ret)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "iio triggered buffer setup failed\n");
return devm_iio_device_register(&spi->dev, indio_dev);
}
diff --git a/drivers/iio/adc/ti-adc084s021.c b/drivers/iio/adc/ti-adc084s021.c
index a100f770fa1c..9c7ee09955ca 100644
--- a/drivers/iio/adc/ti-adc084s021.c
+++ b/drivers/iio/adc/ti-adc084s021.c
@@ -230,8 +230,7 @@ static int adc084s021_probe(struct spi_device *spi)
adc084s021_buffer_trigger_handler,
&adc084s021_buffer_setup_ops);
if (ret) {
- dev_err(&spi->dev, "Failed to setup triggered buffer\n");
- return ret;
+ return dev_err_probe(&spi->dev, ret, "Failed to setup triggered buffer\n");
}
return devm_iio_device_register(&spi->dev, indio_dev);
diff --git a/drivers/iio/adc/ti-adc108s102.c b/drivers/iio/adc/ti-adc108s102.c
index 7d615e2bbf39..440afe584f5d 100644
--- a/drivers/iio/adc/ti-adc108s102.c
+++ b/drivers/iio/adc/ti-adc108s102.c
@@ -256,7 +256,7 @@ static int adc108s102_probe(struct spi_device *spi)
&adc108s102_trigger_handler,
NULL);
if (ret)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "iio triggered buffer setup failed\n");
ret = devm_iio_device_register(&spi->dev, indio_dev);
if (ret)
diff --git a/drivers/iio/adc/ti-adc128s052.c b/drivers/iio/adc/ti-adc128s052.c
index 4ae65793ad9b..14ed60895ac7 100644
--- a/drivers/iio/adc/ti-adc128s052.c
+++ b/drivers/iio/adc/ti-adc128s052.c
@@ -225,7 +225,7 @@ static int adc128_probe(struct spi_device *spi)
ret = devm_mutex_init(&spi->dev, &adc->lock);
if (ret)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "failed to initialize mutex\n");
return devm_iio_device_register(&spi->dev, indio_dev);
}
diff --git a/drivers/iio/adc/ti-adc161s626.c b/drivers/iio/adc/ti-adc161s626.c
index be1cc2e77862..10c25770a7a6 100644
--- a/drivers/iio/adc/ti-adc161s626.c
+++ b/drivers/iio/adc/ti-adc161s626.c
@@ -207,17 +207,17 @@ static int ti_adc_probe(struct spi_device *spi)
ret = regulator_enable(data->ref);
if (ret < 0)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "failed to enable regulator\n");
ret = devm_add_action_or_reset(&spi->dev, ti_adc_reg_disable,
data->ref);
if (ret)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "failed to add cleanup action\n");
ret = devm_iio_triggered_buffer_setup(&spi->dev, indio_dev, NULL,
ti_adc_trigger_handler, NULL);
if (ret)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "iio triggered buffer setup failed\n");
return devm_iio_device_register(&spi->dev, indio_dev);
}
--
2.54.0
next reply other threads:[~2026-06-16 13:07 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-16 13:05 Prashant Rahul [this message]
2026-06-16 14:03 ` [PATCH] iio: adc: ti-adc*: use dev_err_probe for probe time errors David Lechner
2026-06-18 16:52 ` Prashant Rahul
2026-06-18 23:14 ` [PATCH 0/5] use dev_err_probe for probe time error Prashant Rahul
2026-06-18 23:14 ` [PATCH 1/5] iio: adc: ti-adc081c: " Prashant Rahul
2026-06-18 23:14 ` [PATCH 2/5] iio: adc: ti-adc084s021: " Prashant Rahul
2026-06-18 23:14 ` [PATCH 3/5] iio: adc: ti-adc108s102: log buffer setup failure in probe Prashant Rahul
2026-06-18 23:14 ` [PATCH 4/5] iio: adc: ti-adc161s626: " Prashant Rahul
2026-06-18 23:14 ` [PATCH 5/5] iio: adc: ti-adc0832: " Prashant Rahul
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260616130612.73122-1-prashantrahul23@gmail.com \
--to=prashantrahul23@gmail.com \
--cc=andy@kernel.org \
--cc=bigeasy@linutronix.de \
--cc=dixitparmar19@gmail.com \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=john.ogness@linutronix.de \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mazziesaccount@gmail.com \
--cc=nuno.sa@analog.com \
--cc=oleg@redhat.com \
--cc=pmladek@suse.com \
--cc=shuahkhan@gmail.com \
--cc=u.kleine-koenig@baylibre.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.