Commit dc75d1ed authored by AngeloGioacchino Del Regno's avatar AngeloGioacchino Del Regno Committed by Linus Walleij

pinctrl: mediatek: pinctrl-paris: Simplify with dev_err_probe()

Use the dev_err_probe() helper to simplify error handling during probe.
Signed-off-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: default avatarChen-Yu Tsai <wenst@chromium.org>
Signed-off-by: default avatarChen-Yu Tsai <wenst@chromium.org>
Link: https://lore.kernel.org/r/20220308100956.2750295-11-wenst@chromium.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 9c59fda3
...@@ -1024,6 +1024,7 @@ static int mtk_pctrl_build_state(struct platform_device *pdev) ...@@ -1024,6 +1024,7 @@ static int mtk_pctrl_build_state(struct platform_device *pdev)
int mtk_paris_pinctrl_probe(struct platform_device *pdev, int mtk_paris_pinctrl_probe(struct platform_device *pdev,
const struct mtk_pin_soc *soc) const struct mtk_pin_soc *soc)
{ {
struct device *dev = &pdev->dev;
struct pinctrl_pin_desc *pins; struct pinctrl_pin_desc *pins;
struct mtk_pinctrl *hw; struct mtk_pinctrl *hw;
int err, i; int err, i;
...@@ -1036,11 +1037,9 @@ int mtk_paris_pinctrl_probe(struct platform_device *pdev, ...@@ -1036,11 +1037,9 @@ int mtk_paris_pinctrl_probe(struct platform_device *pdev,
hw->soc = soc; hw->soc = soc;
hw->dev = &pdev->dev; hw->dev = &pdev->dev;
if (!hw->soc->nbase_names) { if (!hw->soc->nbase_names)
dev_err(&pdev->dev, return dev_err_probe(dev, -EINVAL,
"SoC should be assigned at least one register base\n"); "SoC should be assigned at least one register base\n");
return -EINVAL;
}
hw->base = devm_kmalloc_array(&pdev->dev, hw->soc->nbase_names, hw->base = devm_kmalloc_array(&pdev->dev, hw->soc->nbase_names,
sizeof(*hw->base), GFP_KERNEL); sizeof(*hw->base), GFP_KERNEL);
...@@ -1065,10 +1064,8 @@ int mtk_paris_pinctrl_probe(struct platform_device *pdev, ...@@ -1065,10 +1064,8 @@ int mtk_paris_pinctrl_probe(struct platform_device *pdev,
spin_lock_init(&hw->lock); spin_lock_init(&hw->lock);
err = mtk_pctrl_build_state(pdev); err = mtk_pctrl_build_state(pdev);
if (err) { if (err)
dev_err(&pdev->dev, "build state failed: %d\n", err); return dev_err_probe(dev, err, "build state failed\n");
return -EINVAL;
}
/* Copy from internal struct mtk_pin_desc to register to the core */ /* Copy from internal struct mtk_pin_desc to register to the core */
pins = devm_kmalloc_array(&pdev->dev, hw->soc->npins, sizeof(*pins), pins = devm_kmalloc_array(&pdev->dev, hw->soc->npins, sizeof(*pins),
...@@ -1106,10 +1103,8 @@ int mtk_paris_pinctrl_probe(struct platform_device *pdev, ...@@ -1106,10 +1103,8 @@ int mtk_paris_pinctrl_probe(struct platform_device *pdev,
/* Build gpiochip should be after pinctrl_enable is done */ /* Build gpiochip should be after pinctrl_enable is done */
err = mtk_build_gpiochip(hw); err = mtk_build_gpiochip(hw);
if (err) { if (err)
dev_err(&pdev->dev, "Failed to add gpio_chip\n"); return dev_err_probe(dev, err, "Failed to add gpio_chip\n");
return err;
}
platform_set_drvdata(pdev, hw); platform_set_drvdata(pdev, hw);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment