• Shawn Lin's avatar
    mmc: dw_mmc: add hw_reset support · 935a665e
    Shawn Lin authored
    This patch implement hw_reset function for DesignWare
    MMC controller. By adding this feature, mmc blk can
    do some basic recovery.
    
    Set the following resets:
    software reset – BMOD[0] for IDMAC only
    DMA reset - CTRL[2]
    FIFO reset - CTRL[1] bits
    
    Program the CARD_RESET register with a value of 0 for the bit
    corresponding to the card number; This programming asserts the
    RST_n signal and resets the card. After a minimum of 1 ?s, de-asserts the
    RST_n signal and takes the card out of reset. The application can program
    a new CMD only after a minimum of 200 us
    
    This implementation can be easily tested by cutting off->On vmmc
    while doing data accessing in background to simulate that case.
    Signed-off-by: default avatarShawn Lin <shawn.lin@rock-chips.com>
    Signed-off-by: default avatarJaehoon Chung <jh80.chung@samsung.com>
    Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
    935a665e
dw_mmc.h 9.87 KB