From: Thierry Reding Date: Fri, 4 Dec 2020 12:44:35 +0000 (+0100) Subject: pwm: sl28cpld: Set driver data before registering the PWM chip X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=edf7f80e780e50bb5711d4c112b721517d0ff73e;p=linux.git 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 --- diff --git a/drivers/pwm/pwm-sl28cpld.c b/drivers/pwm/pwm-sl28cpld.c index 5046b6b7fd35b..c5866a2b47b5b 100644 --- a/drivers/pwm/pwm-sl28cpld.c +++ b/drivers/pwm/pwm-sl28cpld.c @@ -230,6 +230,8 @@ static int sl28cpld_pwm_probe(struct platform_device *pdev) chip->base = -1; chip->npwm = 1; + platform_set_drvdata(pdev, priv); + ret = pwmchip_add(&priv->pwm_chip); if (ret) { 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; } - platform_set_drvdata(pdev, priv); - return 0; }