>From the ATSHA204A datasheet (document DS40002025A):

Wake: If SDA is held low for a period greater than tWLO, the device
exits low-power mode and, after a delay of tWHI, is ready to receive
I2C commands.

tWHI value can be found in table 7-2.

Signed-off-by: Paweł Anikiel <p...@semihalf.com>
---
 drivers/misc/atsha204a-i2c.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/misc/atsha204a-i2c.c b/drivers/misc/atsha204a-i2c.c
index b89463babb..ba2ae3d85a 100644
--- a/drivers/misc/atsha204a-i2c.c
+++ b/drivers/misc/atsha204a-i2c.c
@@ -20,7 +20,8 @@
 #include <linux/delay.h>
 #include <u-boot/crc.h>
 
-#define ATSHA204A_TWLO                 60
+#define ATSHA204A_TWLO_US              60
+#define ATSHA204A_TWHI_US              2500
 #define ATSHA204A_TRANSACTION_TIMEOUT  100000
 #define ATSHA204A_TRANSACTION_RETRY    5
 #define ATSHA204A_EXECTIME             5000
@@ -225,7 +226,7 @@ int atsha204a_wakeup(struct udevice *dev)
                        continue;
                }
 
-               udelay(ATSHA204A_TWLO);
+               udelay(ATSHA204A_TWLO_US + ATSHA204A_TWHI_US);
 
                res = atsha204a_recv_resp(dev, &resp);
                if (res) {
-- 
2.35.1.1094.g7c7d902a7c-goog

Reply via email to