Re: [PATCH RFT/RFC v2 28/47] staging: media: zoran: convert mdelay to udelay

From: Mauro Carvalho Chehab
Date: Thu Oct 01 2020 - 03:54:56 EST


Em Fri, 25 Sep 2020 18:30:38 +0000
Corentin Labbe <clabbe@xxxxxxxxxxxx> escreveu:

> As asked by checkpath, let's use udelay.
>
> Signed-off-by: Corentin Labbe <clabbe@xxxxxxxxxxxx>
> ---
> drivers/staging/media/zoran/zoran_device.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/media/zoran/zoran_device.c b/drivers/staging/media/zoran/zoran_device.c
> index 0ecb044f8e8f..4c9f6eafd130 100644
> --- a/drivers/staging/media/zoran/zoran_device.c
> +++ b/drivers/staging/media/zoran/zoran_device.c
> @@ -1332,9 +1332,9 @@ void zoran_init_hardware(struct zoran *zr)
> void zr36057_restart(struct zoran *zr)
> {
> btwrite(0, ZR36057_SPGPPCR);
> - mdelay(1);
> + udelay(1000);
> btor(ZR36057_SPGPPCR_SoftReset, ZR36057_SPGPPCR);
> - mdelay(1);
> + udelay(1000);

Ok, this is still on staging, so I'm willing to accept it, but
why aren't you using usleep_range() instead?

mdelay/udelay should be used only when the delay time should
be as precise as possible, as what they do is to keep the CPU
busy during the wait time.

I doubt that this is the case here. So, I would use,
instead, something like:

usleep_range(1000, 2000)

(assuming that 4ms is still a reasonable time for the soft
reset to happen).

>
> /* assert P_Reset */
> btwrite(0, ZR36057_JPC);



Thanks,
Mauro