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 _UAPIFSL_HYPERVISOR_H 7 #define _UAPIFSL_HYPERVISOR_H 8 #include <linux/types.h> 9 struct fsl_hv_ioctl_restart { 10 __u32 ret; 11 __u32 partition; 12 }; 13 struct fsl_hv_ioctl_status { 14 __u32 ret; 15 __u32 partition; 16 __u32 status; 17 }; 18 struct fsl_hv_ioctl_start { 19 __u32 ret; 20 __u32 partition; 21 __u32 entry_point; 22 __u32 load; 23 }; 24 struct fsl_hv_ioctl_stop { 25 __u32 ret; 26 __u32 partition; 27 }; 28 struct fsl_hv_ioctl_memcpy { 29 __u32 ret; 30 __u32 source; 31 __u32 target; 32 __u32 reserved; 33 __u64 local_vaddr; 34 __u64 remote_paddr; 35 __u64 count; 36 }; 37 struct fsl_hv_ioctl_doorbell { 38 __u32 ret; 39 __u32 doorbell; 40 }; 41 struct fsl_hv_ioctl_prop { 42 __u32 ret; 43 __u32 handle; 44 __u64 path; 45 __u64 propname; 46 __u64 propval; 47 __u32 proplen; 48 __u32 reserved; 49 }; 50 #define FSL_HV_IOCTL_TYPE 0xAF 51 #define FSL_HV_IOCTL_PARTITION_RESTART \ 52 _IOWR(FSL_HV_IOCTL_TYPE, 1, struct fsl_hv_ioctl_restart) 53 #define FSL_HV_IOCTL_PARTITION_GET_STATUS \ 54 _IOWR(FSL_HV_IOCTL_TYPE, 2, struct fsl_hv_ioctl_status) 55 #define FSL_HV_IOCTL_PARTITION_START \ 56 _IOWR(FSL_HV_IOCTL_TYPE, 3, struct fsl_hv_ioctl_start) 57 #define FSL_HV_IOCTL_PARTITION_STOP \ 58 _IOWR(FSL_HV_IOCTL_TYPE, 4, struct fsl_hv_ioctl_stop) 59 #define FSL_HV_IOCTL_MEMCPY \ 60 _IOWR(FSL_HV_IOCTL_TYPE, 5, struct fsl_hv_ioctl_memcpy) 61 #define FSL_HV_IOCTL_DOORBELL \ 62 _IOWR(FSL_HV_IOCTL_TYPE, 6, struct fsl_hv_ioctl_doorbell) 63 #define FSL_HV_IOCTL_GETPROP \ 64 _IOWR(FSL_HV_IOCTL_TYPE, 7, struct fsl_hv_ioctl_prop) 65 #define FSL_HV_IOCTL_SETPROP \ 66 _IOWR(FSL_HV_IOCTL_TYPE, 8, struct fsl_hv_ioctl_prop) 67 #endif 68