i2c: sun6i-p2wi: Replace dev_err() with dev_err_probe() in probe function

This simplifies the code while improving log.

Signed-off-by: Enrico Zanda <e.zanda1@gmail.com>
Reviewed-by: Chen-Yu Tsai <wens@kernel.org>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20250520194400.341079-4-e.zanda1@gmail.com
This commit is contained in:
Enrico Zanda
2025-05-20 21:43:53 +02:00
committed by Andi Shyti
parent c2b2bf9989
commit 96d94fa66f

View File

@@ -194,22 +194,16 @@ static int p2wi_probe(struct platform_device *pdev)
int ret;
of_property_read_u32(np, "clock-frequency", &clk_freq);
if (clk_freq > P2WI_MAX_FREQ) {
dev_err(dev,
"required clock-frequency (%u Hz) is too high (max = 6MHz)",
clk_freq);
return -EINVAL;
}
if (clk_freq > P2WI_MAX_FREQ)
return dev_err_probe(dev, -EINVAL,
"required clock-frequency (%u Hz) is too high (max = 6MHz)",
clk_freq);
if (clk_freq == 0) {
dev_err(dev, "clock-frequency is set to 0 in DT\n");
return -EINVAL;
}
if (clk_freq == 0)
return dev_err_probe(dev, -EINVAL, "clock-frequency is set to 0 in DT\n");
if (of_get_child_count(np) > 1) {
dev_err(dev, "P2WI only supports one target device\n");
return -EINVAL;
}
if (of_get_child_count(np) > 1)
return dev_err_probe(dev, -EINVAL, "P2WI only supports one target device\n");
p2wi = devm_kzalloc(dev, sizeof(struct p2wi), GFP_KERNEL);
if (!p2wi)
@@ -226,11 +220,9 @@ static int p2wi_probe(struct platform_device *pdev)
childnp = of_get_next_available_child(np, NULL);
if (childnp) {
ret = of_property_read_u32(childnp, "reg", &target_addr);
if (ret) {
dev_err(dev, "invalid target address on node %pOF\n",
childnp);
return -EINVAL;
}
if (ret)
return dev_err_probe(dev, -EINVAL,
"invalid target address on node %pOF\n", childnp);
p2wi->target_addr = target_addr;
}
@@ -245,26 +237,20 @@ static int p2wi_probe(struct platform_device *pdev)
return irq;
p2wi->clk = devm_clk_get_enabled(dev, NULL);
if (IS_ERR(p2wi->clk)) {
ret = PTR_ERR(p2wi->clk);
dev_err(dev, "failed to enable clk: %d\n", ret);
return ret;
}
if (IS_ERR(p2wi->clk))
return dev_err_probe(dev, PTR_ERR(p2wi->clk),
"failed to enable clk\n");
parent_clk_freq = clk_get_rate(p2wi->clk);
p2wi->rstc = devm_reset_control_get_exclusive(dev, NULL);
if (IS_ERR(p2wi->rstc)) {
dev_err(dev, "failed to retrieve reset controller: %pe\n",
p2wi->rstc);
return PTR_ERR(p2wi->rstc);
}
if (IS_ERR(p2wi->rstc))
return dev_err_probe(dev, PTR_ERR(p2wi->rstc),
"failed to retrieve reset controller\n");
ret = reset_control_deassert(p2wi->rstc);
if (ret) {
dev_err(dev, "failed to deassert reset line: %d\n", ret);
return ret;
}
if (ret)
return dev_err_probe(dev, ret, "failed to deassert reset line\n");
init_completion(&p2wi->complete);
p2wi->adapter.dev.parent = dev;
@@ -276,8 +262,7 @@ static int p2wi_probe(struct platform_device *pdev)
ret = devm_request_irq(dev, irq, p2wi_interrupt, 0, pdev->name, p2wi);
if (ret) {
dev_err(dev, "can't register interrupt handler irq%d: %d\n",
irq, ret);
dev_err_probe(dev, ret, "can't register interrupt handler irq%d\n", irq);
goto err_reset_assert;
}