[PATCH 3/3] iio: accel: kxsd9: use dev_err_probe()

From: Biren Pandya

Date: Tue Jul 14 2026 - 08:28:02 EST


Modernize the error paths in kxsd9_common_probe() by using
dev_err_probe() instead of dev_err() when handling failures from
regulators and buffer setup.

This simplifies the error handling and properly suppresses annoying
and unnecessary log spam during -EPROBE_DEFER cases when regulators
are not yet available during boot.

Signed-off-by: Biren Pandya <birenpandya@xxxxxxxxx>
---
drivers/iio/accel/kxsd9.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/drivers/iio/accel/kxsd9.c b/drivers/iio/accel/kxsd9.c
index 680d43135e617..ffbefd4576dd2 100644
--- a/drivers/iio/accel/kxsd9.c
+++ b/drivers/iio/accel/kxsd9.c
@@ -433,10 +433,9 @@ int kxsd9_common_probe(struct device *dev,
ret = devm_regulator_bulk_get(dev,
ARRAY_SIZE(st->regs),
st->regs);
- if (ret) {
- dev_err(dev, "Cannot get regulators\n");
- return ret;
- }
+ if (ret)
+ return dev_err_probe(dev, ret, "Cannot get regulators\n");
+
/* Default scaling */
st->scale = KXSD9_CTRL_C_FS_2G;

@@ -447,13 +446,15 @@ int kxsd9_common_probe(struct device *dev,
kxsd9_trigger_handler,
&kxsd9_buffer_setup_ops);
if (ret) {
- dev_err(dev, "triggered buffer setup failed\n");
+ dev_err_probe(dev, ret, "triggered buffer setup failed\n");
goto err_power_down;
}

ret = iio_device_register(indio_dev);
- if (ret)
+ if (ret) {
+ dev_err_probe(dev, ret, "device register failed\n");
goto err_cleanup_buffer;
+ }

dev_set_drvdata(dev, indio_dev);

--
2.50.1 (Apple Git-155)