Replace dev_err() + return with dev_err_probe() in adrf6780_reset()
and adrf6780_init(), which are called during probe. This simplifies
error handling.
Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
---
drivers/iio/frequency/adrf6780.c | 21 +++++++++------------
1 file changed, 9 insertions(+), 12 deletions(-)
diff --git a/drivers/iio/frequency/adrf6780.c b/drivers/iio/frequency/adrf6780.c
index a7a21f929970..bdb922667bc2 100644
--- a/drivers/iio/frequency/adrf6780.c
+++ b/drivers/iio/frequency/adrf6780.c
@@ -351,18 +351,16 @@ static int adrf6780_reset(struct adrf6780_state *st)
ret = __adrf6780_spi_update_bits(st, ADRF6780_REG_CONTROL,
ADRF6780_SOFT_RESET_MSK,
FIELD_PREP(ADRF6780_SOFT_RESET_MSK, 1));
- if (ret) {
- dev_err(&spi->dev, "ADRF6780 SPI software reset failed.\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(&spi->dev, ret,
+ "ADRF6780 SPI software reset failed.\n");
ret = __adrf6780_spi_update_bits(st, ADRF6780_REG_CONTROL,
ADRF6780_SOFT_RESET_MSK,
FIELD_PREP(ADRF6780_SOFT_RESET_MSK, 0));
- if (ret) {
- dev_err(&spi->dev, "ADRF6780 SPI software reset disable failed.\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(&spi->dev, ret,
+ "ADRF6780 SPI software reset disable failed.\n");
return 0;
}
@@ -383,10 +381,9 @@ static int adrf6780_init(struct adrf6780_state *st)
return ret;
chip_id = FIELD_GET(ADRF6780_CHIP_ID_MSK, chip_id);
- if (chip_id != ADRF6780_CHIP_ID) {
- dev_err(&spi->dev, "ADRF6780 Invalid Chip ID.\n");
- return -EINVAL;
- }
+ if (chip_id != ADRF6780_CHIP_ID)
+ return dev_err_probe(&spi->dev, -EINVAL,
+ "ADRF6780 Invalid Chip ID.\n");
enable_reg_msk = ADRF6780_VGA_BUFFER_EN_MSK |
ADRF6780_DETECTOR_EN_MSK |
--
2.43.0
On Fri, Feb 20, 2026 at 03:11:39PM +0200, Antoniu Miclaus wrote:
> Replace dev_err() + return with dev_err_probe() in adrf6780_reset()
> and adrf6780_init(), which are called during probe. This simplifies
> error handling.
...
> ret = __adrf6780_spi_update_bits(st, ADRF6780_REG_CONTROL,
> ADRF6780_SOFT_RESET_MSK,
> FIELD_PREP(ADRF6780_SOFT_RESET_MSK, 1));
> - if (ret) {
> - dev_err(&spi->dev, "ADRF6780 SPI software reset failed.\n");
> - return ret;
> - }
> + if (ret)
> + return dev_err_probe(&spi->dev, ret,
> + "ADRF6780 SPI software reset failed.\n");
Consider adding
struct device *dev = &spi->dev;
at the top, so this line becomes
return dev_err_probe(dev, ret, "ADRF6780 SPI software reset failed.\n");
(while at it, I would dare to drop 'SPI' from the message as is easy to derive that
the device in question is connected to SPI bus.)
return dev_err_probe(dev, ret, "ADRF6780 software reset failed.\n");
...
Ditto for the rest.
--
With Best Regards,
Andy Shevchenko
On Fri, 20 Feb 2026 15:56:54 +0200
Andy Shevchenko <andriy.shevchenko@intel.com> wrote:
> On Fri, Feb 20, 2026 at 03:11:39PM +0200, Antoniu Miclaus wrote:
> > Replace dev_err() + return with dev_err_probe() in adrf6780_reset()
> > and adrf6780_init(), which are called during probe. This simplifies
> > error handling.
>
> ...
>
> > ret = __adrf6780_spi_update_bits(st, ADRF6780_REG_CONTROL,
> > ADRF6780_SOFT_RESET_MSK,
> > FIELD_PREP(ADRF6780_SOFT_RESET_MSK, 1));
> > - if (ret) {
> > - dev_err(&spi->dev, "ADRF6780 SPI software reset failed.\n");
> > - return ret;
> > - }
> > + if (ret)
> > + return dev_err_probe(&spi->dev, ret,
> > + "ADRF6780 SPI software reset failed.\n");
>
> Consider adding
>
> struct device *dev = &spi->dev;
spi itself isn't used so
struct device *dev = &st->spi->dev;
probably make sense here
Might be worth similar changes for probe() etc where there is a lot of &spi->dev
in use. At that point it would probably need to be a separate precursor patch to this one.
Thanks,
Jonathan
>
> at the top, so this line becomes
>
> return dev_err_probe(dev, ret, "ADRF6780 SPI software reset failed.\n");
>
> (while at it, I would dare to drop 'SPI' from the message as is easy to derive that
> the device in question is connected to SPI bus.)
>
> return dev_err_probe(dev, ret, "ADRF6780 software reset failed.\n");
>
> ...
>
> Ditto for the rest.
>
On Fri, Feb 20, 2026 at 03:56:58PM +0200, Andy Shevchenko wrote:
> On Fri, Feb 20, 2026 at 03:11:39PM +0200, Antoniu Miclaus wrote:
...
> > ret = __adrf6780_spi_update_bits(st, ADRF6780_REG_CONTROL,
> > ADRF6780_SOFT_RESET_MSK,
> > FIELD_PREP(ADRF6780_SOFT_RESET_MSK, 1));
> > - if (ret) {
> > - dev_err(&spi->dev, "ADRF6780 SPI software reset failed.\n");
> > - return ret;
> > - }
> > + if (ret)
> > + return dev_err_probe(&spi->dev, ret,
> > + "ADRF6780 SPI software reset failed.\n");
>
> Consider adding
>
> struct device *dev = &spi->dev;
>
> at the top, so this line becomes
>
> return dev_err_probe(dev, ret, "ADRF6780 SPI software reset failed.\n");
>
> (while at it, I would dare to drop 'SPI' from the message as is easy to derive that
> the device in question is connected to SPI bus.)
>
> return dev_err_probe(dev, ret, "ADRF6780 software reset failed.\n");
...
> Ditto for the rest.
And also for the entire series (except patch 5 where it seems already
the case).
--
With Best Regards,
Andy Shevchenko
© 2016 - 2026 Red Hat, Inc.