Messages in this thread | | | Subject | Re: [PATCH v2 4/4] mmc: sdhci-msm: Add sdhci msm register write APIs which wait for pwr irq | From | Georgi Djakov <> | Date | Wed, 30 May 2018 18:57:56 +0300 |
| |
Hi Vijay,
On 05/30/2018 10:11 AM, Vijay Viswanath wrote: > Hi Georgi, > > Thanks for testing the patch on 8096 and pointing out this issue. > The issue is coming because, when card is removed, the HOST_CONTROL2 > register is retaining the 1.8V Signalling enable bit till SDHCI reset > happens after a new card is inserted. > > Adding the change you suggested can avoid this wait, but I feel a better > solution is to clear the 1.8V signalling bit when the card is removed. > When a new card is inserted, we shouldn't be keeping the 1.8V bit set > until we send cmd11 to the SD card. A new SD card should start with 3V. > > One solution is to explicitly clear the HOST_CONTROL2 register when card > is removed. > > Other way is to revert the commit: > 9718f84b85396e090ca42fafa730410d286d61e3 "mmc: sdhci-msm: Do not reset > the controller if no card in the slot" > > The sdhci-msm doesn't require "SDHCI_QUIRK_NO_CARD_NO_RESET". The issue > which above commit is trying to avoid is fixed by the pwr-irq patches. > Resetting the controller will clear the HOST_CONTROL2 register and avoid > this issue. > > Can you please try this ? I tested reverting the QUIRK on two platforms: > db410c(8916) and sdm845. SD card insert/remove worked fine after that > and I didn't get any "Reset 0x1 never completed" error during card > insert/remove or shutdown.
Thank you! I have submitted a patch to remove the quirk and tested it on db410c and db820c.
BR, Georgi
| |