Re: [PATCH] mmc: sdhci-msm: Do not reset the controller if no card in the slot

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

 



On 18/07/16 20:46, Bjorn Andersson wrote:
> On Fri 24 Jun 09:24 PDT 2016, Georgi Djakov wrote:
> 
>> The controller does not clear the "reset bit" when it is reset without
>> a card in the slot. Because of this, the following error message is seen
>> while booting with no plugged SD card.
>>
>> mmc1: Reset 0x1 never completed.
>>
>> Add the SDHCI_QUIRK_NO_CARD_NO_RESET quirk to avoid this.
>>
>> Signed-off-by: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
>> Signed-off-by: Georgi Djakov <georgi.djakov@xxxxxxxxxx>
> 
> Tested-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>

Be aware that SDHCI_QUIRK_NO_CARD_NO_RESET is not well implemented.  It can
result in ->get_cd() being called under spinlock which could be a problem if
a card detect GPIO is used and might sleep.  On the other hand, if you are
not using a card detect GPIO then it shouldn't be a problem.

Otherwise:

Acked-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>

> 
> Regards,
> Bjorn
> 
>> ---
>>  drivers/mmc/host/sdhci-msm.c |    1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c
>> index ac5700233e12..c613137ae91e 100644
>> --- a/drivers/mmc/host/sdhci-msm.c
>> +++ b/drivers/mmc/host/sdhci-msm.c
>> @@ -477,6 +477,7 @@ static const struct sdhci_ops sdhci_msm_ops = {
>>  
>>  static const struct sdhci_pltfm_data sdhci_msm_pdata = {
>>  	.quirks = SDHCI_QUIRK_BROKEN_CARD_DETECTION |
>> +		  SDHCI_QUIRK_NO_CARD_NO_RESET |
>>  		  SDHCI_QUIRK_SINGLE_POWER_WRITE,
>>  	.ops = &sdhci_msm_ops,
>>  };
> 

--
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