diff options
author | Anton Altaparmakov <aia21@cantab.net> | 2005-10-30 21:00:04 +0000 |
---|---|---|
committer | Anton Altaparmakov <aia21@cantab.net> | 2005-10-30 21:00:04 +0000 |
commit | 07b188ab773e183871e57b33ae37bf635c9f12ba (patch) | |
tree | 311df8a0dd12fb7bd3e9b5b1a5ca500f0428d679 /include/linux/pm.h | |
parent | 47c564e10f219f867bdb49225972749a43485a47 (diff) | |
parent | 9f75e1eff3edb2bb07349b94c28f4f2a6c66ca43 (diff) | |
download | op-kernel-dev-07b188ab773e183871e57b33ae37bf635c9f12ba.zip op-kernel-dev-07b188ab773e183871e57b33ae37bf635c9f12ba.tar.gz |
Merge branch 'master' of /usr/src/ntfs-2.6/
Diffstat (limited to 'include/linux/pm.h')
-rw-r--r-- | include/linux/pm.h | 40 |
1 files changed, 38 insertions, 2 deletions
diff --git a/include/linux/pm.h b/include/linux/pm.h index 5cfb076..c61d5de 100644 --- a/include/linux/pm.h +++ b/include/linux/pm.h @@ -219,10 +219,11 @@ typedef struct pm_message { struct dev_pm_info { pm_message_t power_state; + unsigned can_wakeup:1; #ifdef CONFIG_PM + unsigned should_wakeup:1; pm_message_t prev_state; void * saved_state; - atomic_t pm_users; struct device * pm_parent; struct list_head entry; #endif @@ -236,13 +237,48 @@ extern void device_resume(void); #ifdef CONFIG_PM extern int device_suspend(pm_message_t state); -#else + +#define device_set_wakeup_enable(dev,val) \ + ((dev)->power.should_wakeup = !!(val)) +#define device_may_wakeup(dev) \ + (device_can_wakeup(dev) && (dev)->power.should_wakeup) + +extern int dpm_runtime_suspend(struct device *, pm_message_t); +extern void dpm_runtime_resume(struct device *); + +#else /* !CONFIG_PM */ + static inline int device_suspend(pm_message_t state) { return 0; } + +#define device_set_wakeup_enable(dev,val) do{}while(0) +#define device_may_wakeup(dev) (0) + +static inline int dpm_runtime_suspend(struct device * dev, pm_message_t state) +{ + return 0; +} + +static inline void dpm_runtime_resume(struct device * dev) +{ + +} + #endif +/* changes to device_may_wakeup take effect on the next pm state change. + * by default, devices should wakeup if they can. + */ +#define device_can_wakeup(dev) \ + ((dev)->power.can_wakeup) +#define device_init_wakeup(dev,val) \ + do { \ + device_can_wakeup(dev) = !!(val); \ + device_set_wakeup_enable(dev,val); \ + } while(0) + #endif /* __KERNEL__ */ #endif /* _LINUX_PM_H */ |