35 lines · c
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */2#ifndef _LINUX_SUSPEND_IOCTLS_H3#define _LINUX_SUSPEND_IOCTLS_H4 5#include <linux/types.h>6/*7 * This structure is used to pass the values needed for the identification8 * of the resume swap area from a user space to the kernel via the9 * SNAPSHOT_SET_SWAP_AREA ioctl10 */11struct resume_swap_area {12 __kernel_loff_t offset;13 __u32 dev;14} __attribute__((packed));15 16#define SNAPSHOT_IOC_MAGIC '3'17#define SNAPSHOT_FREEZE _IO(SNAPSHOT_IOC_MAGIC, 1)18#define SNAPSHOT_UNFREEZE _IO(SNAPSHOT_IOC_MAGIC, 2)19#define SNAPSHOT_ATOMIC_RESTORE _IO(SNAPSHOT_IOC_MAGIC, 4)20#define SNAPSHOT_FREE _IO(SNAPSHOT_IOC_MAGIC, 5)21#define SNAPSHOT_FREE_SWAP_PAGES _IO(SNAPSHOT_IOC_MAGIC, 9)22#define SNAPSHOT_S2RAM _IO(SNAPSHOT_IOC_MAGIC, 11)23#define SNAPSHOT_SET_SWAP_AREA _IOW(SNAPSHOT_IOC_MAGIC, 13, \24 struct resume_swap_area)25#define SNAPSHOT_GET_IMAGE_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 14, __kernel_loff_t)26#define SNAPSHOT_PLATFORM_SUPPORT _IO(SNAPSHOT_IOC_MAGIC, 15)27#define SNAPSHOT_POWER_OFF _IO(SNAPSHOT_IOC_MAGIC, 16)28#define SNAPSHOT_CREATE_IMAGE _IOW(SNAPSHOT_IOC_MAGIC, 17, int)29#define SNAPSHOT_PREF_IMAGE_SIZE _IO(SNAPSHOT_IOC_MAGIC, 18)30#define SNAPSHOT_AVAIL_SWAP_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 19, __kernel_loff_t)31#define SNAPSHOT_ALLOC_SWAP_PAGE _IOR(SNAPSHOT_IOC_MAGIC, 20, __kernel_loff_t)32#define SNAPSHOT_IOC_MAXNR 2033 34#endif /* _LINUX_SUSPEND_IOCTLS_H */35