• Daniel Drake's avatar
    mmc: sdhci: refine non-removable card checking for card detection · 87b87a3f
    Daniel Drake authored
    Commit c79396c1 ("mmc: sdhci: prevent card detection activity
    for non-removable cards") disables card detection where the cards
    are marked as non-removable.
    
    This makes sense, but the implementation detail of calling
    mmc_card_is_removable() causes some problems, because
    mmc_card_is_removable() is overloaded with CONFIG_MMC_UNSAFE_RESUME
    semantics.
    
    In the OLPC XO case, we need CONFIG_MMC_UNSAFE_RESUME because our root
    filesystem is stored on SD, but we also have external SD card slots
    where we want automatic card detection.
    
    Refine the check to only apply to hosts marked as MMC_CAP_NONREMOVABLE,
    which is defined to mean that the card is *really* nonremovable. This
    could be revisited in future if we find a way to improve
    CONFIG_MMC_UNSAFE_RESUME semantics.
    Signed-off-by: default avatarDaniel Drake <dsd@laptop.org>
    Acked-by: default avatarChuanxiao Dong <chuanxiao.dong@intel.com>
    [stable@: please apply to 3.3-stable]
    Cc: stable <stable@vger.kernel.org>
    Signed-off-by: default avatarChris Ball <cjb@laptop.org>
    87b87a3f
sdhci.c 79.7 KB