]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
pwm: lpc-18xx: use pwm_set_chip_data
authoroliver@schinagl.nl <oliver@schinagl.nl>
Thu, 25 Aug 2016 16:47:09 +0000 (18:47 +0200)
committerThierry Reding <thierry.reding@gmail.com>
Thu, 8 Sep 2016 08:55:05 +0000 (10:55 +0200)
The lpc-18xx driver currently manipulates the pwm_device struct directly
rather than using the pwm_set_chip_data() function. While the current
method may save a clock cycle or two, using the explicit function call
makes it more obvious that data is set to the local chip data pointer.

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
Reviewed-by: Ariel D'Alessandro <ariel@vanguardiasur.com.ar>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
drivers/pwm/pwm-lpc18xx-sct.c

index 19dc64cab2f0f9c88b6aa15275a63b936bdf34c8..d7f5f7de030ddd1f5fe93db7f811bf74d7ff9a08 100644 (file)
@@ -413,14 +413,18 @@ static int lpc18xx_pwm_probe(struct platform_device *pdev)
        }
 
        for (i = 0; i < lpc18xx_pwm->chip.npwm; i++) {
+               struct lpc18xx_pwm_data *data;
+
                pwm = &lpc18xx_pwm->chip.pwms[i];
-               pwm->chip_data = devm_kzalloc(lpc18xx_pwm->dev,
-                                             sizeof(struct lpc18xx_pwm_data),
-                                             GFP_KERNEL);
-               if (!pwm->chip_data) {
+
+               data = devm_kzalloc(lpc18xx_pwm->dev, sizeof(*data),
+                                   GFP_KERNEL);
+               if (!data) {
                        ret = -ENOMEM;
                        goto remove_pwmchip;
                }
+
+               pwm_set_chip_data(pwm, data);
        }
 
        platform_set_drvdata(pdev, lpc18xx_pwm);