Re: [PATCH] sdhci: poll for card even when card is logically unremovable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Daniel,

When enabled MMC_UNSAFE_RESUME, it assumed that card didn't remove
during suspend/resume.
If you need to remove the card during suspend/resume,
why enable MMC_UNSAFE_RESUME?

Best Regards,
Jaehoon Chung

On 07/06/2012 06:06 AM, Daniel Drake wrote:

> The Marvell CaFe is now marked as having bad card detection to fix
> a problem during system resume.
> 
> Now on the OLPC XO-1 we are facing the issue that the card is marked
> as logically unremovable (via MMC_UNSAFE_RESUME), which means that
> mmc_card_is_removable considers the card non-removable. The existing
> code logic decides not to poll for card presence in this case, and
> card detection is also disabled because of the quirk being set.
> This means that no SD cards are detected when inserted after boot.
> 
> Refine the logic to enable card presence polling in the case when
> a card is logically unremovable, only avoiding the poll in the case
> when the card is physically non-removable (denoted with
> MMC_CAP_NONREMOVABLE).
> 
> Signed-off-by: Daniel Drake <dsd@xxxxxxxxxx>
> ---
>  drivers/mmc/host/sdhci.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
> index f4b8b4d..dd71a05 100644
> --- a/drivers/mmc/host/sdhci.c
> +++ b/drivers/mmc/host/sdhci.c
> @@ -2779,7 +2779,7 @@ int sdhci_add_host(struct sdhci_host *host)
>  		mmc->caps |= MMC_CAP_SD_HIGHSPEED | MMC_CAP_MMC_HIGHSPEED;
>  
>  	if ((host->quirks & SDHCI_QUIRK_BROKEN_CARD_DETECTION) &&
> -	    mmc_card_is_removable(mmc))
> +	    !(host->mmc->caps & MMC_CAP_NONREMOVABLE))
>  		mmc->caps |= MMC_CAP_NEEDS_POLL;
>  
>  	/* Any UHS-I mode in caps implies SDR12 and SDR25 support. */


--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux