1 #ifndef _LINUX_SUSPEND_IOCTLS_H 2 #define _LINUX_SUSPEND_IOCTLS_H 3 4 #include <linux/types.h> 5 /* 6 * This structure is used to pass the values needed for the identification 7 * of the resume swap area from a user space to the kernel via the 8 * SNAPSHOT_SET_SWAP_AREA ioctl 9 */ 10 struct resume_swap_area { 11 __kernel_loff_t offset; 12 __u32 dev; 13 } __attribute__((packed)); 14 15 #define SNAPSHOT_IOC_MAGIC '3' 16 #define SNAPSHOT_FREEZE _IO(SNAPSHOT_IOC_MAGIC, 1) 17 #define SNAPSHOT_UNFREEZE _IO(SNAPSHOT_IOC_MAGIC, 2) 18 #define SNAPSHOT_ATOMIC_RESTORE _IO(SNAPSHOT_IOC_MAGIC, 4) 19 #define SNAPSHOT_FREE _IO(SNAPSHOT_IOC_MAGIC, 5) 20 #define SNAPSHOT_FREE_SWAP_PAGES _IO(SNAPSHOT_IOC_MAGIC, 9) 21 #define SNAPSHOT_S2RAM _IO(SNAPSHOT_IOC_MAGIC, 11) 22 #define SNAPSHOT_SET_SWAP_AREA _IOW(SNAPSHOT_IOC_MAGIC, 13, \ 23 struct resume_swap_area) 24 #define SNAPSHOT_GET_IMAGE_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 14, __kernel_loff_t) 25 #define SNAPSHOT_PLATFORM_SUPPORT _IO(SNAPSHOT_IOC_MAGIC, 15) 26 #define SNAPSHOT_POWER_OFF _IO(SNAPSHOT_IOC_MAGIC, 16) 27 #define SNAPSHOT_CREATE_IMAGE _IOW(SNAPSHOT_IOC_MAGIC, 17, int) 28 #define SNAPSHOT_PREF_IMAGE_SIZE _IO(SNAPSHOT_IOC_MAGIC, 18) 29 #define SNAPSHOT_AVAIL_SWAP_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 19, __kernel_loff_t) 30 #define SNAPSHOT_ALLOC_SWAP_PAGE _IOR(SNAPSHOT_IOC_MAGIC, 20, __kernel_loff_t) 31 #define SNAPSHOT_IOC_MAXNR 20 32 33 #endif /* _LINUX_SUSPEND_IOCTLS_H */ 34