1 /* 2 * This header was generated from the Linux kernel headers by update_headers.py, 3 * to provide necessary information from kernel to userspace, such as constants, 4 * structures, and macros, and thus, contains no copyrightable information. 5 */ 6 #ifndef __PHANTOM_H 7 #define __PHANTOM_H 8 #include <linux/types.h> 9 struct phm_reg { 10 __u32 reg; 11 __u32 value; 12 }; 13 struct phm_regs { 14 __u32 count; 15 __u32 mask; 16 __u32 values[8]; 17 }; 18 #define PH_IOC_MAGIC 'p' 19 #define PHN_GET_REG _IOWR(PH_IOC_MAGIC, 0, struct phm_reg *) 20 #define PHN_SET_REG _IOW(PH_IOC_MAGIC, 1, struct phm_reg *) 21 #define PHN_GET_REGS _IOWR(PH_IOC_MAGIC, 2, struct phm_regs *) 22 #define PHN_SET_REGS _IOW(PH_IOC_MAGIC, 3, struct phm_regs *) 23 #define PHN_NOT_OH _IO(PH_IOC_MAGIC, 4) 24 #define PHN_GETREG _IOWR(PH_IOC_MAGIC, 5, struct phm_reg) 25 #define PHN_SETREG _IOW(PH_IOC_MAGIC, 6, struct phm_reg) 26 #define PHN_GETREGS _IOWR(PH_IOC_MAGIC, 7, struct phm_regs) 27 #define PHN_SETREGS _IOW(PH_IOC_MAGIC, 8, struct phm_regs) 28 #define PHN_CONTROL 0x6 29 #define PHN_CTL_AMP 0x1 30 #define PHN_CTL_BUT 0x2 31 #define PHN_CTL_IRQ 0x10 32 #define PHN_ZERO_FORCE 2048 33 #endif 34