Message ID | 1426261429-31883-5-git-send-email-ulf.hansson@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/drivers/base/platform.c b/drivers/base/platform.c index 9421fed..d35fef1 100644 --- a/drivers/base/platform.c +++ b/drivers/base/platform.c @@ -509,7 +509,14 @@ static int platform_drv_probe(struct device *_dev) ret = dev_pm_domain_attach(_dev, true); if (ret != -EPROBE_DEFER) { + ret = dev_pm_domain_get(_dev->pm_domain); + if (ret) { + dev_pm_domain_detach(_dev, true); + return ret; + } + ret = drv->probe(dev); + dev_pm_domain_put(_dev->pm_domain); if (ret) dev_pm_domain_detach(_dev, true); }
To sucessfully probe some devices their corresponding PM domains may need to be powered. Use the dev_pm_domain_get|put() APIs, to control the behavior of the PM domain. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> --- drivers/base/platform.c | 7 +++++++ 1 file changed, 7 insertions(+)