>> Another question is why to call pm_runtime_get/put when ios-clock changes?
>Is it based on
>> Linus Walleij's aggressive clock gating framework patch? Linus' patch doesn't
>gate SDIO cards.
>runtime_suspend of sdhci should *not* gate the sdio card. It should
>only gate the sdhci.
>An sdio bus inactive does not mean that the sdio card is inactive.
>(think wifi Idle, bluetooth idle, ethernet idle)
>
>We need to suspend the sdhci as soon as the sdio bus is inactive,
>which is what clock gating framework is trying to detect. 

If the wifi sdio card enters into some low power state which will not use the 
sdio bus, then the wifi driver can notify the sdhci host controller driver to 
power down the host controller only by calling the pm_runtime_put() and 
pm_suspend_ignore_children(). That is, it can be handled well in the current 
runtime pm framework. So, why we have to move to the 'aggressive clock gating 
framework'?

Also, I noticed that in the current 'aggressive clock gating framework' patch, 
the clock gating of SDIO card has been disabled (please reference code and 
comments of function mmc_host_may_gate_card() in that patch). That means, if 
discard the runtime PM framework and move to the aggressive clock gating 
framework, then all the SDIO cards (including the wifi sdio card) will fail to 
notify its host controller to enter into any low power mode.

Thanks.

Regards,
Yunpeng

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

Reply via email to