Introduce usage of dev_err_probe in probe routine, which
makes the code slightly more readable and removes some
lines of code. It also removes PROBE_DEFER errors being
logged by default.

Signed-off-by: Sebastian Reichel <[email protected]>
---
 drivers/power/supply/sbs-charger.c | 22 ++++++++--------------
 1 file changed, 8 insertions(+), 14 deletions(-)

diff --git a/drivers/power/supply/sbs-charger.c 
b/drivers/power/supply/sbs-charger.c
index fbfb6a620961..36a048d687e0 100644
--- a/drivers/power/supply/sbs-charger.c
+++ b/drivers/power/supply/sbs-charger.c
@@ -189,18 +189,14 @@ static int sbs_probe(struct i2c_client *client,
         * to the battery.
         */
        ret = regmap_read(chip->regmap, SBS_CHARGER_REG_STATUS, &val);
-       if (ret) {
-               dev_err(&client->dev, "Failed to get device status\n");
-               return ret;
-       }
+       if (ret)
+               return dev_err_probe(&client->dev, ret, "Failed to get device 
status\n");
        chip->last_state = val;
 
-       chip->power_supply = devm_power_supply_register(&client->dev, &sbs_desc,
-                                                       &psy_cfg);
-       if (IS_ERR(chip->power_supply)) {
-               dev_err(&client->dev, "Failed to register power supply\n");
-               return PTR_ERR(chip->power_supply);
-       }
+       chip->power_supply = devm_power_supply_register(&client->dev, 
&sbs_desc, &psy_cfg);
+       if (IS_ERR(chip->power_supply))
+               return dev_err_probe(&client->dev, PTR_ERR(chip->power_supply),
+                                    "Failed to register power supply\n");
 
        /*
         * The sbs-charger spec doesn't impose the use of an interrupt. So in
@@ -212,10 +208,8 @@ static int sbs_probe(struct i2c_client *client,
                                        NULL, sbs_irq_thread,
                                        IRQF_TRIGGER_FALLING | IRQF_ONESHOT,
                                        dev_name(&client->dev), chip);
-               if (ret) {
-                       dev_err(&client->dev, "Failed to request irq, %d\n", 
ret);
-                       return ret;
-               }
+               if (ret)
+                       return dev_err_probe(&client->dev, ret, "Failed to 
request irq\n");
        } else {
                INIT_DELAYED_WORK(&chip->work, sbs_delayed_work);
                schedule_delayed_work(&chip->work,
-- 
2.30.1

Reply via email to