xref: /aosp_15_r20/prebuilts/build-tools/sysroots/aarch64-unknown-linux-musl/include/linux/pfrut.h (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
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