]>
Commit | Line | Data |
---|---|---|
5e928f77 RW |
1 | #ifdef CONFIG_PM_RUNTIME |
2 | ||
3 | extern void pm_runtime_init(struct device *dev); | |
4 | extern void pm_runtime_remove(struct device *dev); | |
5 | ||
6 | #else /* !CONFIG_PM_RUNTIME */ | |
7 | ||
8 | static inline void pm_runtime_init(struct device *dev) {} | |
9 | static inline void pm_runtime_remove(struct device *dev) {} | |
10 | ||
11 | #endif /* !CONFIG_PM_RUNTIME */ | |
3b98aeaf | 12 | |
296699de | 13 | #ifdef CONFIG_PM_SLEEP |
1da177e4 | 14 | |
0e06b4a8 RW |
15 | /* kernel/power/main.c */ |
16 | extern int pm_async_enabled; | |
1da177e4 | 17 | |
0e06b4a8 | 18 | /* drivers/base/power/main.c */ |
1eede070 | 19 | extern struct list_head dpm_list; /* The active device list */ |
1da177e4 | 20 | |
dec13c15 | 21 | static inline struct device *to_device(struct list_head *entry) |
1da177e4 | 22 | { |
cd59abfc | 23 | return container_of(entry, struct device, power.entry); |
1da177e4 LT |
24 | } |
25 | ||
5e928f77 | 26 | extern void device_pm_init(struct device *dev); |
3b98aeaf | 27 | extern void device_pm_add(struct device *); |
1da177e4 | 28 | extern void device_pm_remove(struct device *); |
ffa6a705 CH |
29 | extern void device_pm_move_before(struct device *, struct device *); |
30 | extern void device_pm_move_after(struct device *, struct device *); | |
31 | extern void device_pm_move_last(struct device *); | |
1da177e4 | 32 | |
5e928f77 RW |
33 | #else /* !CONFIG_PM_SLEEP */ |
34 | ||
35 | static inline void device_pm_init(struct device *dev) | |
36 | { | |
074037ec | 37 | spin_lock_init(&dev->power.lock); |
5e928f77 RW |
38 | pm_runtime_init(dev); |
39 | } | |
40 | ||
41 | static inline void device_pm_remove(struct device *dev) | |
42 | { | |
43 | pm_runtime_remove(dev); | |
44 | } | |
dec13c15 | 45 | |
3b98aeaf | 46 | static inline void device_pm_add(struct device *dev) {} |
ffa6a705 CH |
47 | static inline void device_pm_move_before(struct device *deva, |
48 | struct device *devb) {} | |
49 | static inline void device_pm_move_after(struct device *deva, | |
50 | struct device *devb) {} | |
51 | static inline void device_pm_move_last(struct device *dev) {} | |
775b64d2 | 52 | |
5e928f77 | 53 | #endif /* !CONFIG_PM_SLEEP */ |
dec13c15 DD |
54 | |
55 | #ifdef CONFIG_PM | |
56 | ||
1da177e4 LT |
57 | /* |
58 | * sysfs.c | |
59 | */ | |
60 | ||
cb8f51bd RW |
61 | extern int dpm_sysfs_add(struct device *dev); |
62 | extern void dpm_sysfs_remove(struct device *dev); | |
63 | extern void rpm_sysfs_remove(struct device *dev); | |
64 | extern int wakeup_sysfs_add(struct device *dev); | |
65 | extern void wakeup_sysfs_remove(struct device *dev); | |
1da177e4 | 66 | |
dec13c15 | 67 | #else /* CONFIG_PM */ |
1da177e4 | 68 | |
cb8f51bd RW |
69 | static inline int dpm_sysfs_add(struct device *dev) { return 0; } |
70 | static inline void dpm_sysfs_remove(struct device *dev) {} | |
71 | static inline void rpm_sysfs_remove(struct device *dev) {} | |
72 | static inline int wakeup_sysfs_add(struct device *dev) { return 0; } | |
73 | static inline void wakeup_sysfs_remove(struct device *dev) {} | |
1da177e4 | 74 | |
1da177e4 | 75 | #endif |