Linux-Media Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] media: ov5640: Fix check for PLL1 exceeding max allowed rate
@ 2019-10-29 12:42 Adam Ford
  2019-11-27  2:08 ` Adam Ford
  0 siblings, 1 reply; 4+ messages in thread
From: Adam Ford @ 2019-10-29 12:42 UTC (permalink / raw)
  To: linux-media
  Cc: mchehab, slongerbeam, maxime.ripard, adam.ford, linux-kernel, Adam Ford

The variable _rate is by ov5640_compute_sys_clk() which returns
zero if the PLL exceeds 1GHz.  Unfortunately, the check to see
if the max PLL1 output is checking 'rate' and not '_rate' and
'rate' does not ever appear to be 0.

This patch changes the check against the returned value of
'_rate' to determine if the PLL1 output exceeds 1GHz.

Fixes: aa2882481cad ("media: ov5640: Adjust the clock based on the expected rate")

Signed-off-by: Adam Ford <aford173@gmail.com>

diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 5e495c833d32..bb968e764f31 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -874,7 +874,7 @@ static unsigned long ov5640_calc_sys_clk(struct ov5640_dev *sensor,
 			 * We have reached the maximum allowed PLL1 output,
 			 * increase sysdiv.
 			 */
-			if (!rate)
+			if (!_rate)
 				break;
 
 			/*
-- 
2.17.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] media: ov5640: Fix check for PLL1 exceeding max allowed rate
  2019-10-29 12:42 [PATCH] media: ov5640: Fix check for PLL1 exceeding max allowed rate Adam Ford
@ 2019-11-27  2:08 ` Adam Ford
  2019-11-28 10:21   ` Jacopo Mondi
  0 siblings, 1 reply; 4+ messages in thread
From: Adam Ford @ 2019-11-27  2:08 UTC (permalink / raw)
  To: linux-media
  Cc: Mauro Carvalho Chehab, Steve Longerbeam, Maxime Ripard,
	Adam Ford, Linux Kernel Mailing List

On Tue, Oct 29, 2019 at 7:42 AM Adam Ford <aford173@gmail.com> wrote:
>
> The variable _rate is by ov5640_compute_sys_clk() which returns
> zero if the PLL exceeds 1GHz.  Unfortunately, the check to see
> if the max PLL1 output is checking 'rate' and not '_rate' and
> 'rate' does not ever appear to be 0.
>
> This patch changes the check against the returned value of
> '_rate' to determine if the PLL1 output exceeds 1GHz.
>
> Fixes: aa2882481cad ("media: ov5640: Adjust the clock based on the expected rate")
>

I haven't seen any responses to this patch.  Has anyone had a chance
to review this?  It's been nearly a month.
I think it would be appropriate to backport to stable if deemed acceptable.

adam

> Signed-off-by: Adam Ford <aford173@gmail.com>
>
> diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
> index 5e495c833d32..bb968e764f31 100644
> --- a/drivers/media/i2c/ov5640.c
> +++ b/drivers/media/i2c/ov5640.c
> @@ -874,7 +874,7 @@ static unsigned long ov5640_calc_sys_clk(struct ov5640_dev *sensor,
>                          * We have reached the maximum allowed PLL1 output,
>                          * increase sysdiv.
>                          */
> -                       if (!rate)
> +                       if (!_rate)
>                                 break;
>
>                         /*
> --
> 2.17.1
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] media: ov5640: Fix check for PLL1 exceeding max allowed rate
  2019-11-27  2:08 ` Adam Ford
@ 2019-11-28 10:21   ` Jacopo Mondi
  2019-11-28 14:28     ` Adam Ford
  0 siblings, 1 reply; 4+ messages in thread
From: Jacopo Mondi @ 2019-11-28 10:21 UTC (permalink / raw)
  To: Adam Ford
  Cc: linux-media, Mauro Carvalho Chehab, Steve Longerbeam,
	Maxime Ripard, Adam Ford, Linux Kernel Mailing List

[-- Attachment #1: Type: text/plain, Size: 1879 bytes --]

Hi Adam,

On Tue, Nov 26, 2019 at 08:08:05PM -0600, Adam Ford wrote:
> On Tue, Oct 29, 2019 at 7:42 AM Adam Ford <aford173@gmail.com> wrote:
> >
> > The variable _rate is by ov5640_compute_sys_clk() which returns
> > zero if the PLL exceeds 1GHz.  Unfortunately, the check to see
> > if the max PLL1 output is checking 'rate' and not '_rate' and
> > 'rate' does not ever appear to be 0.

This seems a bit convoluted. What about:

"The PLL calculation routine checks the wrong variable 'rate' to
verify that the calculated PLL1 output frequency does not exceed
1GHz. Fix this by using the correct '_rate' one."

Or something against these lines

> >
> > This patch changes the check against the returned value of
> > '_rate' to determine if the PLL1 output exceeds 1GHz.
> >
> > Fixes: aa2882481cad ("media: ov5640: Adjust the clock based on the expected rate")
> >
>
> I haven't seen any responses to this patch.  Has anyone had a chance
> to review this?  It's been nearly a month.

You're totally right! Sorry about this

> I think it would be appropriate to backport to stable if deemed acceptable.
>

Indeed! This fixes a real issue

Acked-by: Jacopo Mondi <jacopo@jmondi.org>

Thanks
  j

> adam
>
> > Signed-off-by: Adam Ford <aford173@gmail.com>
> >
> > diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
> > index 5e495c833d32..bb968e764f31 100644
> > --- a/drivers/media/i2c/ov5640.c
> > +++ b/drivers/media/i2c/ov5640.c
> > @@ -874,7 +874,7 @@ static unsigned long ov5640_calc_sys_clk(struct ov5640_dev *sensor,
> >                          * We have reached the maximum allowed PLL1 output,
> >                          * increase sysdiv.
> >                          */
> > -                       if (!rate)
> > +                       if (!_rate)
> >                                 break;
> >
> >                         /*
> > --
> > 2.17.1
> >

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] media: ov5640: Fix check for PLL1 exceeding max allowed rate
  2019-11-28 10:21   ` Jacopo Mondi
@ 2019-11-28 14:28     ` Adam Ford
  0 siblings, 0 replies; 4+ messages in thread
From: Adam Ford @ 2019-11-28 14:28 UTC (permalink / raw)
  To: Jacopo Mondi
  Cc: linux-media, Mauro Carvalho Chehab, Steve Longerbeam,
	Maxime Ripard, Adam Ford, Linux Kernel Mailing List

On Thu, Nov 28, 2019 at 4:19 AM Jacopo Mondi <jacopo@jmondi.org> wrote:
>
> Hi Adam,
>
> On Tue, Nov 26, 2019 at 08:08:05PM -0600, Adam Ford wrote:
> > On Tue, Oct 29, 2019 at 7:42 AM Adam Ford <aford173@gmail.com> wrote:
> > >
> > > The variable _rate is by ov5640_compute_sys_clk() which returns
> > > zero if the PLL exceeds 1GHz.  Unfortunately, the check to see
> > > if the max PLL1 output is checking 'rate' and not '_rate' and
> > > 'rate' does not ever appear to be 0.
>
> This seems a bit convoluted. What about:
>
> "The PLL calculation routine checks the wrong variable 'rate' to
> verify that the calculated PLL1 output frequency does not exceed
> 1GHz. Fix this by using the correct '_rate' one."
>
> Or something against these lines

That makes sense.

I'll do a V2 for this patch and change the description and add your
'acked-by' note to it.

I probably won't get to it until this weekend, since today is a
holiday in the US, and I am traveling.

adam
>
> > >
> > > This patch changes the check against the returned value of
> > > '_rate' to determine if the PLL1 output exceeds 1GHz.
> > >
> > > Fixes: aa2882481cad ("media: ov5640: Adjust the clock based on the expected rate")
> > >
> >
> > I haven't seen any responses to this patch.  Has anyone had a chance
> > to review this?  It's been nearly a month.
>
> You're totally right! Sorry about this
>
> > I think it would be appropriate to backport to stable if deemed acceptable.
> >
>
> Indeed! This fixes a real issue
>
> Acked-by: Jacopo Mondi <jacopo@jmondi.org>
>
> Thanks
>   j
>
> > adam
> >
> > > Signed-off-by: Adam Ford <aford173@gmail.com>
> > >
> > > diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
> > > index 5e495c833d32..bb968e764f31 100644
> > > --- a/drivers/media/i2c/ov5640.c
> > > +++ b/drivers/media/i2c/ov5640.c
> > > @@ -874,7 +874,7 @@ static unsigned long ov5640_calc_sys_clk(struct ov5640_dev *sensor,
> > >                          * We have reached the maximum allowed PLL1 output,
> > >                          * increase sysdiv.
> > >                          */
> > > -                       if (!rate)
> > > +                       if (!_rate)
> > >                                 break;
> > >
> > >                         /*
> > > --
> > > 2.17.1
> > >

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, back to index

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-29 12:42 [PATCH] media: ov5640: Fix check for PLL1 exceeding max allowed rate Adam Ford
2019-11-27  2:08 ` Adam Ford
2019-11-28 10:21   ` Jacopo Mondi
2019-11-28 14:28     ` Adam Ford

Linux-Media Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-media/0 linux-media/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-media linux-media/ https://lore.kernel.org/linux-media \
		linux-media@vger.kernel.org
	public-inbox-index linux-media

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-media


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git