All of lore.kernel.org
 help / color / mirror / Atom feed
From: Guru Das Srinagesh <gurus@codeaurora.org>
To: linux-pwm@vger.kernel.org
Cc: "Thierry Reding" <thierry.reding@gmail.com>,
	"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
	"Subbaraman Narayanamurthy" <subbaram@codeaurora.org>,
	"David Collins" <collinsd@codeaurora.org>,
	linux-kernel@vger.kernel.org,
	"Michael Turquette" <mturquette@baylibre.com>,
	"Stephen Boyd" <sboyd@kernel.org>,
	linux-clk@vger.kernel.org,
	"David Laight" <David.Laight@ACULAB.COM>,
	"Arnd Bergmann" <arnd@arndb.de>
Subject: Re: [PATCH v12 10/11] clk: pwm: Use 64-bit division function
Date: Fri, 10 Apr 2020 12:15:03 -0700	[thread overview]
Message-ID: <20200410191503.GA21571@codeaurora.org> (raw)
In-Reply-To: <d5127aa19a128edf7c3dd437291b366b77be4ac5.1586414867.git.gurus@codeaurora.org>

+ Arnd, David

On Wed, Apr 08, 2020 at 11:52:39PM -0700, Guru Das Srinagesh wrote:
> Since the PWM framework is switching struct pwm_args.period's datatype
> to u64, prepare for this transition by using div64_u64 to handle a
> 64-bit divisor.
> 
> Also ensure that divide-by-zero (with fixed_rate as denominator) does
> not happen with an explicit check with probe failure as a consequence.
> 
> Cc: Michael Turquette <mturquette@baylibre.com>
> Cc: Stephen Boyd <sboyd@kernel.org>
> Cc: linux-clk@vger.kernel.org
> 
> Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
> ---
>  drivers/clk/clk-pwm.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/clk/clk-pwm.c b/drivers/clk/clk-pwm.c
> index 87fe0b0e..86f2e2d 100644
> --- a/drivers/clk/clk-pwm.c
> +++ b/drivers/clk/clk-pwm.c
> @@ -89,7 +89,12 @@ static int clk_pwm_probe(struct platform_device *pdev)
>  	}
>  
>  	if (of_property_read_u32(node, "clock-frequency", &clk_pwm->fixed_rate))
> -		clk_pwm->fixed_rate = NSEC_PER_SEC / pargs.period;
> +		clk_pwm->fixed_rate = div64_u64(NSEC_PER_SEC, pargs.period);
> +
> +	if (!clk_pwm->fixed_rate) {
> +		dev_err(&pdev->dev, "fixed_rate cannot be zero\n");
> +		return -EINVAL;
> +	}
>  
>  	if (pargs.period != NSEC_PER_SEC / clk_pwm->fixed_rate &&
>  	    pargs.period != DIV_ROUND_UP(NSEC_PER_SEC, clk_pwm->fixed_rate)) {
> -- 

Hello Arnd, David:

Sorry, missed cc-ing you both to this patch while sending it out. Could
you please review it when you get a chance to?

Thank you.

Guru Das.

  reply	other threads:[~2020-04-10 19:15 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-09  6:52 [PATCH v12 00/11] Convert PWM period and duty cycle to u64 Guru Das Srinagesh
2020-04-09  6:52 ` Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 01/11] drm/i915: Use 64-bit division macro Guru Das Srinagesh
2020-04-09  6:52   ` [Intel-gfx] " Guru Das Srinagesh
2020-04-09  6:52   ` Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 02/11] hwmon: pwm-fan: " Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 03/11] ir-rx51: " Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 04/11] pwm: clps711x: Cast period to u32 before use as divisor Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 05/11] pwm: pwm-imx-tpm: Use 64-bit division macro Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 06/11] pwm: imx27: Use 64-bit division macro and function Guru Das Srinagesh
2020-04-10 19:16   ` Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 07/11] pwm: sifive: Use 64-bit division macro Guru Das Srinagesh
2020-04-09  6:52   ` Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 08/11] pwm: sun4i: Use nsecs_to_jiffies to avoid a division Guru Das Srinagesh
2020-04-10 19:20   ` Guru Das Srinagesh
2020-04-11  5:49   ` Chen-Yu Tsai
2020-04-09  6:52 ` [PATCH v12 09/11] backlight: pwm_bl: Use 64-bit division function Guru Das Srinagesh
2020-04-09  6:52   ` Guru Das Srinagesh
2020-04-09  6:52   ` Guru Das Srinagesh
2020-04-16  9:44   ` Lee Jones
2020-04-16  9:44     ` Lee Jones
2020-04-16  9:44     ` Lee Jones
2020-04-16 17:55     ` Guru Das Srinagesh
2020-04-16 17:55       ` Guru Das Srinagesh
2020-04-16 17:55       ` Guru Das Srinagesh
2020-04-09  6:52 ` [PATCH v12 10/11] clk: pwm: " Guru Das Srinagesh
2020-04-10 19:15   ` Guru Das Srinagesh [this message]
2020-04-09  6:52 ` [PATCH v12 11/11] pwm: core: Convert period and duty cycle to u64 Guru Das Srinagesh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200410191503.GA21571@codeaurora.org \
    --to=gurus@codeaurora.org \
    --cc=David.Laight@ACULAB.COM \
    --cc=arnd@arndb.de \
    --cc=collinsd@codeaurora.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pwm@vger.kernel.org \
    --cc=mturquette@baylibre.com \
    --cc=sboyd@kernel.org \
    --cc=subbaram@codeaurora.org \
    --cc=thierry.reding@gmail.com \
    --cc=u.kleine-koenig@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.