memory: tegra: Increase handshake timeout on Tegra20
authorDmitry Osipenko <digetx@gmail.com>
Sun, 11 Aug 2019 21:00:35 +0000 (00:00 +0300)
committerThierry Reding <treding@nvidia.com>
Mon, 11 Nov 2019 13:55:26 +0000 (14:55 +0100)
Turned out that it could take over a millisecond under some circumstances,
like running on a very low CPU/memory frequency. TRM says that handshake
happens when there is a "safe" moment, but not explains exactly what that
moment is. Apparently at least memory should be idling and thus the low
frequency should be a reasonable cause for a longer handshake delay.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/memory/tegra/tegra20-emc.c

index 25a6aad..da75efc 100644 (file)
@@ -236,7 +236,7 @@ static int emc_complete_timing_change(struct tegra_emc *emc, bool flush)
        }
 
        timeout = wait_for_completion_timeout(&emc->clk_handshake_complete,
-                                             usecs_to_jiffies(100));
+                                             msecs_to_jiffies(100));
        if (timeout == 0) {
                dev_err(emc->dev, "EMC-CAR handshake failed\n");
                return -EIO;