On 22 September 2014 12:09, Roger Tseng <rogerable@xxxxxxxxxxx> wrote: > On Thu, 2014-09-18 at 23:14 +0200, Ulf Hansson wrote: >> [...] >> >> >> >> >> In that case, don't forget to enable MMC_CAP2_FULL_PWR_CYCLE. >> >> >> >> > >> >> > if MMC_CAP2_NO_PRESCAN_POWERUP enable, will call mmc_power_off() at start, >> >> > then it will check ios.power_mode, but the state is MMC_POWER_OFF and just >> >> > return. >> >> >> >> Uhh, that's right! So, I wonder why we invokes mmc_power_off() from >> >> that path at all. >> >> >> >> Hmm, I think we should change the behavior in mmc_start_host(), like below: >> >> 1) Add a "MMC_POWER_UNDEFINED" state which is what the power state >> >> should be assigned to at allocation. >> >> 2 ) From mmc_start_host(), invoke mmc_power_off() when >> >> MMC_CAP2_NO_PRESCAN_POWERUP and MMC_CAP2_FULL_PWR_CYCLE is set. >> >> >> >> Would that work? >> > Yes. I have confirmed this by following changes. The MMC_POWER_UNDEFINED >> > designation in mmc_start_host() will eventually cause a power-off >> > operation. >> > >> > But I wonder if we need to additionally check MMC_CAP2_FULL_PWR_CYCLE >> > before calling mmc_power_off()? >> >> The intent from my side was to keep the current behaviour for those >> that already used MMC_CAP2_NO_PRESCAN_POWERUP, but it's s not a big >> deal. >> > > I checked the log and found the commit that invokes mmc_power_off(): > a08b17be8b984a7c51cd5a480cd977363df353f9 > 0d3e3350d5871c53464be4c92d57198744247005 > (https://www.mail-archive.com/linux-mmc@xxxxxxxxxxxxxxx/msg19638.html ) > > The proposed change might bring back some delay since invoking > mmc_power_off() in mmc_start_host() is more than NOP now and triggers > real power-off and re-init in sdhci. Actually the above commits was added due to the below commit: fa5501890d8974301042e0202d342a6cbe8609f4 But the commits you refer to, didn't bring back the old behaviour, which I think was the intent. Instead we added a NOP call to mmc_power_off() from mmc_start_host(). We have few options on how to go forward, but let's loop in Adrian Hunter first, since he might be able to comment on this as well. Kind regards Uffe _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel