regulator: pwm: Adjust PWM config at probe time
authorBoris Brezillon <boris.brezillon@free-electrons.com>
Tue, 14 Jun 2016 09:13:17 +0000 (11:13 +0200)
committerThierry Reding <thierry.reding@gmail.com>
Mon, 11 Jul 2016 06:41:37 +0000 (08:41 +0200)
The PWM attached to a PWM regulator device might have been previously
configured by the bootloader.
Make sure the bootloader and linux config are in sync, and adjust the PWM
config if that's not the case.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Acked-by: Mark Brown <broonie@kernel.org>
Acked-by: Brian Norris <briannorris@chromium.org>
Tested-by: Brian Norris <briannorris@chromium.org>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
drivers/regulator/pwm-regulator.c

index 666bc3b..cb2f22c 100644 (file)
@@ -316,11 +316,9 @@ static int pwm_regulator_probe(struct platform_device *pdev)
                return ret;
        }
 
-       /*
-        * FIXME: pwm_apply_args() should be removed when switching to the
-        * atomic PWM API.
-        */
-       pwm_apply_args(drvdata->pwm);
+       ret = pwm_adjust_config(drvdata->pwm);
+       if (ret)
+               return ret;
 
        regulator = devm_regulator_register(&pdev->dev,
                                            &drvdata->desc, &config);