pwm: keembay: 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: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
This commit is contained in:
committed by
Thierry Reding
parent
f0d6d7f260
commit
0aa2bec5a8
@@ -207,22 +207,13 @@ static int keembay_pwm_probe(struct platform_device *pdev)
|
|||||||
priv->chip.ops = &keembay_pwm_ops;
|
priv->chip.ops = &keembay_pwm_ops;
|
||||||
priv->chip.npwm = KMB_TOTAL_PWM_CHANNELS;
|
priv->chip.npwm = KMB_TOTAL_PWM_CHANNELS;
|
||||||
|
|
||||||
ret = pwmchip_add(&priv->chip);
|
ret = devm_pwmchip_add(dev, &priv->chip);
|
||||||
if (ret)
|
if (ret)
|
||||||
return dev_err_probe(dev, ret, "Failed to add PWM chip\n");
|
return dev_err_probe(dev, ret, "Failed to add PWM chip\n");
|
||||||
|
|
||||||
platform_set_drvdata(pdev, priv);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int keembay_pwm_remove(struct platform_device *pdev)
|
|
||||||
{
|
|
||||||
struct keembay_pwm *priv = platform_get_drvdata(pdev);
|
|
||||||
|
|
||||||
return pwmchip_remove(&priv->chip);
|
|
||||||
}
|
|
||||||
|
|
||||||
static const struct of_device_id keembay_pwm_of_match[] = {
|
static const struct of_device_id keembay_pwm_of_match[] = {
|
||||||
{ .compatible = "intel,keembay-pwm" },
|
{ .compatible = "intel,keembay-pwm" },
|
||||||
{ }
|
{ }
|
||||||
@@ -231,7 +222,6 @@ MODULE_DEVICE_TABLE(of, keembay_pwm_of_match);
|
|||||||
|
|
||||||
static struct platform_driver keembay_pwm_driver = {
|
static struct platform_driver keembay_pwm_driver = {
|
||||||
.probe = keembay_pwm_probe,
|
.probe = keembay_pwm_probe,
|
||||||
.remove = keembay_pwm_remove,
|
|
||||||
.driver = {
|
.driver = {
|
||||||
.name = "pwm-keembay",
|
.name = "pwm-keembay",
|
||||||
.of_match_table = keembay_pwm_of_match,
|
.of_match_table = keembay_pwm_of_match,
|
||||||
|
|||||||
Reference in New Issue
Block a user