diff options
author | Douglas Anderson <dianders@chromium.org> | 2017-10-12 23:11:18 +0300 |
---|---|---|
committer | Ulf Hansson <ulf.hansson@linaro.org> | 2017-11-02 17:20:41 +0300 |
commit | 93c23ae385299f889606b42507b12b40e50d6088 (patch) | |
tree | ab9222986faed046208bb655bcabd8abd1a1f54d /fs/dlm/lowcomms.h | |
parent | eaaffcefaa8015aaf496590707ddfa70905e0001 (diff) | |
download | linux-93c23ae385299f889606b42507b12b40e50d6088.tar.xz |
mmc: dw_mmc: Cleanup the DTO timer like the CTO one
The recent CTO timer introduced in commit 03de19212ea3 ("mmc: dw_mmc:
introduce timer for broken command transfer over scheme") was causing
observable problems due to race conditions. Previous patches have
fixed those race conditions.
It can be observed that these same race conditions ought to be
theoretically possible with the DTO timer too though they are
massively less likely to happen because the data timeout is always set
to 0xffffff right now. That means even at a 200 MHz card clock we
were arming the DTO timer for 94 ms:
>>> (0xffffff * 1000. / 200000000) + 10
93.886075
We always also were setting the DTO timer _after_ starting the
transfer, unlike how the old code was seting the CTO timer.
In any case, even though the DTO timer is much less likely to have
races, it still makes sense to add code to handle it _just in case_.
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'fs/dlm/lowcomms.h')
0 files changed, 0 insertions, 0 deletions