2020-04-06 16:43:59

by Prabhakar Mahadev Lad

[permalink] [raw]
Subject: [PATCH v5 3/5] media: i2c: ov5645: Turn probe error into warning for xvclk frequency mismatch

PLL's on platforms might not be so accurate enough to generate the
required clock frequency, so instead of erroring out on xvlck frequency
mismatch just warn the user and continue ahead in probe.

Signed-off-by: Lad Prabhakar <[email protected]>
---
drivers/media/i2c/ov5645.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/media/i2c/ov5645.c b/drivers/media/i2c/ov5645.c
index 52848fff8a08..314760349adf 100644
--- a/drivers/media/i2c/ov5645.c
+++ b/drivers/media/i2c/ov5645.c
@@ -1103,11 +1103,8 @@ static int ov5645_probe(struct i2c_client *client)
}
/* external clock must be 24MHz, allow 1% tolerance */
xclk_freq = clk_get_rate(ov5645->xclk);
- if (xclk_freq < 23760000 || xclk_freq > 24240000) {
- dev_err(dev, "external clock frequency %u is not supported\n",
- xclk_freq);
- return -EINVAL;
- }
+ if (xclk_freq < 23760000 || xclk_freq > 24240000)
+ dev_warn(dev, "xvclk mismatched, modes are based on 24MHz\n");

for (i = 0; i < OV5645_NUM_SUPPLIES; i++)
ov5645->supplies[i].supply = ov5645_supply_name[i];
--
2.20.1


2020-04-06 17:47:33

by Laurent Pinchart

[permalink] [raw]
Subject: Re: [PATCH v5 3/5] media: i2c: ov5645: Turn probe error into warning for xvclk frequency mismatch

Hi Prabhakar,

Thank you for the patch.

On Mon, Apr 06, 2020 at 05:42:39PM +0100, Lad Prabhakar wrote:
> PLL's on platforms might not be so accurate enough to generate the
> required clock frequency, so instead of erroring out on xvlck frequency
> mismatch just warn the user and continue ahead in probe.
>
> Signed-off-by: Lad Prabhakar <[email protected]>

Reviewed-by: Laurent Pinchart <[email protected]>

> ---
> drivers/media/i2c/ov5645.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/media/i2c/ov5645.c b/drivers/media/i2c/ov5645.c
> index 52848fff8a08..314760349adf 100644
> --- a/drivers/media/i2c/ov5645.c
> +++ b/drivers/media/i2c/ov5645.c
> @@ -1103,11 +1103,8 @@ static int ov5645_probe(struct i2c_client *client)
> }
> /* external clock must be 24MHz, allow 1% tolerance */
> xclk_freq = clk_get_rate(ov5645->xclk);
> - if (xclk_freq < 23760000 || xclk_freq > 24240000) {
> - dev_err(dev, "external clock frequency %u is not supported\n",
> - xclk_freq);
> - return -EINVAL;
> - }
> + if (xclk_freq < 23760000 || xclk_freq > 24240000)
> + dev_warn(dev, "xvclk mismatched, modes are based on 24MHz\n");
>
> for (i = 0; i < OV5645_NUM_SUPPLIES; i++)
> ov5645->supplies[i].supply = ov5645_supply_name[i];

--
Regards,

Laurent Pinchart

2020-04-07 07:20:15

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH v5 3/5] media: i2c: ov5645: Turn probe error into warning for xvclk frequency mismatch

Hi Prabhakar,

On Mon, Apr 6, 2020 at 6:43 PM Lad Prabhakar
<[email protected]> wrote:
> PLL's on platforms might not be so accurate enough to generate the
> required clock frequency, so instead of erroring out on xvlck frequency

xvclk? (but see below)

> mismatch just warn the user and continue ahead in probe.
>
> Signed-off-by: Lad Prabhakar <[email protected]>

Reviewed-by: Geert Uytterhoeven <[email protected]>

Like for 2/5, what about the xvclk naming?

> --- a/drivers/media/i2c/ov5645.c
> +++ b/drivers/media/i2c/ov5645.c
> @@ -1103,11 +1103,8 @@ static int ov5645_probe(struct i2c_client *client)
> }
> /* external clock must be 24MHz, allow 1% tolerance */
> xclk_freq = clk_get_rate(ov5645->xclk);
> - if (xclk_freq < 23760000 || xclk_freq > 24240000) {
> - dev_err(dev, "external clock frequency %u is not supported\n",
> - xclk_freq);
> - return -EINVAL;
> - }
> + if (xclk_freq < 23760000 || xclk_freq > 24240000)
> + dev_warn(dev, "xvclk mismatched, modes are based on 24MHz\n");

Calling it "xvclk" here will confuse the user, as the clock is named
"xclk" in DT?

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

2020-04-07 07:45:31

by Lad, Prabhakar

[permalink] [raw]
Subject: Re: [PATCH v5 3/5] media: i2c: ov5645: Turn probe error into warning for xvclk frequency mismatch

Hi Geert,

Thank you for the review.

On Tue, Apr 7, 2020 at 8:19 AM Geert Uytterhoeven <[email protected]> wrote:
>
> Hi Prabhakar,
>
> On Mon, Apr 6, 2020 at 6:43 PM Lad Prabhakar
> <[email protected]> wrote:
> > PLL's on platforms might not be so accurate enough to generate the
> > required clock frequency, so instead of erroring out on xvlck frequency
>
> xvclk? (but see below)
>
> > mismatch just warn the user and continue ahead in probe.
> >
> > Signed-off-by: Lad Prabhakar <[email protected]>
>
> Reviewed-by: Geert Uytterhoeven <[email protected]>
>
> Like for 2/5, what about the xvclk naming?
>
> > --- a/drivers/media/i2c/ov5645.c
> > +++ b/drivers/media/i2c/ov5645.c
> > @@ -1103,11 +1103,8 @@ static int ov5645_probe(struct i2c_client *client)
> > }
> > /* external clock must be 24MHz, allow 1% tolerance */
> > xclk_freq = clk_get_rate(ov5645->xclk);
> > - if (xclk_freq < 23760000 || xclk_freq > 24240000) {
> > - dev_err(dev, "external clock frequency %u is not supported\n",
> > - xclk_freq);
> > - return -EINVAL;
> > - }
> > + if (xclk_freq < 23760000 || xclk_freq > 24240000)
> > + dev_warn(dev, "xvclk mismatched, modes are based on 24MHz\n");
>
> Calling it "xvclk" here will confuse the user, as the clock is named
> "xclk" in DT?
>
Agreed Ill replace it with xclk in the warning.

Cheers,
--Prabhakar

> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
> -- Linus Torvalds