power: supply: max17042: use dev_err_probe() where appropriate

dev_err_probe() exists to simplify code, harmonise error messages, and
set the deferred probe reason if relevant - there's no reason not to
use it here.

While at it, return the actual error from devm_regmap_init_i2c() rather
than overwriting with -EINVAL, when relevant.

Reviewed-by: Peter Griffin <peter.griffin@linaro.org>
Signed-off-by: André Draszik <andre.draszik@linaro.org>
Link: https://patch.msgid.link/20260302-max77759-fg-v3-5-3c5f01dbda23@linaro.org
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
This commit is contained in:
André Draszik 2026-03-02 13:32:04 +00:00 committed by Sebastian Reichel
parent e370b67c2c
commit 699f0f71ac

View File

@ -1053,16 +1053,14 @@ static int max17042_probe(struct i2c_client *client, struct device *dev, int irq
chip->dev = dev;
chip->chip_type = chip_type;
chip->regmap = devm_regmap_init_i2c(client, &max17042_regmap_config);
if (IS_ERR(chip->regmap)) {
dev_err(dev, "Failed to initialize regmap\n");
return -EINVAL;
}
if (IS_ERR(chip->regmap))
return dev_err_probe(dev, PTR_ERR(chip->regmap),
"Failed to initialize regmap\n");
chip->pdata = max17042_get_pdata(chip);
if (!chip->pdata) {
dev_err(dev, "no platform data provided\n");
return -EINVAL;
}
if (!chip->pdata)
return dev_err_probe(dev, -EINVAL,
"no platform data provided\n");
dev_set_drvdata(dev, chip);
psy_cfg.drv_data = chip;
@ -1090,10 +1088,9 @@ static int max17042_probe(struct i2c_client *client, struct device *dev, int irq
chip->battery = devm_power_supply_register(dev, max17042_desc,
&psy_cfg);
if (IS_ERR(chip->battery)) {
dev_err(dev, "failed: power supply register\n");
return PTR_ERR(chip->battery);
}
if (IS_ERR(chip->battery))
return dev_err_probe(dev, PTR_ERR(chip->battery),
"failed: power supply register\n");
if (irq) {
unsigned int flags = IRQF_ONESHOT | IRQF_SHARED | IRQF_PROBE_SHARED;