]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
pwm: pxa: Improve using dev_err_probe()
authorUwe Kleine-König <u.kleine-koenig@baylibre.com>
Thu, 13 Mar 2025 07:28:55 +0000 (08:28 +0100)
committerUwe Kleine-König <ukleinek@kernel.org>
Mon, 14 Apr 2025 06:03:16 +0000 (08:03 +0200)
Add a message to the error path of devm_clk_get() and simplify the error
path of devm_pwmchip_add() while improving the error message en passant.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Link: https://lore.kernel.org/r/20250313072855.3360076-2-u.kleine-koenig@baylibre.com
Signed-off-by: Uwe Kleine-König <ukleinek@kernel.org>
drivers/pwm/pwm-pxa.c

index 430bd6a709e94c89be3da28dbd497a0bff3800a3..8a4a3d2df30debe4abf4cf1a072efc6c511f2aad 100644 (file)
@@ -160,24 +160,24 @@ static int pwm_probe(struct platform_device *pdev)
        const struct platform_device_id *id = platform_get_device_id(pdev);
        struct pwm_chip *chip;
        struct pxa_pwm_chip *pc;
+       struct device *dev = &pdev->dev;
        int ret = 0;
 
        if (IS_ENABLED(CONFIG_OF) && id == NULL)
-               id = of_device_get_match_data(&pdev->dev);
+               id = of_device_get_match_data(dev);
 
        if (id == NULL)
                return -EINVAL;
 
-       chip = devm_pwmchip_alloc(&pdev->dev,
-                                 (id->driver_data & HAS_SECONDARY_PWM) ? 2 : 1,
+       chip = devm_pwmchip_alloc(dev, (id->driver_data & HAS_SECONDARY_PWM) ? 2 : 1,
                                  sizeof(*pc));
        if (IS_ERR(chip))
                return PTR_ERR(chip);
        pc = to_pxa_pwm_chip(chip);
 
-       pc->clk = devm_clk_get(&pdev->dev, NULL);
+       pc->clk = devm_clk_get(dev, NULL);
        if (IS_ERR(pc->clk))
-               return PTR_ERR(pc->clk);
+               return dev_err_probe(dev, PTR_ERR(pc->clk), "Failed to get clock\n");
 
        chip->ops = &pxa_pwm_ops;
 
@@ -188,11 +188,9 @@ static int pwm_probe(struct platform_device *pdev)
        if (IS_ERR(pc->mmio_base))
                return PTR_ERR(pc->mmio_base);
 
-       ret = devm_pwmchip_add(&pdev->dev, chip);
-       if (ret < 0) {
-               dev_err(&pdev->dev, "pwmchip_add() failed: %d\n", ret);
-               return ret;
-       }
+       ret = devm_pwmchip_add(dev, chip);
+       if (ret < 0)
+               return dev_err_probe(dev, ret, "pwmchip_add() failed\n");
 
        return 0;
 }