[PATCH v3] iio: magnetometer: ak8974: Silence deferred-probe error

From: Dmitry Osipenko
Date: Sat Apr 18 2020 - 13:13:12 EST


It's not uncommon that voltage regulator becomes available later during
kernel's boot process. This patch adds info message about unavailable
regulators in a case of the deferred-probe error and also amends the
error message with a error code.

Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx>
---

Changelog:

v3: - Replaced dev_info() with dev_dbg().

v2: - Replaced dev_printk() with dev_info() for the deferred-probe error,
as was requested by Linus Walleij in a review comment to v1.

drivers/iio/magnetometer/ak8974.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/iio/magnetometer/ak8974.c b/drivers/iio/magnetometer/ak8974.c
index d32996702110..372c80c25dd4 100644
--- a/drivers/iio/magnetometer/ak8974.c
+++ b/drivers/iio/magnetometer/ak8974.c
@@ -746,7 +746,12 @@ static int ak8974_probe(struct i2c_client *i2c,
ARRAY_SIZE(ak8974->regs),
ak8974->regs);
if (ret < 0) {
- dev_err(&i2c->dev, "cannot get regulators\n");
+ if (ret != -EPROBE_DEFER)
+ dev_err(&i2c->dev, "cannot get regulators: %d\n", ret);
+ else
+ dev_dbg(&i2c->dev,
+ "regulators unavailable, deferring probe\n");
+
return ret;
}

--
2.26.0