suspend_ioctls.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2. #ifndef _LINUX_SUSPEND_IOCTLS_H
  3. #define _LINUX_SUSPEND_IOCTLS_H
  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. #define SNAPSHOT_IOC_MAGIC '3'
  15. #define SNAPSHOT_FREEZE _IO(SNAPSHOT_IOC_MAGIC, 1)
  16. #define SNAPSHOT_UNFREEZE _IO(SNAPSHOT_IOC_MAGIC, 2)
  17. #define SNAPSHOT_ATOMIC_RESTORE _IO(SNAPSHOT_IOC_MAGIC, 4)
  18. #define SNAPSHOT_FREE _IO(SNAPSHOT_IOC_MAGIC, 5)
  19. #define SNAPSHOT_FREE_SWAP_PAGES _IO(SNAPSHOT_IOC_MAGIC, 9)
  20. #define SNAPSHOT_S2RAM _IO(SNAPSHOT_IOC_MAGIC, 11)
  21. #define SNAPSHOT_SET_SWAP_AREA _IOW(SNAPSHOT_IOC_MAGIC, 13, \
  22. struct resume_swap_area)
  23. #define SNAPSHOT_GET_IMAGE_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 14, __kernel_loff_t)
  24. #define SNAPSHOT_PLATFORM_SUPPORT _IO(SNAPSHOT_IOC_MAGIC, 15)
  25. #define SNAPSHOT_POWER_OFF _IO(SNAPSHOT_IOC_MAGIC, 16)
  26. #define SNAPSHOT_CREATE_IMAGE _IOW(SNAPSHOT_IOC_MAGIC, 17, int)
  27. #define SNAPSHOT_PREF_IMAGE_SIZE _IO(SNAPSHOT_IOC_MAGIC, 18)
  28. #define SNAPSHOT_AVAIL_SWAP_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 19, __kernel_loff_t)
  29. #define SNAPSHOT_ALLOC_SWAP_PAGE _IOR(SNAPSHOT_IOC_MAGIC, 20, __kernel_loff_t)
  30. #define SNAPSHOT_IOC_MAXNR 20
  31. #endif /* _LINUX_SUSPEND_IOCTLS_H */