Lines Matching refs:state
205 int error, pm_message_t state, char *info) in initcall_debug_report() argument
249 static pm_callback_t pm_op(const struct dev_pm_ops *ops, pm_message_t state) in pm_op() argument
251 switch (state.event) { in pm_op()
284 pm_message_t state) in pm_late_early_op() argument
286 switch (state.event) { in pm_late_early_op()
318 static pm_callback_t pm_noirq_op(const struct dev_pm_ops *ops, pm_message_t state) in pm_noirq_op() argument
320 switch (state.event) { in pm_noirq_op()
344 static void pm_dev_dbg(struct device *dev, pm_message_t state, char *info) in pm_dev_dbg() argument
346 dev_dbg(dev, "%s%s%s\n", info, pm_verb(state.event), in pm_dev_dbg()
347 ((state.event & PM_EVENT_SLEEP) && device_may_wakeup(dev)) ? in pm_dev_dbg()
351 static void pm_dev_err(struct device *dev, pm_message_t state, char *info, in pm_dev_err() argument
355 dev_name(dev), pm_verb(state.event), info, error); in pm_dev_err()
358 static void dpm_show_time(ktime_t starttime, pm_message_t state, char *info) in dpm_show_time() argument
371 info ?: "", info ? " " : "", pm_verb(state.event), in dpm_show_time()
376 pm_message_t state, char *info) in dpm_run_callback() argument
386 pm_dev_dbg(dev, state, info); in dpm_run_callback()
387 trace_device_pm_callback_start(dev, info, state.event); in dpm_run_callback()
392 initcall_debug_report(dev, calltime, error, state, info); in dpm_run_callback()
473 static int device_resume_noirq(struct device *dev, pm_message_t state, bool async) in device_resume_noirq() argument
492 callback = pm_noirq_op(&dev->pm_domain->ops, state); in device_resume_noirq()
495 callback = pm_noirq_op(dev->type->pm, state); in device_resume_noirq()
498 callback = pm_noirq_op(dev->class->pm, state); in device_resume_noirq()
501 callback = pm_noirq_op(dev->bus->pm, state); in device_resume_noirq()
506 callback = pm_noirq_op(dev->driver->pm, state); in device_resume_noirq()
509 error = dpm_run_callback(callback, dev, state, info); in device_resume_noirq()
543 void dpm_resume_noirq(pm_message_t state) in dpm_resume_noirq() argument
548 trace_suspend_resume(TPS("dpm_resume_noirq"), state.event, true); in dpm_resume_noirq()
550 pm_transition = state; in dpm_resume_noirq()
574 error = device_resume_noirq(dev, state, false); in dpm_resume_noirq()
579 pm_dev_err(dev, state, " noirq", error); in dpm_resume_noirq()
588 dpm_show_time(starttime, state, "noirq"); in dpm_resume_noirq()
591 trace_suspend_resume(TPS("dpm_resume_noirq"), state.event, false); in dpm_resume_noirq()
602 static int device_resume_early(struct device *dev, pm_message_t state, bool async) in device_resume_early() argument
621 callback = pm_late_early_op(&dev->pm_domain->ops, state); in device_resume_early()
624 callback = pm_late_early_op(dev->type->pm, state); in device_resume_early()
627 callback = pm_late_early_op(dev->class->pm, state); in device_resume_early()
630 callback = pm_late_early_op(dev->bus->pm, state); in device_resume_early()
635 callback = pm_late_early_op(dev->driver->pm, state); in device_resume_early()
638 error = dpm_run_callback(callback, dev, state, info); in device_resume_early()
665 void dpm_resume_early(pm_message_t state) in dpm_resume_early() argument
670 trace_suspend_resume(TPS("dpm_resume_early"), state.event, true); in dpm_resume_early()
672 pm_transition = state; in dpm_resume_early()
696 error = device_resume_early(dev, state, false); in dpm_resume_early()
701 pm_dev_err(dev, state, " early", error); in dpm_resume_early()
709 dpm_show_time(starttime, state, "early"); in dpm_resume_early()
710 trace_suspend_resume(TPS("dpm_resume_early"), state.event, false); in dpm_resume_early()
717 void dpm_resume_start(pm_message_t state) in dpm_resume_start() argument
719 dpm_resume_noirq(state); in dpm_resume_start()
720 dpm_resume_early(state); in dpm_resume_start()
730 static int device_resume(struct device *dev, pm_message_t state, bool async) in device_resume() argument
764 callback = pm_op(&dev->pm_domain->ops, state); in device_resume()
770 callback = pm_op(dev->type->pm, state); in device_resume()
777 callback = pm_op(dev->class->pm, state); in device_resume()
789 callback = pm_op(dev->bus->pm, state); in device_resume()
800 callback = pm_op(dev->driver->pm, state); in device_resume()
804 error = dpm_run_callback(callback, dev, state, info); in device_resume()
837 void dpm_resume(pm_message_t state) in dpm_resume() argument
842 trace_suspend_resume(TPS("dpm_resume"), state.event, true); in dpm_resume()
846 pm_transition = state; in dpm_resume()
865 error = device_resume(dev, state, false); in dpm_resume()
870 pm_dev_err(dev, state, "", error); in dpm_resume()
881 dpm_show_time(starttime, state, NULL); in dpm_resume()
884 trace_suspend_resume(TPS("dpm_resume"), state.event, false); in dpm_resume()
892 static void device_complete(struct device *dev, pm_message_t state) in device_complete() argument
922 pm_dev_dbg(dev, state, info); in device_complete()
923 trace_device_pm_callback_start(dev, info, state.event); in device_complete()
940 void dpm_complete(pm_message_t state) in dpm_complete() argument
944 trace_suspend_resume(TPS("dpm_complete"), state.event, true); in dpm_complete()
957 device_complete(dev, state); in dpm_complete()
964 trace_suspend_resume(TPS("dpm_complete"), state.event, false); in dpm_complete()
974 void dpm_resume_end(pm_message_t state) in dpm_resume_end() argument
976 dpm_resume(state); in dpm_resume_end()
977 dpm_complete(state); in dpm_resume_end()
1014 static int __device_suspend_noirq(struct device *dev, pm_message_t state, bool async) in __device_suspend_noirq() argument
1038 callback = pm_noirq_op(&dev->pm_domain->ops, state); in __device_suspend_noirq()
1041 callback = pm_noirq_op(dev->type->pm, state); in __device_suspend_noirq()
1044 callback = pm_noirq_op(dev->class->pm, state); in __device_suspend_noirq()
1047 callback = pm_noirq_op(dev->bus->pm, state); in __device_suspend_noirq()
1052 callback = pm_noirq_op(dev->driver->pm, state); in __device_suspend_noirq()
1055 error = dpm_run_callback(callback, dev, state, info); in __device_suspend_noirq()
1100 int dpm_suspend_noirq(pm_message_t state) in dpm_suspend_noirq() argument
1105 trace_suspend_resume(TPS("dpm_suspend_noirq"), state.event, true); in dpm_suspend_noirq()
1109 pm_transition = state; in dpm_suspend_noirq()
1122 pm_dev_err(dev, state, " noirq", error); in dpm_suspend_noirq()
1142 dpm_resume_noirq(resume_event(state)); in dpm_suspend_noirq()
1144 dpm_show_time(starttime, state, "noirq"); in dpm_suspend_noirq()
1146 trace_suspend_resume(TPS("dpm_suspend_noirq"), state.event, false); in dpm_suspend_noirq()
1158 static int __device_suspend_late(struct device *dev, pm_message_t state, bool async) in __device_suspend_late() argument
1184 callback = pm_late_early_op(&dev->pm_domain->ops, state); in __device_suspend_late()
1187 callback = pm_late_early_op(dev->type->pm, state); in __device_suspend_late()
1190 callback = pm_late_early_op(dev->class->pm, state); in __device_suspend_late()
1193 callback = pm_late_early_op(dev->bus->pm, state); in __device_suspend_late()
1198 callback = pm_late_early_op(dev->driver->pm, state); in __device_suspend_late()
1201 error = dpm_run_callback(callback, dev, state, info); in __device_suspend_late()
1243 int dpm_suspend_late(pm_message_t state) in dpm_suspend_late() argument
1248 trace_suspend_resume(TPS("dpm_suspend_late"), state.event, true); in dpm_suspend_late()
1250 pm_transition = state; in dpm_suspend_late()
1266 pm_dev_err(dev, state, " late", error); in dpm_suspend_late()
1283 dpm_resume_early(resume_event(state)); in dpm_suspend_late()
1285 dpm_show_time(starttime, state, "late"); in dpm_suspend_late()
1287 trace_suspend_resume(TPS("dpm_suspend_late"), state.event, false); in dpm_suspend_late()
1295 int dpm_suspend_end(pm_message_t state) in dpm_suspend_end() argument
1297 int error = dpm_suspend_late(state); in dpm_suspend_end()
1301 error = dpm_suspend_noirq(state); in dpm_suspend_end()
1303 dpm_resume_early(resume_event(state)); in dpm_suspend_end()
1318 static int legacy_suspend(struct device *dev, pm_message_t state, in legacy_suspend() argument
1319 int (*cb)(struct device *dev, pm_message_t state), in legacy_suspend() argument
1327 trace_device_pm_callback_start(dev, info, state.event); in legacy_suspend()
1328 error = cb(dev, state); in legacy_suspend()
1332 initcall_debug_report(dev, calltime, error, state, info); in legacy_suspend()
1343 static int __device_suspend(struct device *dev, pm_message_t state, bool async) in __device_suspend() argument
1391 callback = pm_op(&dev->pm_domain->ops, state); in __device_suspend()
1397 callback = pm_op(dev->type->pm, state); in __device_suspend()
1404 callback = pm_op(dev->class->pm, state); in __device_suspend()
1407 pm_dev_dbg(dev, state, "legacy class "); in __device_suspend()
1408 error = legacy_suspend(dev, state, dev->class->suspend, in __device_suspend()
1417 callback = pm_op(dev->bus->pm, state); in __device_suspend()
1419 pm_dev_dbg(dev, state, "legacy bus "); in __device_suspend()
1420 error = legacy_suspend(dev, state, dev->bus->suspend, in __device_suspend()
1429 callback = pm_op(dev->driver->pm, state); in __device_suspend()
1432 error = dpm_run_callback(callback, dev, state, info); in __device_suspend()
1494 int dpm_suspend(pm_message_t state) in dpm_suspend() argument
1499 trace_suspend_resume(TPS("dpm_suspend"), state.event, true); in dpm_suspend()
1505 pm_transition = state; in dpm_suspend()
1517 pm_dev_err(dev, state, "", error); in dpm_suspend()
1536 dpm_show_time(starttime, state, NULL); in dpm_suspend()
1537 trace_suspend_resume(TPS("dpm_suspend"), state.event, false); in dpm_suspend()
1549 static int device_prepare(struct device *dev, pm_message_t state) in device_prepare() argument
1590 trace_device_pm_callback_start(dev, info, state.event); in device_prepare()
1610 dev->power.direct_complete = ret > 0 && state.event == PM_EVENT_SUSPEND; in device_prepare()
1621 int dpm_prepare(pm_message_t state) in dpm_prepare() argument
1625 trace_suspend_resume(TPS("dpm_prepare"), state.event, true); in dpm_prepare()
1635 error = device_prepare(dev, state); in dpm_prepare()
1656 trace_suspend_resume(TPS("dpm_prepare"), state.event, false); in dpm_prepare()
1667 int dpm_suspend_start(pm_message_t state) in dpm_suspend_start() argument
1671 error = dpm_prepare(state); in dpm_suspend_start()
1676 error = dpm_suspend(state); in dpm_suspend_start()