>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>
Reviewed-by: Simon Glass <s...@chromium.org>
---
 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 aa6acf0f9a..81ecb5b617 100644
--- a/drivers/misc/atsha204a-i2c.c
+++ b/drivers/misc/atsha204a-i2c.c
@@ -21,7 +21,8 @@
 #include <linux/bitrev.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
@@ -109,7 +110,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.36.1.476.g0c4daa206d-goog

Reply via email to