aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pwm/pwm-visconti.c
diff options
context:
space:
mode:
authorzhaoxiao <long870912@gmail.com>2021-09-13 14:15:53 +0800
committerThierry Reding <thierry.reding@gmail.com>2021-11-05 11:51:41 +0100
commit6facd84083485dff109f1f78cbf6a1d760efc939 (patch)
tree8a6014565f078f04c74d750f2ae2fa8d4dde6f0f /drivers/pwm/pwm-visconti.c
parentpwm: samsung: Describe driver in Kconfig (diff)
downloadlinux-dev-6facd84083485dff109f1f78cbf6a1d760efc939.tar.xz
linux-dev-6facd84083485dff109f1f78cbf6a1d760efc939.zip
pwm: visconti: Simplify using devm_pwmchip_add()
This allows to drop the platform_driver's remove function. This is the only user of driver data so this can go away, too. Signed-off-by: zhaoxiao <long870912@gmail.com> Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
Diffstat (limited to 'drivers/pwm/pwm-visconti.c')
-rw-r--r--drivers/pwm/pwm-visconti.c14
1 files changed, 1 insertions, 13 deletions
diff --git a/drivers/pwm/pwm-visconti.c b/drivers/pwm/pwm-visconti.c
index af4e37d3e3a6..927c4cbb1daf 100644
--- a/drivers/pwm/pwm-visconti.c
+++ b/drivers/pwm/pwm-visconti.c
@@ -144,28 +144,17 @@ static int visconti_pwm_probe(struct platform_device *pdev)
if (IS_ERR(priv->base))
return PTR_ERR(priv->base);
- platform_set_drvdata(pdev, priv);
-
priv->chip.dev = dev;
priv->chip.ops = &visconti_pwm_ops;
priv->chip.npwm = 4;
- ret = pwmchip_add(&priv->chip);
+ ret = devm_pwmchip_add(&pdev->dev, &priv->chip);
if (ret < 0)
return dev_err_probe(&pdev->dev, ret, "Cannot register visconti PWM\n");
return 0;
}
-static int visconti_pwm_remove(struct platform_device *pdev)
-{
- struct visconti_pwm_chip *priv = platform_get_drvdata(pdev);
-
- pwmchip_remove(&priv->chip);
-
- return 0;
-}
-
static const struct of_device_id visconti_pwm_of_match[] = {
{ .compatible = "toshiba,visconti-pwm", },
{ }
@@ -178,7 +167,6 @@ static struct platform_driver visconti_pwm_driver = {
.of_match_table = visconti_pwm_of_match,
},
.probe = visconti_pwm_probe,
- .remove = visconti_pwm_remove,
};
module_platform_driver(visconti_pwm_driver);