From: Joshua Crofts <joshua.crofts1@gmail.com>
To: "Jonathan Cameron" <jic23@kernel.org>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Alexander Koch" <mail@alexanderkoch.net>,
"Michael Hornung" <mhornung.linux@gmail.com>
Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
Joshua Crofts <joshua.crofts1@gmail.com>
Subject: [PATCH v2 07/10] iio: light: opt3001: prefer dev_err_probe()
Date: Tue, 12 May 2026 12:57:27 +0200 [thread overview]
Message-ID: <20260512-opt3001-cleanup-v2-7-8018cf3a8a0a@gmail.com> (raw)
In-Reply-To: <20260512-opt3001-cleanup-v2-0-8018cf3a8a0a@gmail.com>
Switch driver to use dev_err_probe() to unify
error messages generated in *_probe() and probe path functions.
Signed-off-by: Joshua Crofts <joshua.crofts1@gmail.com>
---
drivers/iio/light/opt3001.c | 59 ++++++++++++++++++---------------------------
1 file changed, 24 insertions(+), 35 deletions(-)
diff --git a/drivers/iio/light/opt3001.c b/drivers/iio/light/opt3001.c
index 8eaa2cb6b5b044afdc405f19cd2499abb7e4d7a3..6f7c524d3a7a41c5177c9b02ebe1b7858294a0b4 100644
--- a/drivers/iio/light/opt3001.c
+++ b/drivers/iio/light/opt3001.c
@@ -707,21 +707,17 @@ static int opt3001_read_id(struct opt3001 *opt)
int ret;
ret = i2c_smbus_read_word_swapped(client, OPT3001_MANUFACTURER_ID);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_MANUFACTURER_ID);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_MANUFACTURER_ID);
manufacturer[0] = ret >> 8;
manufacturer[1] = ret & 0xff;
ret = i2c_smbus_read_word_swapped(client, OPT3001_DEVICE_ID);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_DEVICE_ID);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_DEVICE_ID);
device_id = ret;
@@ -739,11 +735,9 @@ static int opt3001_configure(struct opt3001 *opt)
u16 reg;
ret = i2c_smbus_read_word_swapped(client, OPT3001_CONFIGURATION);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_CONFIGURATION);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_CONFIGURATION);
reg = ret;
@@ -767,28 +761,22 @@ static int opt3001_configure(struct opt3001 *opt)
reg &= ~OPT3001_CONFIGURATION_FC_MASK;
ret = i2c_smbus_write_word_swapped(client, OPT3001_CONFIGURATION, reg);
- if (ret < 0) {
- dev_err(dev, "failed to write register %02x\n",
- OPT3001_CONFIGURATION);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to write register %02x\n",
+ OPT3001_CONFIGURATION);
ret = i2c_smbus_read_word_swapped(client, OPT3001_LOW_LIMIT);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_LOW_LIMIT);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_LOW_LIMIT);
opt->low_thresh_mantissa = OPT3001_REG_MANTISSA(ret);
opt->low_thresh_exp = OPT3001_REG_EXPONENT(ret);
ret = i2c_smbus_read_word_swapped(client, OPT3001_HIGH_LIMIT);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_HIGH_LIMIT);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_HIGH_LIMIT);
opt->high_thresh_mantissa = OPT3001_REG_MANTISSA(ret);
opt->high_thresh_exp = OPT3001_REG_EXPONENT(ret);
@@ -896,10 +884,10 @@ static int opt3001_probe(struct i2c_client *client)
ret = request_threaded_irq(irq, NULL, opt3001_irq,
IRQF_TRIGGER_FALLING | IRQF_ONESHOT,
"opt3001", iio);
- if (ret) {
- dev_err(dev, "failed to request IRQ #%d\n", irq);
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret,
+ "failed to request IRQ #%d\n",
+ irq);
opt->use_irq = true;
} else {
dev_dbg(dev, "enabling interrupt-less operation\n");
@@ -907,7 +895,8 @@ static int opt3001_probe(struct i2c_client *client)
ret = devm_iio_device_register(dev, iio);
if (ret)
- return dev_err(dev, "failed to register IIO device\n");
+ return dev_err_probe(dev, ret,
+ "failed to register IIO device\n");
return 0;
}
--
2.47.3
WARNING: multiple messages have this Message-ID (diff)
From: Joshua Crofts via B4 Relay <devnull+joshua.crofts1.gmail.com@kernel.org>
To: "Jonathan Cameron" <jic23@kernel.org>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Alexander Koch" <mail@alexanderkoch.net>,
"Michael Hornung" <mhornung.linux@gmail.com>
Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
Joshua Crofts <joshua.crofts1@gmail.com>
Subject: [PATCH v2 07/10] iio: light: opt3001: prefer dev_err_probe()
Date: Tue, 12 May 2026 12:57:27 +0200 [thread overview]
Message-ID: <20260512-opt3001-cleanup-v2-7-8018cf3a8a0a@gmail.com> (raw)
In-Reply-To: <20260512-opt3001-cleanup-v2-0-8018cf3a8a0a@gmail.com>
From: Joshua Crofts <joshua.crofts1@gmail.com>
Switch driver to use dev_err_probe() to unify
error messages generated in *_probe() and probe path functions.
Signed-off-by: Joshua Crofts <joshua.crofts1@gmail.com>
---
drivers/iio/light/opt3001.c | 59 ++++++++++++++++++---------------------------
1 file changed, 24 insertions(+), 35 deletions(-)
diff --git a/drivers/iio/light/opt3001.c b/drivers/iio/light/opt3001.c
index 8eaa2cb6b5b044afdc405f19cd2499abb7e4d7a3..6f7c524d3a7a41c5177c9b02ebe1b7858294a0b4 100644
--- a/drivers/iio/light/opt3001.c
+++ b/drivers/iio/light/opt3001.c
@@ -707,21 +707,17 @@ static int opt3001_read_id(struct opt3001 *opt)
int ret;
ret = i2c_smbus_read_word_swapped(client, OPT3001_MANUFACTURER_ID);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_MANUFACTURER_ID);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_MANUFACTURER_ID);
manufacturer[0] = ret >> 8;
manufacturer[1] = ret & 0xff;
ret = i2c_smbus_read_word_swapped(client, OPT3001_DEVICE_ID);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_DEVICE_ID);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_DEVICE_ID);
device_id = ret;
@@ -739,11 +735,9 @@ static int opt3001_configure(struct opt3001 *opt)
u16 reg;
ret = i2c_smbus_read_word_swapped(client, OPT3001_CONFIGURATION);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_CONFIGURATION);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_CONFIGURATION);
reg = ret;
@@ -767,28 +761,22 @@ static int opt3001_configure(struct opt3001 *opt)
reg &= ~OPT3001_CONFIGURATION_FC_MASK;
ret = i2c_smbus_write_word_swapped(client, OPT3001_CONFIGURATION, reg);
- if (ret < 0) {
- dev_err(dev, "failed to write register %02x\n",
- OPT3001_CONFIGURATION);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to write register %02x\n",
+ OPT3001_CONFIGURATION);
ret = i2c_smbus_read_word_swapped(client, OPT3001_LOW_LIMIT);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_LOW_LIMIT);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_LOW_LIMIT);
opt->low_thresh_mantissa = OPT3001_REG_MANTISSA(ret);
opt->low_thresh_exp = OPT3001_REG_EXPONENT(ret);
ret = i2c_smbus_read_word_swapped(client, OPT3001_HIGH_LIMIT);
- if (ret < 0) {
- dev_err(dev, "failed to read register %02x\n",
- OPT3001_HIGH_LIMIT);
- return ret;
- }
+ if (ret < 0)
+ return dev_err_probe(dev, ret, "failed to read register %02x\n",
+ OPT3001_HIGH_LIMIT);
opt->high_thresh_mantissa = OPT3001_REG_MANTISSA(ret);
opt->high_thresh_exp = OPT3001_REG_EXPONENT(ret);
@@ -896,10 +884,10 @@ static int opt3001_probe(struct i2c_client *client)
ret = request_threaded_irq(irq, NULL, opt3001_irq,
IRQF_TRIGGER_FALLING | IRQF_ONESHOT,
"opt3001", iio);
- if (ret) {
- dev_err(dev, "failed to request IRQ #%d\n", irq);
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret,
+ "failed to request IRQ #%d\n",
+ irq);
opt->use_irq = true;
} else {
dev_dbg(dev, "enabling interrupt-less operation\n");
@@ -907,7 +895,8 @@ static int opt3001_probe(struct i2c_client *client)
ret = devm_iio_device_register(dev, iio);
if (ret)
- return dev_err(dev, "failed to register IIO device\n");
+ return dev_err_probe(dev, ret,
+ "failed to register IIO device\n");
return 0;
}
--
2.47.3
next prev parent reply other threads:[~2026-05-12 10:57 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-12 10:57 [PATCH v2 00/10] iio: light: opt3001: driver cleanup Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 10:57 ` [PATCH v2 01/10] iio: light: opt3001: move device registration to end of probe() Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 10:57 ` [PATCH v2 02/10] iio: light: opt3001: make headers conform to iwyu Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 10:57 ` [PATCH v2 03/10] iio: light: opt3001: use macros from bits.h header Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 10:57 ` [PATCH v2 04/10] iio: light: opt3001: use local struct device and i2c_client variables Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 11:09 ` Andy Shevchenko
2026-05-12 11:13 ` Joshua Crofts
2026-05-12 11:27 ` Andy Shevchenko
2026-05-12 10:57 ` [PATCH v2 05/10] iio: light: opt3001: ensure correct parenthesis alignment Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 10:57 ` [PATCH v2 06/10] iio: light: opt3001: localize for loop iterator Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 15:40 ` Andy Shevchenko
2026-05-12 10:57 ` Joshua Crofts [this message]
2026-05-12 10:57 ` [PATCH v2 07/10] iio: light: opt3001: prefer dev_err_probe() Joshua Crofts via B4 Relay
2026-05-12 15:43 ` Andy Shevchenko
2026-05-12 10:57 ` [PATCH v2 08/10] iio: light: opt3001: move driver to guard(mutex)() use Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 10:57 ` [PATCH v2 09/10] iio: light: opt3001: switch driver to managed resources Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
2026-05-12 14:26 ` Jonathan Cameron
2026-05-12 14:32 ` Joshua Crofts
2026-05-12 10:57 ` [PATCH v2 10/10] iio: light: opt3001: add comment to mutex Joshua Crofts
2026-05-12 10:57 ` Joshua Crofts via B4 Relay
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=20260512-opt3001-cleanup-v2-7-8018cf3a8a0a@gmail.com \
--to=joshua.crofts1@gmail.com \
--cc=andy@kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mail@alexanderkoch.net \
--cc=mhornung.linux@gmail.com \
--cc=nuno.sa@analog.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.