]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - include/linux/pm.h
tty: Make vt's have a tty_port
[karo-tx-linux.git] / include / linux / pm.h
index 8e258c727971227b365b49d3a49e9e4efedccbcc..52e8c55ff314ce9ffa92b14b11ff5603a4e77eb6 100644 (file)
@@ -457,6 +457,7 @@ struct dev_pm_info {
 #ifdef CONFIG_PM_SLEEP
        struct list_head        entry;
        struct completion       completion;
+       unsigned long           wakeup_count;
 #endif
 #ifdef CONFIG_PM_RUNTIME
        struct timer_list       suspend_timer;
@@ -476,9 +477,15 @@ struct dev_pm_info {
        enum rpm_request        request;
        enum rpm_status         runtime_status;
        int                     runtime_error;
+       unsigned long           active_jiffies;
+       unsigned long           suspended_jiffies;
+       unsigned long           accounting_timestamp;
 #endif
 };
 
+extern void update_pm_runtime_accounting(struct device *dev);
+
+
 /*
  * The PM_EVENT_ messages are also used by drivers implementing the legacy
  * suspend framework, based on the ->suspend() and ->resume() callbacks common
@@ -552,6 +559,11 @@ extern void __suspend_report_result(const char *function, void *fn, int ret);
        } while (0)
 
 extern void device_pm_wait_for_dev(struct device *sub, struct device *dev);
+
+/* drivers/base/power/wakeup.c */
+extern void pm_wakeup_event(struct device *dev, unsigned int msec);
+extern void pm_stay_awake(struct device *dev);
+extern void pm_relax(void);
 #else /* !CONFIG_PM_SLEEP */
 
 #define device_pm_lock() do {} while (0)
@@ -565,6 +577,10 @@ static inline int dpm_suspend_start(pm_message_t state)
 #define suspend_report_result(fn, ret)         do {} while (0)
 
 static inline void device_pm_wait_for_dev(struct device *a, struct device *b) {}
+
+static inline void pm_wakeup_event(struct device *dev, unsigned int msec) {}
+static inline void pm_stay_awake(struct device *dev) {}
+static inline void pm_relax(void) {}
 #endif /* !CONFIG_PM_SLEEP */
 
 /* How to reorder dpm_list after device_move() */