• Adrian Hunter's avatar
    mmc: sdhci: Fix sdhci_card_busy() · e613cc47
    Adrian Hunter authored
    host->card_busy() was introduced for SD voltage switching which checks all
    4 data lines.
    
    Increasingly, host->card_busy is being used to poll the the busy signal
    which is only data line 0 (DAT[0]).
    
    The current logic in sdhci_card_busy() does not work in that case because
    it returns false if any of the data lines is high.  It also ignores
    possibilities:
    	- data lines 1-3 are not connected and could show at any level
    	- data lines 1-2 can be used by SDIO for other purposes
    
    According to the SD specification, it is OK to check any of the data lines
    for voltage switching, so change to use DAT[0] only.
    Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
    Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
    e613cc47
sdhci.c 91 KB