On 11/29/2017 06:00 PM, Joshua Abraham wrote:
Signed-off-by: Joshua Abraham <j.abraham1...@gmail.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
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to