1*cda5da8dSAndroid Build Coastguard Worker /* 2*cda5da8dSAndroid Build Coastguard Worker * This file is auto-generated. Modifications will be lost. 3*cda5da8dSAndroid Build Coastguard Worker * 4*cda5da8dSAndroid Build Coastguard Worker * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5*cda5da8dSAndroid Build Coastguard Worker * for more information. 6*cda5da8dSAndroid Build Coastguard Worker */ 7*cda5da8dSAndroid Build Coastguard Worker #ifndef __PFRUT_H__ 8*cda5da8dSAndroid Build Coastguard Worker #define __PFRUT_H__ 9*cda5da8dSAndroid Build Coastguard Worker #include <linux/ioctl.h> 10*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h> 11*cda5da8dSAndroid Build Coastguard Worker #define PFRUT_IOCTL_MAGIC 0xEE 12*cda5da8dSAndroid Build Coastguard Worker #define PFRU_IOC_SET_REV _IOW(PFRUT_IOCTL_MAGIC, 0x01, unsigned int) 13*cda5da8dSAndroid Build Coastguard Worker #define PFRU_IOC_STAGE _IOW(PFRUT_IOCTL_MAGIC, 0x02, unsigned int) 14*cda5da8dSAndroid Build Coastguard Worker #define PFRU_IOC_ACTIVATE _IOW(PFRUT_IOCTL_MAGIC, 0x03, unsigned int) 15*cda5da8dSAndroid Build Coastguard Worker #define PFRU_IOC_STAGE_ACTIVATE _IOW(PFRUT_IOCTL_MAGIC, 0x04, unsigned int) 16*cda5da8dSAndroid Build Coastguard Worker #define PFRU_IOC_QUERY_CAP _IOR(PFRUT_IOCTL_MAGIC, 0x05, struct pfru_update_cap_info) 17*cda5da8dSAndroid Build Coastguard Worker struct pfru_payload_hdr { 18*cda5da8dSAndroid Build Coastguard Worker __u32 sig; 19*cda5da8dSAndroid Build Coastguard Worker __u32 hdr_version; 20*cda5da8dSAndroid Build Coastguard Worker __u32 hdr_size; 21*cda5da8dSAndroid Build Coastguard Worker __u32 hw_ver; 22*cda5da8dSAndroid Build Coastguard Worker __u32 rt_ver; 23*cda5da8dSAndroid Build Coastguard Worker __u8 platform_id[16]; 24*cda5da8dSAndroid Build Coastguard Worker }; 25*cda5da8dSAndroid Build Coastguard Worker enum pfru_dsm_status { 26*cda5da8dSAndroid Build Coastguard Worker DSM_SUCCEED = 0, 27*cda5da8dSAndroid Build Coastguard Worker DSM_FUNC_NOT_SUPPORT = 1, 28*cda5da8dSAndroid Build Coastguard Worker DSM_INVAL_INPUT = 2, 29*cda5da8dSAndroid Build Coastguard Worker DSM_HARDWARE_ERR = 3, 30*cda5da8dSAndroid Build Coastguard Worker DSM_RETRY_SUGGESTED = 4, 31*cda5da8dSAndroid Build Coastguard Worker DSM_UNKNOWN = 5, 32*cda5da8dSAndroid Build Coastguard Worker DSM_FUNC_SPEC_ERR = 6, 33*cda5da8dSAndroid Build Coastguard Worker }; 34*cda5da8dSAndroid Build Coastguard Worker struct pfru_update_cap_info { 35*cda5da8dSAndroid Build Coastguard Worker __u32 status; 36*cda5da8dSAndroid Build Coastguard Worker __u32 update_cap; 37*cda5da8dSAndroid Build Coastguard Worker __u8 code_type[16]; 38*cda5da8dSAndroid Build Coastguard Worker __u32 fw_version; 39*cda5da8dSAndroid Build Coastguard Worker __u32 code_rt_version; 40*cda5da8dSAndroid Build Coastguard Worker __u8 drv_type[16]; 41*cda5da8dSAndroid Build Coastguard Worker __u32 drv_rt_version; 42*cda5da8dSAndroid Build Coastguard Worker __u32 drv_svn; 43*cda5da8dSAndroid Build Coastguard Worker __u8 platform_id[16]; 44*cda5da8dSAndroid Build Coastguard Worker __u8 oem_id[16]; 45*cda5da8dSAndroid Build Coastguard Worker __u32 oem_info_len; 46*cda5da8dSAndroid Build Coastguard Worker }; 47*cda5da8dSAndroid Build Coastguard Worker struct pfru_com_buf_info { 48*cda5da8dSAndroid Build Coastguard Worker __u32 status; 49*cda5da8dSAndroid Build Coastguard Worker __u32 ext_status; 50*cda5da8dSAndroid Build Coastguard Worker __u64 addr_lo; 51*cda5da8dSAndroid Build Coastguard Worker __u64 addr_hi; 52*cda5da8dSAndroid Build Coastguard Worker __u32 buf_size; 53*cda5da8dSAndroid Build Coastguard Worker }; 54*cda5da8dSAndroid Build Coastguard Worker struct pfru_updated_result { 55*cda5da8dSAndroid Build Coastguard Worker __u32 status; 56*cda5da8dSAndroid Build Coastguard Worker __u32 ext_status; 57*cda5da8dSAndroid Build Coastguard Worker __u64 low_auth_time; 58*cda5da8dSAndroid Build Coastguard Worker __u64 high_auth_time; 59*cda5da8dSAndroid Build Coastguard Worker __u64 low_exec_time; 60*cda5da8dSAndroid Build Coastguard Worker __u64 high_exec_time; 61*cda5da8dSAndroid Build Coastguard Worker }; 62*cda5da8dSAndroid Build Coastguard Worker struct pfrt_log_data_info { 63*cda5da8dSAndroid Build Coastguard Worker __u32 status; 64*cda5da8dSAndroid Build Coastguard Worker __u32 ext_status; 65*cda5da8dSAndroid Build Coastguard Worker __u64 chunk1_addr_lo; 66*cda5da8dSAndroid Build Coastguard Worker __u64 chunk1_addr_hi; 67*cda5da8dSAndroid Build Coastguard Worker __u64 chunk2_addr_lo; 68*cda5da8dSAndroid Build Coastguard Worker __u64 chunk2_addr_hi; 69*cda5da8dSAndroid Build Coastguard Worker __u32 max_data_size; 70*cda5da8dSAndroid Build Coastguard Worker __u32 chunk1_size; 71*cda5da8dSAndroid Build Coastguard Worker __u32 chunk2_size; 72*cda5da8dSAndroid Build Coastguard Worker __u32 rollover_cnt; 73*cda5da8dSAndroid Build Coastguard Worker __u32 reset_cnt; 74*cda5da8dSAndroid Build Coastguard Worker }; 75*cda5da8dSAndroid Build Coastguard Worker struct pfrt_log_info { 76*cda5da8dSAndroid Build Coastguard Worker __u32 log_level; 77*cda5da8dSAndroid Build Coastguard Worker __u32 log_type; 78*cda5da8dSAndroid Build Coastguard Worker __u32 log_revid; 79*cda5da8dSAndroid Build Coastguard Worker }; 80*cda5da8dSAndroid Build Coastguard Worker #define PFRT_LOG_IOC_SET_INFO _IOW(PFRUT_IOCTL_MAGIC, 0x06, struct pfrt_log_info) 81*cda5da8dSAndroid Build Coastguard Worker #define PFRT_LOG_IOC_GET_INFO _IOR(PFRUT_IOCTL_MAGIC, 0x07, struct pfrt_log_info) 82*cda5da8dSAndroid Build Coastguard Worker #define PFRT_LOG_IOC_GET_DATA_INFO _IOR(PFRUT_IOCTL_MAGIC, 0x08, struct pfrt_log_data_info) 83*cda5da8dSAndroid Build Coastguard Worker #endif 84