diff mbox series

pwm: mediatek: Simplify using devm_pwmchip_add()

Message ID 20210906093030.459-1-long870912@gmail.com (mailing list archive)
State New, archived
Headers show
Series pwm: mediatek: Simplify using devm_pwmchip_add() | expand

Commit Message

zhaoxiao Sept. 6, 2021, 9:30 a.m. UTC
With devm_pwmchip_add() we can drop pwmchip_remove() from the device
remove callback. The latter can then go away, too and as this is the
only user of platform_get_drvdata(), the respective call to
platform_set_drvdata() can go, too.

Signed-off-by: zhaoxiao <long870912@gmail.com>
---
 drivers/pwm/pwm-mediatek.c | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

Comments

Uwe Kleine-König Sept. 7, 2021, 9:17 a.m. UTC | #1
Hello,

On Mon, Sep 06, 2021 at 05:30:30PM +0800, zhaoxiao wrote:
> With devm_pwmchip_add() we can drop pwmchip_remove() from the device
> remove callback. The latter can then go away, too and as this is the
> only user of platform_get_drvdata(), the respective call to
> platform_set_drvdata() can go, too.
> 
> Signed-off-by: zhaoxiao <long870912@gmail.com>
> ---
>  drivers/pwm/pwm-mediatek.c | 12 +-----------
>  1 file changed, 1 insertion(+), 11 deletions(-)
> 
> diff --git a/drivers/pwm/pwm-mediatek.c b/drivers/pwm/pwm-mediatek.c
> index b4a31060bcd7..0d4dd80e9f07 100644
> --- a/drivers/pwm/pwm-mediatek.c
> +++ b/drivers/pwm/pwm-mediatek.c
> @@ -253,13 +253,11 @@ static int pwm_mediatek_probe(struct platform_device *pdev)
>  		}
>  	}
>  
> -	platform_set_drvdata(pdev, pc);
> -
>  	pc->chip.dev = &pdev->dev;
>  	pc->chip.ops = &pwm_mediatek_ops;
>  	pc->chip.npwm = pc->soc->num_pwms;
>  
> -	ret = pwmchip_add(&pc->chip);
> +	ret = devm_pwmchip_add(&pdev->dev, &pc->chip);
>  	if (ret < 0) {
>  		dev_err(&pdev->dev, "pwmchip_add() failed: %d\n", ret);
>  		return ret;
> @@ -268,13 +266,6 @@ static int pwm_mediatek_probe(struct platform_device *pdev)
>  	return 0;
>  }
>  
> -static int pwm_mediatek_remove(struct platform_device *pdev)
> -{
> -	struct pwm_mediatek_chip *pc = platform_get_drvdata(pdev);
> -
> -	return pwmchip_remove(&pc->chip);
> -}
> -
>  static const struct pwm_mediatek_of_data mt2712_pwm_data = {
>  	.num_pwms = 8,
>  	.pwm45_fixup = false,
> @@ -335,7 +326,6 @@ static struct platform_driver pwm_mediatek_driver = {
>  		.of_match_table = pwm_mediatek_of_match,
>  	},
>  	.probe = pwm_mediatek_probe,
> -	.remove = pwm_mediatek_remove,
>  };
>  module_platform_driver(pwm_mediatek_driver);

A patch like this is already in next, see e0150252a6437d12de3db84bb3af12bd5aa5cc70

Best regards
Uwe
diff mbox series

Patch

diff --git a/drivers/pwm/pwm-mediatek.c b/drivers/pwm/pwm-mediatek.c
index b4a31060bcd7..0d4dd80e9f07 100644
--- a/drivers/pwm/pwm-mediatek.c
+++ b/drivers/pwm/pwm-mediatek.c
@@ -253,13 +253,11 @@  static int pwm_mediatek_probe(struct platform_device *pdev)
 		}
 	}
 
-	platform_set_drvdata(pdev, pc);
-
 	pc->chip.dev = &pdev->dev;
 	pc->chip.ops = &pwm_mediatek_ops;
 	pc->chip.npwm = pc->soc->num_pwms;
 
-	ret = pwmchip_add(&pc->chip);
+	ret = devm_pwmchip_add(&pdev->dev, &pc->chip);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "pwmchip_add() failed: %d\n", ret);
 		return ret;
@@ -268,13 +266,6 @@  static int pwm_mediatek_probe(struct platform_device *pdev)
 	return 0;
 }
 
-static int pwm_mediatek_remove(struct platform_device *pdev)
-{
-	struct pwm_mediatek_chip *pc = platform_get_drvdata(pdev);
-
-	return pwmchip_remove(&pc->chip);
-}
-
 static const struct pwm_mediatek_of_data mt2712_pwm_data = {
 	.num_pwms = 8,
 	.pwm45_fixup = false,
@@ -335,7 +326,6 @@  static struct platform_driver pwm_mediatek_driver = {
 		.of_match_table = pwm_mediatek_of_match,
 	},
 	.probe = pwm_mediatek_probe,
-	.remove = pwm_mediatek_remove,
 };
 module_platform_driver(pwm_mediatek_driver);