diff mbox series

[v6,109/164] pwm: sprd: Drop duplicated tracking of the parent device

Message ID f85771f4bf659c0fdee30cf117b87fd877bad5e4.1707900770.git.u.kleine-koenig@pengutronix.de
State Accepted
Headers show
Series pwm: Improve lifetime tracking for pwm_chips | expand

Commit Message

Uwe Kleine-König Feb. 14, 2024, 9:32 a.m. UTC
The pwmchip stores a pointer to the parent device, so there is no need
to store another copy in driver private data. Drop struct
sprd_pwm_chip::dev and use the pwm_chip's parent pointer instead.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
 drivers/pwm/pwm-sprd.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

Comments

Chunyan Zhang Feb. 22, 2024, 10:04 a.m. UTC | #1
On Wed, 14 Feb 2024 at 17:34, Uwe Kleine-König
<u.kleine-koenig@pengutronix.de> wrote:
>
> The pwmchip stores a pointer to the parent device, so there is no need
> to store another copy in driver private data. Drop struct
> sprd_pwm_chip::dev and use the pwm_chip's parent pointer instead.
>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>

Tested-by: Chunyan Zhang <zhang.lyra@gmail.com>

> ---
>  drivers/pwm/pwm-sprd.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pwm/pwm-sprd.c b/drivers/pwm/pwm-sprd.c
> index 2e87666ad2b9..a38f50c3dc00 100644
> --- a/drivers/pwm/pwm-sprd.c
> +++ b/drivers/pwm/pwm-sprd.c
> @@ -34,7 +34,6 @@ struct sprd_pwm_chn {
>
>  struct sprd_pwm_chip {
>         void __iomem *base;
> -       struct device *dev;
>         struct pwm_chip chip;
>         struct sprd_pwm_chn chn[SPRD_PWM_CHN_NUM];
>  };
> @@ -85,7 +84,7 @@ static int sprd_pwm_get_state(struct pwm_chip *chip, struct pwm_device *pwm,
>          */
>         ret = clk_bulk_prepare_enable(SPRD_PWM_CHN_CLKS_NUM, chn->clks);
>         if (ret) {
> -               dev_err(spc->dev, "failed to enable pwm%u clocks\n",
> +               dev_err(pwmchip_parent(chip), "failed to enable pwm%u clocks\n",
>                         pwm->hwpwm);
>                 return ret;
>         }
> @@ -182,7 +181,7 @@ static int sprd_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
>                         ret = clk_bulk_prepare_enable(SPRD_PWM_CHN_CLKS_NUM,
>                                                       chn->clks);
>                         if (ret) {
> -                               dev_err(spc->dev,
> +                               dev_err(pwmchip_parent(chip),
>                                         "failed to enable pwm%u clocks\n",
>                                         pwm->hwpwm);
>                                 return ret;
> @@ -265,7 +264,6 @@ static int sprd_pwm_probe(struct platform_device *pdev)
>         if (IS_ERR(spc->base))
>                 return PTR_ERR(spc->base);
>
> -       spc->dev = &pdev->dev;
>         memcpy(spc->chn, chn, sizeof(chn));
>
>         spc->chip.dev = &pdev->dev;
> --
> 2.43.0
>
diff mbox series

Patch

diff --git a/drivers/pwm/pwm-sprd.c b/drivers/pwm/pwm-sprd.c
index 2e87666ad2b9..a38f50c3dc00 100644
--- a/drivers/pwm/pwm-sprd.c
+++ b/drivers/pwm/pwm-sprd.c
@@ -34,7 +34,6 @@  struct sprd_pwm_chn {
 
 struct sprd_pwm_chip {
 	void __iomem *base;
-	struct device *dev;
 	struct pwm_chip chip;
 	struct sprd_pwm_chn chn[SPRD_PWM_CHN_NUM];
 };
@@ -85,7 +84,7 @@  static int sprd_pwm_get_state(struct pwm_chip *chip, struct pwm_device *pwm,
 	 */
 	ret = clk_bulk_prepare_enable(SPRD_PWM_CHN_CLKS_NUM, chn->clks);
 	if (ret) {
-		dev_err(spc->dev, "failed to enable pwm%u clocks\n",
+		dev_err(pwmchip_parent(chip), "failed to enable pwm%u clocks\n",
 			pwm->hwpwm);
 		return ret;
 	}
@@ -182,7 +181,7 @@  static int sprd_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
 			ret = clk_bulk_prepare_enable(SPRD_PWM_CHN_CLKS_NUM,
 						      chn->clks);
 			if (ret) {
-				dev_err(spc->dev,
+				dev_err(pwmchip_parent(chip),
 					"failed to enable pwm%u clocks\n",
 					pwm->hwpwm);
 				return ret;
@@ -265,7 +264,6 @@  static int sprd_pwm_probe(struct platform_device *pdev)
 	if (IS_ERR(spc->base))
 		return PTR_ERR(spc->base);
 
-	spc->dev = &pdev->dev;
 	memcpy(spc->chn, chn, sizeof(chn));
 
 	spc->chip.dev = &pdev->dev;