diff options
-rw-r--r-- | drivers/base/power/main.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c index a06ef91fbdb9..e4103d29a21a 100644 --- a/drivers/base/power/main.c +++ b/drivers/base/power/main.c @@ -928,6 +928,13 @@ static void device_resume(struct device *dev, pm_message_t state, bool async) goto Complete; if (dev->power.direct_complete) { + /* + * Allow new children to be added under the device after this + * point if it has no PM callbacks. + */ + if (dev->power.no_pm_callbacks) + dev->power.is_prepared = false; + /* Match the pm_runtime_disable() in device_suspend(). */ pm_runtime_enable(dev); goto Complete; |