Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2b007503 authored by Talel Shenhar's avatar Talel Shenhar
Browse files

mmc: block: fix flush timeout error handling



The eMMC card can go into "reset state" due to several
reasons and without host involvement,
e.g. low voltage detection.
This kind of eMMC card reset requires eMMC host to
re-initialize the eMMC card.
In case of eMMC card reset, eMMC card firmware sets its
state to "reset state" which allows CMD0 only.
In case the eMMC host is in the middle of FLUSH request it will
get timeout which will cause the driver to requeue the flush
request and try it later on.
The problem with this is that no one is going to initialize
the eMMC card to move out of "reset state", hence, the flush
request will keep on failing over and over again.
This commit adds a device reset for the case where flush request
fails due to timeout.

Change-Id: Ic268e13cb19d0cdce0070174bf7847e6253e4513
Signed-off-by: default avatarTalel Shenhar <tatias@codeaurora.org>
parent 9754c560
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment