]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blame - kernel/power/power.h
Merge branch 'upstream-fixes'
[mirror_ubuntu-zesty-kernel.git] / kernel / power / power.h
CommitLineData
1da177e4
LT
1#include <linux/suspend.h>
2#include <linux/utsname.h>
3
1da177e4
LT
4struct swsusp_info {
5 struct new_utsname uts;
6 u32 version_code;
7 unsigned long num_physpages;
8 int cpus;
9 unsigned long image_pages;
7088a5c0 10 unsigned long pages;
1da177e4
LT
11} __attribute__((aligned(PAGE_SIZE)));
12
13
14
15#ifdef CONFIG_SOFTWARE_SUSPEND
16extern int pm_suspend_disk(void);
17
18#else
19static inline int pm_suspend_disk(void)
20{
21 return -EPERM;
22}
23#endif
24extern struct semaphore pm_sem;
25#define power_attr(_name) \
26static struct subsys_attribute _name##_attr = { \
27 .attr = { \
28 .name = __stringify(_name), \
29 .mode = 0644, \
30 }, \
31 .show = _name##_show, \
32 .store = _name##_store, \
33}
34
35extern struct subsystem power_subsys;
36
25761b6e
RW
37/* References to section boundaries */
38extern const void __nosave_begin, __nosave_end;
39
40extern unsigned int nr_copy_pages;
72a97e08
RW
41extern struct pbe *pagedir_nosave;
42
853609b6
RW
43/* Preferred image size in bytes (default 500 MB) */
44extern unsigned long image_size;
25761b6e
RW
45
46extern asmlinkage int swsusp_arch_suspend(void);
47extern asmlinkage int swsusp_arch_resume(void);
48
72a97e08 49extern unsigned int count_data_pages(void);
ed14b527 50extern void free_pagedir(struct pbe *pblist);
72a97e08 51extern void release_eaten_pages(void);
054bd4c1 52extern struct pbe *alloc_pagedir(unsigned nr_pages, gfp_t gfp_mask, int safe_needed);
2c1b4a5c 53extern void swsusp_free(void);
054bd4c1 54extern int alloc_data_pages(struct pbe *pblist, gfp_t gfp_mask, int safe_needed);
7088a5c0
RW
55extern unsigned int snapshot_nr_pages(void);
56extern struct pbe *snapshot_pblist(void);
57extern void snapshot_pblist_set(struct pbe *pblist);