aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/base/power/main.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c
index 30f0ceebd36c..df04cb4a3611 100644
--- a/drivers/base/power/main.c
+++ b/drivers/base/power/main.c
@@ -372,14 +372,11 @@ static int device_resume_noirq(struct device *dev, pm_message_t state)
372 TRACE_DEVICE(dev); 372 TRACE_DEVICE(dev);
373 TRACE_RESUME(0); 373 TRACE_RESUME(0);
374 374
375 if (!dev->bus) 375 if (dev->bus && dev->bus->pm) {
376 goto End;
377
378 if (dev->bus->pm) {
379 pm_dev_dbg(dev, state, "EARLY "); 376 pm_dev_dbg(dev, state, "EARLY ");
380 error = pm_noirq_op(dev, dev->bus->pm, state); 377 error = pm_noirq_op(dev, dev->bus->pm, state);
381 } 378 }
382 End: 379
383 TRACE_RESUME(error); 380 TRACE_RESUME(error);
384 return error; 381 return error;
385} 382}
@@ -615,10 +612,7 @@ static int device_suspend_noirq(struct device *dev, pm_message_t state)
615{ 612{
616 int error = 0; 613 int error = 0;
617 614
618 if (!dev->bus) 615 if (dev->bus && dev->bus->pm) {
619 return 0;
620
621 if (dev->bus->pm) {
622 pm_dev_dbg(dev, state, "LATE "); 616 pm_dev_dbg(dev, state, "LATE ");
623 error = pm_noirq_op(dev, dev->bus->pm, state); 617 error = pm_noirq_op(dev, dev->bus->pm, state);
624 } 618 }