Lines Matching full:device

3  * pm_runtime.h - Device run-time power management helper functions.
11 #include <linux/device.h>
67 extern int pm_generic_runtime_suspend(struct device *dev);
68 extern int pm_generic_runtime_resume(struct device *dev);
69 extern int pm_runtime_force_suspend(struct device *dev);
70 extern int pm_runtime_force_resume(struct device *dev);
72 extern int __pm_runtime_idle(struct device *dev, int rpmflags);
73 extern int __pm_runtime_suspend(struct device *dev, int rpmflags);
74 extern int __pm_runtime_resume(struct device *dev, int rpmflags);
75 extern int pm_runtime_get_if_active(struct device *dev, bool ign_usage_count);
76 extern int pm_schedule_suspend(struct device *dev, unsigned int delay);
77 extern int __pm_runtime_set_status(struct device *dev, unsigned int status);
78 extern int pm_runtime_barrier(struct device *dev);
79 extern void pm_runtime_enable(struct device *dev);
80 extern void __pm_runtime_disable(struct device *dev, bool check_resume);
81 extern void pm_runtime_allow(struct device *dev);
82 extern void pm_runtime_forbid(struct device *dev);
83 extern void pm_runtime_no_callbacks(struct device *dev);
84 extern void pm_runtime_irq_safe(struct device *dev);
85 extern void __pm_runtime_use_autosuspend(struct device *dev, bool use);
86 extern void pm_runtime_set_autosuspend_delay(struct device *dev, int delay);
87 extern u64 pm_runtime_autosuspend_expiration(struct device *dev);
88 extern void pm_runtime_set_memalloc_noio(struct device *dev, bool enable);
89 extern void pm_runtime_get_suppliers(struct device *dev);
90 extern void pm_runtime_put_suppliers(struct device *dev);
91 extern void pm_runtime_new_link(struct device *dev);
95 extern int devm_pm_runtime_enable(struct device *dev);
99 * @dev: Target device.
104 static inline int pm_runtime_get_if_in_use(struct device *dev) in pm_runtime_get_if_in_use()
111 * @dev: Target device.
118 static inline void pm_suspend_ignore_children(struct device *dev, bool enable) in pm_suspend_ignore_children()
124 * pm_runtime_get_noresume - Bump up runtime PM usage counter of a device.
125 * @dev: Target device.
127 static inline void pm_runtime_get_noresume(struct device *dev) in pm_runtime_get_noresume()
133 * pm_runtime_put_noidle - Drop runtime PM usage counter of a device.
134 * @dev: Target device.
138 static inline void pm_runtime_put_noidle(struct device *dev) in pm_runtime_put_noidle()
144 * pm_runtime_suspended - Check whether or not a device is runtime-suspended.
145 * @dev: Target device.
155 static inline bool pm_runtime_suspended(struct device *dev) in pm_runtime_suspended()
162 * pm_runtime_active - Check whether or not a device is runtime-active.
163 * @dev: Target device.
173 static inline bool pm_runtime_active(struct device *dev) in pm_runtime_active()
181 * @dev: Target device.
190 static inline bool pm_runtime_status_suspended(struct device *dev) in pm_runtime_status_suspended()
197 * @dev: Target device.
205 static inline bool pm_runtime_enabled(struct device *dev) in pm_runtime_enabled()
212 * @dev: Target device.
214 * Return %true if @dev is a special device without runtime PM callbacks or
217 static inline bool pm_runtime_has_no_callbacks(struct device *dev) in pm_runtime_has_no_callbacks()
223 * pm_runtime_mark_last_busy - Update the last access time of a device.
224 * @dev: Target device.
229 static inline void pm_runtime_mark_last_busy(struct device *dev) in pm_runtime_mark_last_busy()
236 * @dev: Target device.
238 * Return %true if @dev has been marked as an "IRQ-safe" device (with respect
242 static inline bool pm_runtime_is_irq_safe(struct device *dev) in pm_runtime_is_irq_safe()
247 extern u64 pm_runtime_suspended_time(struct device *dev);
253 static inline int pm_generic_runtime_suspend(struct device *dev) { return 0; } in pm_generic_runtime_suspend()
254 static inline int pm_generic_runtime_resume(struct device *dev) { return 0; } in pm_generic_runtime_resume()
255 static inline int pm_runtime_force_suspend(struct device *dev) { return 0; } in pm_runtime_force_suspend()
256 static inline int pm_runtime_force_resume(struct device *dev) { return 0; } in pm_runtime_force_resume()
258 static inline int __pm_runtime_idle(struct device *dev, int rpmflags) in __pm_runtime_idle()
262 static inline int __pm_runtime_suspend(struct device *dev, int rpmflags) in __pm_runtime_suspend()
266 static inline int __pm_runtime_resume(struct device *dev, int rpmflags) in __pm_runtime_resume()
270 static inline int pm_schedule_suspend(struct device *dev, unsigned int delay) in pm_schedule_suspend()
274 static inline int pm_runtime_get_if_in_use(struct device *dev) in pm_runtime_get_if_in_use()
278 static inline int pm_runtime_get_if_active(struct device *dev, in pm_runtime_get_if_active()
283 static inline int __pm_runtime_set_status(struct device *dev, in __pm_runtime_set_status()
285 static inline int pm_runtime_barrier(struct device *dev) { return 0; } in pm_runtime_barrier()
286 static inline void pm_runtime_enable(struct device *dev) {} in pm_runtime_enable()
287 static inline void __pm_runtime_disable(struct device *dev, bool c) {} in __pm_runtime_disable()
288 static inline void pm_runtime_allow(struct device *dev) {} in pm_runtime_allow()
289 static inline void pm_runtime_forbid(struct device *dev) {} in pm_runtime_forbid()
291 static inline int devm_pm_runtime_enable(struct device *dev) { return 0; } in devm_pm_runtime_enable()
293 static inline void pm_suspend_ignore_children(struct device *dev, bool enable) {} in pm_suspend_ignore_children()
294 static inline void pm_runtime_get_noresume(struct device *dev) {} in pm_runtime_get_noresume()
295 static inline void pm_runtime_put_noidle(struct device *dev) {} in pm_runtime_put_noidle()
296 static inline bool pm_runtime_suspended(struct device *dev) { return false; } in pm_runtime_suspended()
297 static inline bool pm_runtime_active(struct device *dev) { return true; } in pm_runtime_active()
298 static inline bool pm_runtime_status_suspended(struct device *dev) { return false; } in pm_runtime_status_suspended()
299 static inline bool pm_runtime_enabled(struct device *dev) { return false; } in pm_runtime_enabled()
301 static inline void pm_runtime_no_callbacks(struct device *dev) {} in pm_runtime_no_callbacks()
302 static inline void pm_runtime_irq_safe(struct device *dev) {} in pm_runtime_irq_safe()
303 static inline bool pm_runtime_is_irq_safe(struct device *dev) { return false; } in pm_runtime_is_irq_safe()
305 static inline bool pm_runtime_has_no_callbacks(struct device *dev) { return false; } in pm_runtime_has_no_callbacks()
306 static inline void pm_runtime_mark_last_busy(struct device *dev) {} in pm_runtime_mark_last_busy()
307 static inline void __pm_runtime_use_autosuspend(struct device *dev, in __pm_runtime_use_autosuspend()
309 static inline void pm_runtime_set_autosuspend_delay(struct device *dev, in pm_runtime_set_autosuspend_delay()
312 struct device *dev) { return 0; } in pm_runtime_autosuspend_expiration()
313 static inline void pm_runtime_set_memalloc_noio(struct device *dev, in pm_runtime_set_memalloc_noio()
315 static inline void pm_runtime_get_suppliers(struct device *dev) {} in pm_runtime_get_suppliers()
316 static inline void pm_runtime_put_suppliers(struct device *dev) {} in pm_runtime_put_suppliers()
317 static inline void pm_runtime_new_link(struct device *dev) {} in pm_runtime_new_link()
324 * pm_runtime_idle - Conditionally set up autosuspend of a device or suspend it.
325 * @dev: Target device.
331 static inline int pm_runtime_idle(struct device *dev) in pm_runtime_idle()
337 * pm_runtime_suspend - Suspend a device synchronously.
338 * @dev: Target device.
340 static inline int pm_runtime_suspend(struct device *dev) in pm_runtime_suspend()
346 * pm_runtime_autosuspend - Set up autosuspend of a device or suspend it.
347 * @dev: Target device.
352 static inline int pm_runtime_autosuspend(struct device *dev) in pm_runtime_autosuspend()
358 * pm_runtime_resume - Resume a device synchronously.
359 * @dev: Target device.
361 static inline int pm_runtime_resume(struct device *dev) in pm_runtime_resume()
367 * pm_request_idle - Queue up "idle check" execution for a device.
368 * @dev: Target device.
373 static inline int pm_request_idle(struct device *dev) in pm_request_idle()
379 * pm_request_resume - Queue up runtime-resume of a device.
380 * @dev: Target device.
382 static inline int pm_request_resume(struct device *dev) in pm_request_resume()
388 * pm_request_autosuspend - Queue up autosuspend of a device.
389 * @dev: Target device.
394 static inline int pm_request_autosuspend(struct device *dev) in pm_request_autosuspend()
400 * pm_runtime_get - Bump up usage counter and queue up resume of a device.
401 * @dev: Target device.
406 static inline int pm_runtime_get(struct device *dev) in pm_runtime_get()
412 * pm_runtime_get_sync - Bump up usage counter of a device and resume it.
413 * @dev: Target device.
425 static inline int pm_runtime_get_sync(struct device *dev) in pm_runtime_get_sync()
431 * pm_runtime_resume_and_get - Bump up usage counter of a device and resume it.
432 * @dev: Target device.
438 static inline int pm_runtime_resume_and_get(struct device *dev) in pm_runtime_resume_and_get()
452 * pm_runtime_put - Drop device usage counter and queue up "idle check" if 0.
453 * @dev: Target device.
458 static inline int pm_runtime_put(struct device *dev) in pm_runtime_put()
464 * pm_runtime_put_autosuspend - Drop device usage counter and queue autosuspend if 0.
465 * @dev: Target device.
470 static inline int pm_runtime_put_autosuspend(struct device *dev) in pm_runtime_put_autosuspend()
477 * pm_runtime_put_sync - Drop device usage counter and run "idle check" if 0.
478 * @dev: Target device.
489 static inline int pm_runtime_put_sync(struct device *dev) in pm_runtime_put_sync()
495 * pm_runtime_put_sync_suspend - Drop device usage counter and suspend if 0.
496 * @dev: Target device.
505 static inline int pm_runtime_put_sync_suspend(struct device *dev) in pm_runtime_put_sync_suspend()
511 * pm_runtime_put_sync_autosuspend - Drop device usage counter and autosuspend if 0.
512 * @dev: Target device.
522 static inline int pm_runtime_put_sync_autosuspend(struct device *dev) in pm_runtime_put_sync_autosuspend()
529 * @dev: Target device.
536 static inline int pm_runtime_set_active(struct device *dev) in pm_runtime_set_active()
543 * @dev: Target device.
550 static inline int pm_runtime_set_suspended(struct device *dev) in pm_runtime_set_suspended()
556 * pm_runtime_disable - Disable runtime PM for a device.
557 * @dev: Target device.
565 static inline void pm_runtime_disable(struct device *dev) in pm_runtime_disable()
571 * pm_runtime_use_autosuspend - Allow autosuspend to be used for a device.
572 * @dev: Target device.
582 static inline void pm_runtime_use_autosuspend(struct device *dev) in pm_runtime_use_autosuspend()
589 * @dev: Target device.
595 static inline void pm_runtime_dont_use_autosuspend(struct device *dev) in pm_runtime_dont_use_autosuspend()