pwm: sl28cpld: Set driver data before registering the PWM chip

It is good practice to set the driver data before registering a device
with a subsystem because the subsystem or the driver core may call back
into the driver implementation. This is not currently an issue, but to
prevent future changes from causing this to break unexpectedly, make
sure that the driver data is set before the PWM chip registration.

Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
This commit is contained in:
Thierry Reding 2020-12-04 13:44:35 +01:00
parent 3df23a316c
commit edf7f80e78

View file

@ -230,6 +230,8 @@ static int sl28cpld_pwm_probe(struct platform_device *pdev)
chip->base = -1; chip->base = -1;
chip->npwm = 1; chip->npwm = 1;
platform_set_drvdata(pdev, priv);
ret = pwmchip_add(&priv->pwm_chip); ret = pwmchip_add(&priv->pwm_chip);
if (ret) { if (ret) {
dev_err(&pdev->dev, "failed to add PWM chip (%pe)", dev_err(&pdev->dev, "failed to add PWM chip (%pe)",
@ -237,8 +239,6 @@ static int sl28cpld_pwm_probe(struct platform_device *pdev)
return ret; return ret;
} }
platform_set_drvdata(pdev, priv);
return 0; return 0;
} }