Message ID | 1418986459-13443-1-git-send-email-ulf.hansson@linaro.org |
---|---|
State | New |
Headers | show |
On 19 December 2014 at 11:59, Russell King - ARM Linux <linux@arm.linux.org.uk> wrote: > On Fri, Dec 19, 2014 at 11:54:19AM +0100, Ulf Hansson wrote: >> Previously the pm_runtime_put() caused the device to be runtime PM >> suspended, but then immediately being resumed when we add the host. >> >> Prevent this unnecessary runtime PM suspend/resume cycle during >> ->probe() by using the pm_runtime_put_noidle() variant instead. >> >> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> >> --- >> >> Changes in v2: >> Move pm_runtime_put_noidle() after mmc_add_host(). >> >> --- >> drivers/mmc/host/mmci.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c >> index 8232e9a..d2bbd25 100644 >> --- a/drivers/mmc/host/mmci.c >> +++ b/drivers/mmc/host/mmci.c >> @@ -1739,10 +1739,10 @@ static int mmci_probe(struct amba_device *dev, >> >> pm_runtime_set_autosuspend_delay(&dev->dev, 50); >> pm_runtime_use_autosuspend(&dev->dev); >> - pm_runtime_put(&dev->dev); >> >> mmc_add_host(mmc); >> >> + pm_runtime_put_noidle(&dev->dev); > > I think you'd want this to be _put() in this case. It doesn't matter which variant of _put*(). The driver core will invoke pm_request_idle() after really_probe() is done. Kind regards Uffe -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c index 8232e9a..d2bbd25 100644 --- a/drivers/mmc/host/mmci.c +++ b/drivers/mmc/host/mmci.c @@ -1739,10 +1739,10 @@ static int mmci_probe(struct amba_device *dev, pm_runtime_set_autosuspend_delay(&dev->dev, 50); pm_runtime_use_autosuspend(&dev->dev); - pm_runtime_put(&dev->dev); mmc_add_host(mmc); + pm_runtime_put_noidle(&dev->dev); return 0; clk_disable:
Previously the pm_runtime_put() caused the device to be runtime PM suspended, but then immediately being resumed when we add the host. Prevent this unnecessary runtime PM suspend/resume cycle during ->probe() by using the pm_runtime_put_noidle() variant instead. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> --- Changes in v2: Move pm_runtime_put_noidle() after mmc_add_host(). --- drivers/mmc/host/mmci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)