Commit e319f4e2 authored by Sebastian Reichel's avatar Sebastian Reichel
Browse files

power: supply: sbs-charger: use dev_err_probe



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: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
parent 166767ab
Loading
Loading
Loading
Loading
+8 −14
Original line number Diff line number Diff line
@@ -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,