summaryrefslogtreecommitdiff
path: root/drivers/nfc/pn544.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/nfc/pn544.c')
-rw-r--r--drivers/nfc/pn544.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/nfc/pn544.c b/drivers/nfc/pn544.c
index 97a1f6b869f0..91216e465e12 100644
--- a/drivers/nfc/pn544.c
+++ b/drivers/nfc/pn544.c
@@ -111,6 +111,10 @@ static ssize_t pn544_dev_read(struct file *filp, char __user *buf,
mutex_unlock(&pn544_dev->read_mutex);
+ /* pn544 seems to be slow in handling I2C read requests
+ * so add 1ms delay after recv operation */
+ udelay(1000);
+
if (ret < 0) {
pr_err("%s: i2c_master_recv returned %d\n", __func__, ret);
return ret;
@@ -156,6 +160,10 @@ static ssize_t pn544_dev_write(struct file *filp, const char __user *buf,
ret = -EIO;
}
+ /* pn544 seems to be slow in handling I2C write requests
+ * so add 1ms delay after I2C send oparation */
+ udelay(1000);
+
return ret;
}