• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef UAPI_UFS_H_
20 #define UAPI_UFS_H_
21 #define MAX_QUERY_IDN 0x20
22 enum flag_idn {
23   QUERY_FLAG_IDN_FDEVICEINIT = 0x01,
24   QUERY_FLAG_IDN_PERMANENT_WPE = 0x02,
25   QUERY_FLAG_IDN_PWR_ON_WPE = 0x03,
26   QUERY_FLAG_IDN_BKOPS_EN = 0x04,
27   QUERY_FLAG_IDN_LIFE_SPAN_MODE_ENABLE = 0x05,
28   QUERY_FLAG_IDN_PURGE_ENABLE = 0x06,
29   QUERY_FLAG_IDN_RESERVED2 = 0x07,
30   QUERY_FLAG_IDN_FPHYRESOURCEREMOVAL = 0x08,
31   QUERY_FLAG_IDN_BUSY_RTC = 0x09,
32   QUERY_FLAG_IDN_RESERVED3 = 0x0A,
33   QUERY_FLAG_IDN_PERMANENTLY_DISABLE_FW_UPDATE = 0x0B,
34   QUERY_FLAG_IDN_MANUAL_GC_CONT = 0x0E,
35   QUERY_FLAG_IDN_WB_EN = 0x0E,
36   QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN = 0x0F,
37   QUERY_FLAG_IDN_WB_BUFF_FLUSH_DURING_HIBERN8 = 0x10,
38 };
39 enum attr_idn {
40   QUERY_ATTR_IDN_BOOT_LU_EN = 0x00,
41   QUERY_ATTR_IDN_RESERVED = 0x01,
42   QUERY_ATTR_IDN_POWER_MODE = 0x02,
43   QUERY_ATTR_IDN_ACTIVE_ICC_LVL = 0x03,
44   QUERY_ATTR_IDN_OOO_DATA_EN = 0x04,
45   QUERY_ATTR_IDN_BKOPS_STATUS = 0x05,
46   QUERY_ATTR_IDN_PURGE_STATUS = 0x06,
47   QUERY_ATTR_IDN_MAX_DATA_IN = 0x07,
48   QUERY_ATTR_IDN_MAX_DATA_OUT = 0x08,
49   QUERY_ATTR_IDN_DYN_CAP_NEEDED = 0x09,
50   QUERY_ATTR_IDN_REF_CLK_FREQ = 0x0A,
51   QUERY_ATTR_IDN_CONF_DESC_LOCK = 0x0B,
52   QUERY_ATTR_IDN_MAX_NUM_OF_RTT = 0x0C,
53   QUERY_ATTR_IDN_EE_CONTROL = 0x0D,
54   QUERY_ATTR_IDN_EE_STATUS = 0x0E,
55   QUERY_ATTR_IDN_SECONDS_PASSED = 0x0F,
56   QUERY_ATTR_IDN_CNTX_CONF = 0x10,
57   QUERY_ATTR_IDN_CORR_PRG_BLK_NUM = 0x11,
58   QUERY_ATTR_IDN_MANUAL_GC_CONT = 0x12,
59   QUERY_ATTR_IDN_MANUAL_GC_STATUS_1 = 0x13,
60   QUERY_ATTR_IDN_FFU_STATUS = 0x14,
61   QUERY_ATTR_IDN_PSA_STATE = 0x15,
62   QUERY_ATTR_IDN_PSA_DATA_SIZE = 0x16,
63   QUERY_ATTR_IDN_REF_CLK_GATING_WAIT_TIME = 0x17,
64   QUERY_ATTR_IDN_MANUAL_GC_STATUS = 0x17,
65   QUERY_ATTR_IDN_WB_FLUSH_STATUS = 0x1C,
66   QUERY_ATTR_IDN_AVAIL_WB_BUFF_SIZE = 0x1D,
67   QUERY_ATTR_IDN_WB_BUFF_LIFE_TIME_EST = 0x1E,
68   QUERY_ATTR_IDN_CURR_WB_BUFF_SIZE = 0x1F,
69 };
70 #define QUERY_ATTR_IDN_BOOT_LU_EN_MAX 0x02
71 #define QUERY_ATTR_IDN_REF_CLK_GATING_WAIT_TIME QUERY_ATTR_IDN_REF_CLK_GATING_WAIT_TIME
72 enum desc_idn {
73   QUERY_DESC_IDN_DEVICE = 0x0,
74   QUERY_DESC_IDN_CONFIGURATION = 0x1,
75   QUERY_DESC_IDN_UNIT = 0x2,
76   QUERY_DESC_IDN_RFU_0 = 0x3,
77   QUERY_DESC_IDN_INTERCONNECT = 0x4,
78   QUERY_DESC_IDN_STRING = 0x5,
79   QUERY_DESC_IDN_RFU_1 = 0x6,
80   QUERY_DESC_IDN_GEOMETRY = 0x7,
81   QUERY_DESC_IDN_POWER = 0x8,
82   QUERY_DESC_IDN_HEALTH = 0x9,
83   QUERY_DESC_IDN_MAX,
84 };
85 enum query_opcode {
86   UPIU_QUERY_OPCODE_NOP = 0x0,
87   UPIU_QUERY_OPCODE_READ_DESC = 0x1,
88   UPIU_QUERY_OPCODE_WRITE_DESC = 0x2,
89   UPIU_QUERY_OPCODE_READ_ATTR = 0x3,
90   UPIU_QUERY_OPCODE_WRITE_ATTR = 0x4,
91   UPIU_QUERY_OPCODE_READ_FLAG = 0x5,
92   UPIU_QUERY_OPCODE_SET_FLAG = 0x6,
93   UPIU_QUERY_OPCODE_CLEAR_FLAG = 0x7,
94   UPIU_QUERY_OPCODE_TOGGLE_FLAG = 0x8,
95   UPIU_QUERY_OPCODE_MAX,
96 };
97 #endif
98