[PATCH v6 3/8] iio: light: opt3001: prefer dev_err_probe()
From: Joshua Crofts
Date: Sun Jun 14 2026 - 09:24:05 EST
Switch driver to use dev_err_probe() to unify error messages generated
in *_probe() and probe path functions.
Reviewed-by: Maxwell Doose <m32285159@xxxxxxxxx>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxx>
Signed-off-by: Joshua Crofts <joshua.crofts1@xxxxxxxxx>
---
drivers/iio/light/opt3001.c | 57 ++++++++++++++++++---------------------------
1 file changed, 23 insertions(+), 34 deletions(-)
diff --git a/drivers/iio/light/opt3001.c b/drivers/iio/light/opt3001.c
index 28455d887e1d..c1062ace184c 100644
--- a/drivers/iio/light/opt3001.c
+++ b/drivers/iio/light/opt3001.c
@@ -698,21 +698,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;
@@ -730,11 +726,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;
@@ -758,28 +752,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);
@@ -886,10 +874,11 @@ 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");
--
2.54.0