diff mbox series

[stable,v5.4.x] pwm: jz4740: Fix build failure

Message ID 20200710102758.8341-1-u.kleine-koenig@pengutronix.de (mailing list archive)
State Not Applicable
Headers show
Series [stable,v5.4.x] pwm: jz4740: Fix build failure | expand

Commit Message

Uwe Kleine-König July 10, 2020, 10:27 a.m. UTC
When commit 9017dc4fbd59 ("pwm: jz4740: Enhance precision in calculation
of duty cycle") from v5.8-rc1 was backported to v5.4.x its dependency on
commit ce1f9cece057 ("pwm: jz4740: Use clocks from TCU driver") was not
noticed which made the pwm-jz4740 driver fail to build.

As ce1f9cece057 depends on still more rework, just backport a small part
of this commit to make the driver build again. (There is no dependency
on the functionality introduced in ce1f9cece057, just the rate variable
is needed.)

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
Hello,

@Paul: Can you please check this is correct? I only build-tested this
change.

Best regards
Uwe

 drivers/pwm/pwm-jz4740.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

H. Nikolaus Schaller July 10, 2020, 10:48 a.m. UTC | #1
> Am 10.07.2020 um 12:27 schrieb Uwe Kleine-König <u.kleine-koenig@pengutronix.de>:
> 
> When commit 9017dc4fbd59 ("pwm: jz4740: Enhance precision in calculation
> of duty cycle") from v5.8-rc1 was backported to v5.4.x its dependency on
> commit ce1f9cece057 ("pwm: jz4740: Use clocks from TCU driver") was not
> noticed which made the pwm-jz4740 driver fail to build.

Please can you add my "reported by?"

> As ce1f9cece057 depends on still more rework, just backport a small part
> of this commit to make the driver build again. (There is no dependency
> on the functionality introduced in ce1f9cece057, just the rate variable
> is needed.)

BR and thanks,
Nikolaus

> 
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> ---
> Hello,
> 
> @Paul: Can you please check this is correct? I only build-tested this
> change.
> 
> Best regards
> Uwe
> 
> drivers/pwm/pwm-jz4740.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/pwm/pwm-jz4740.c b/drivers/pwm/pwm-jz4740.c
> index d0f5c69930d0..77c28313e95f 100644
> --- a/drivers/pwm/pwm-jz4740.c
> +++ b/drivers/pwm/pwm-jz4740.c
> @@ -92,11 +92,12 @@ static int jz4740_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
> {
> 	struct jz4740_pwm_chip *jz4740 = to_jz4740(pwm->chip);
> 	unsigned long long tmp;
> -	unsigned long period, duty;
> +	unsigned long rate, period, duty;
> 	unsigned int prescaler = 0;
> 	uint16_t ctrl;
> 
> -	tmp = (unsigned long long)clk_get_rate(jz4740->clk) * state->period;
> +	rate = clk_get_rate(jz4740->clk);
> +	tmp = rate * state->period;
> 	do_div(tmp, 1000000000);
> 	period = tmp;
> 
> -- 
> 2.27.0
>
Uwe Kleine-König July 10, 2020, 7:47 p.m. UTC | #2
On Fri, Jul 10, 2020 at 12:48:36PM +0200, H. Nikolaus Schaller wrote:
> 
> > Am 10.07.2020 um 12:27 schrieb Uwe Kleine-König <u.kleine-koenig@pengutronix.de>:
> > 
> > When commit 9017dc4fbd59 ("pwm: jz4740: Enhance precision in calculation
> > of duty cycle") from v5.8-rc1 was backported to v5.4.x its dependency on
> > commit ce1f9cece057 ("pwm: jz4740: Use clocks from TCU driver") was not
> > noticed which made the pwm-jz4740 driver fail to build.
> 
> Please can you add my "reported by?"

Greg, can you please add this while applying? (Assuming you're ok with
this change and ideally Paul can confirm the change is fine.)

Reported-by: H. Nikolaus Schaller <hns@goldelico.com>

Best regards
Uwe
Greg KH July 14, 2020, 4:58 p.m. UTC | #3
On Fri, Jul 10, 2020 at 09:47:02PM +0200, Uwe Kleine-König wrote:
> On Fri, Jul 10, 2020 at 12:48:36PM +0200, H. Nikolaus Schaller wrote:
> > 
> > > Am 10.07.2020 um 12:27 schrieb Uwe Kleine-König <u.kleine-koenig@pengutronix.de>:
> > > 
> > > When commit 9017dc4fbd59 ("pwm: jz4740: Enhance precision in calculation
> > > of duty cycle") from v5.8-rc1 was backported to v5.4.x its dependency on
> > > commit ce1f9cece057 ("pwm: jz4740: Use clocks from TCU driver") was not
> > > noticed which made the pwm-jz4740 driver fail to build.
> > 
> > Please can you add my "reported by?"
> 
> Greg, can you please add this while applying? (Assuming you're ok with
> this change and ideally Paul can confirm the change is fine.)
> 
> Reported-by: H. Nikolaus Schaller <hns@goldelico.com>

Now added, thanks.
diff mbox series

Patch

diff --git a/drivers/pwm/pwm-jz4740.c b/drivers/pwm/pwm-jz4740.c
index d0f5c69930d0..77c28313e95f 100644
--- a/drivers/pwm/pwm-jz4740.c
+++ b/drivers/pwm/pwm-jz4740.c
@@ -92,11 +92,12 @@  static int jz4740_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
 {
 	struct jz4740_pwm_chip *jz4740 = to_jz4740(pwm->chip);
 	unsigned long long tmp;
-	unsigned long period, duty;
+	unsigned long rate, period, duty;
 	unsigned int prescaler = 0;
 	uint16_t ctrl;
 
-	tmp = (unsigned long long)clk_get_rate(jz4740->clk) * state->period;
+	rate = clk_get_rate(jz4740->clk);
+	tmp = rate * state->period;
 	do_div(tmp, 1000000000);
 	period = tmp;