Common pattern of handling deferred probe can be simplified with
dev_err_probe().  Less code and also it prints the error value.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
 drivers/gpio/gpio-pca953x.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c
index bd2e96c34f82..b5c3e56613a7 100644
--- a/drivers/gpio/gpio-pca953x.c
+++ b/drivers/gpio/gpio-pca953x.c
@@ -1000,12 +1000,9 @@ static int pca953x_probe(struct i2c_client *client,
        chip->client = client;
 
        reg = devm_regulator_get(&client->dev, "vcc");
-       if (IS_ERR(reg)) {
-               ret = PTR_ERR(reg);
-               if (ret != -EPROBE_DEFER)
-                       dev_err(&client->dev, "reg get err: %d\n", ret);
-               return ret;
-       }
+       if (IS_ERR(reg))
+               return dev_err_probe(&client->dev, PTR_ERR(reg), "reg get 
err\n");
+
        ret = regulator_enable(reg);
        if (ret) {
                dev_err(&client->dev, "reg en err: %d\n", ret);
-- 
2.17.1

Reply via email to