[PATCH v3 058/108] pwm: imx27: Make use of devm_pwmchip_alloc() function
Philipp Zabel
p.zabel at pengutronix.de
Tue Dec 5 03:49:19 PST 2023
Hi Uwe,
On Di, 2023-11-21 at 14:50 +0100, Uwe Kleine-König wrote:
> This prepares the pwm-imx27 driver to further changes of the pwm core
> outlined in the commit introducing devm_pwmchip_alloc(). There is no
> intended semantical change and the driver should behave as before.
>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
> ---
> drivers/pwm/pwm-imx27.c | 20 +++++++++++---------
> 1 file changed, 11 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/pwm/pwm-imx27.c b/drivers/pwm/pwm-imx27.c
> index 5d796453519a..52ac65e40e35 100644
> --- a/drivers/pwm/pwm-imx27.c
> +++ b/drivers/pwm/pwm-imx27.c
[...]
> @@ -93,7 +92,10 @@ struct pwm_imx27_chip {
> unsigned int duty_cycle;
> };
>
> -#define to_pwm_imx27_chip(chip) container_of(chip, struct pwm_imx27_chip, chip)
> +static inline struct pwm_imx27_chip *to_pwm_imx27_chip(struct pwm_chip *chip)
> +{
> + return pwmchip_priv(chip);
> +}
>
> static int pwm_imx27_clk_prepare_enable(struct pwm_imx27_chip *imx)
> {
> @@ -306,13 +308,15 @@ MODULE_DEVICE_TABLE(of, pwm_imx27_dt_ids);
>
> static int pwm_imx27_probe(struct platform_device *pdev)
> {
> + struct pwm_chip *chip;
> struct pwm_imx27_chip *imx;
> int ret;
> u32 pwmcr;
>
> - imx = devm_kzalloc(&pdev->dev, sizeof(*imx), GFP_KERNEL);
> - if (imx == NULL)
> - return -ENOMEM;
> + chip = devm_pwmchip_alloc(&pdev->dev, 1, sizeof(*imx));
> + if (IS_ERR(chip))
> + return PTR_ERR(chip);
> + imx = pwmchip_priv(chip);
Please use to_pwm_imx27_chip() here. Otherwise,
Reviewed-by: Philipp Zabel <p.zabel at pengutronix.de>
regards
Philipp
More information about the linux-arm-kernel
mailing list