[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <78551ca3-9ebe-3010-f856-46026f9ce9a3@kapsi.fi>
Date: Wed, 29 Nov 2017 18:07:53 +0200
From: Mikko Perttunen <cyndis@...si.fi>
To: Joshua Abraham <j.abraham1776@...il.com>, marvin24@....de
Cc: gregkh@...uxfoundation.org, ac100@...ts.launchpad.net,
linux-tegra@...r.kernel.org, devel@...verdev.osuosl.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] staging: nvec: Fix usleep_range is preferred over udelay
On 11/29/2017 06:00 PM, Joshua Abraham wrote:
> Signed-off-by: Joshua Abraham <j.abraham1776@...il.com>
>
> This patch fixes the issue:
>
> CHECK: usleep_range is preferred over udelay; see
> Documentation/timers/timers-howto.txt
>
> ---
> drivers/staging/nvec/nvec.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/nvec/nvec.c b/drivers/staging/nvec/nvec.c
> index 4ff8f47385da..2a01ef4b54ff 100644
> --- a/drivers/staging/nvec/nvec.c
> +++ b/drivers/staging/nvec/nvec.c
> @@ -631,7 +631,7 @@ static irqreturn_t nvec_interrupt(int irq, void *dev)
> break;
> case 2: /* first byte after command */
> if (status == (I2C_SL_IRQ | RNW | RCVD)) {
> - udelay(33);
> + usleep_range(30, 35);
> if (nvec->rx->data[0] != 0x01) {
> dev_err(nvec->dev,
> "Read without prior read command\n");
>
This is incorrect, as this function is an interrupt handler and we
cannot sleep in interrupt context.
Cheers,
Mikko
Powered by blists - more mailing lists