• Ulf Hansson's avatar
    mmc: block: Fixup busy detection while invoking stop cmd at recovery · bb5cba40
    Ulf Hansson authored
    When sending a stop command at the recovery path, use a R1B response
    when the failing data request are a WRITE. Thus we also care about the
    busy detection completion in this case.
    
    For a failing READ request, we use a R1 response for the stop command,
    since we don't need to care about busy detection in this case.
    
    To align behavior between hosts supporting MMC_CAP_WAIT_WHILE_BUSY and
    those who are not, we add a CMD13 polling method for the card's status.
    
    We also respect whether the host has specified the max_busy_timeout,
    which means we may fallback to CMD13 polling if the timeout is greater
    than what the host are able to support.
    Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
    Signed-off-by: default avatarChris Ball <chris@printf.net>
    bb5cba40
block.c 64.3 KB