xref: /developtools/hdc/src/common/define_enum.h (revision cc290419)
1/*
2 * Copyright (C) 2021 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15#ifndef DEFINE_ENUM_H
16#define DEFINE_ENUM_H
17
18namespace Hdc {
19enum HdcLogLevel {
20    LOG_OFF,
21    LOG_FATAL,
22    LOG_WARN,
23    LOG_INFO,  // default
24    LOG_DEBUG,
25    LOG_ALL,
26    LOG_VERBOSE,
27    LOG_LAST = LOG_VERBOSE,  // tail, not use
28};
29
30enum MessageLevel {
31    MSG_FAIL,
32    MSG_INFO,
33    MSG_OK,
34};
35
36enum ConnType { CONN_USB = 0, CONN_TCP, CONN_SERIAL, CONN_BT, CONN_UNKNOWN };
37const string conTypeDetail[] = { "USB", "TCP", "UART", "BT", "UNKNOWN" };
38
39#ifdef HDC_SUPPORT_UART
40enum UartTimeConst {
41    UV_TIMEOUT = 10,
42    UV_REPEAT = 100,
43    TIMEOUTS_R_INTERALTIMEOUT = 1000,
44    TIMEOUTS_R_TOALTIMEOUTMULTIPLIER = 500,
45    TIMEOUTS_R_TIMEOUTCONSTANT = 5000
46};
47enum UartSetSerialNBits {
48    UART_BIT1 = 7,
49    UART_BIT2 = 8
50};
51enum UartSetSerialNSpeed {
52    UART_SPEED2400 = 2400,
53    UART_SPEED4800 = 4800,
54    UART_SPEED9600 = 9600,
55    UART_SPEED115200 = 115200,
56    UART_SPEED921600 = 921600,
57    UART_SPEED1500000 = 1500000
58};
59enum UartSetSerialNStop {
60    UART_STOP1 = 1,
61    UART_STOP2 = 2
62};
63#endif
64enum ConnStatus { STATUS_UNKNOW = 0, STATUS_READY, STATUS_CONNECTED, STATUS_OFFLINE, STATUS_UNAUTH };
65const string conStatusDetail[] = { "Unknown", "Ready", "Connected", "Offline", "Unauthorized" };
66
67enum AuthVerifyType { RSA_ENCRYPT = 0, RSA_3072_SHA512 = 1, UNKNOWN = 100 };
68
69enum OperateID {
70    OP_ADD,
71    OP_REMOVE,
72    OP_QUERY,
73    OP_QUERY_REF,  // crossthread query, manually reduce ref
74    OP_GET_STRLIST,
75    OP_GET_STRLIST_FULL,
76    OP_GET_ANY,
77    OP_UPDATE,
78    OP_CLEAR,
79    OP_INIT,
80    OP_GET_ONLY,
81    OP_VOTE_RESET,
82    OP_WAIT_FOR_ANY
83};
84
85enum RetErrCode {
86    RET_SUCCESS = 0,
87    ERR_GENERIC = -1,
88    ERR_NO_SUPPORT = -2,
89    ERR_PARAM_NULLPTR = -5,
90    ERR_LIBUSB_OPEN = -100,
91    ERR_BUF_SIZE = -10000,
92    ERR_BUF_ALLOC,
93    ERR_BUF_OVERFLOW,
94    ERR_BUF_CHECK,
95    ERR_BUF_RESET,
96    ERR_BUF_COPY,
97    ERR_CHECK_VERSION,
98    ERR_FILE_OPEN = -11000,
99    ERR_FILE_READ,
100    ERR_FILE_WRITE,
101    ERR_FILE_STAT,
102    ERR_FILE_PATH_CHECK,
103    ERR_PARM_FORMAT = -12000,
104    ERR_PARM_SIZE,
105    ERR_PARM_FAIL,
106    ERR_API_FAIL = -13000,
107    ERR_IO_FAIL = -14000,
108    ERR_IO_TIMEOUT,
109    ERR_IO_SOFT_RESET,
110    ERR_SESSION_NOFOUND = -15000,
111    ERR_SESSION_OFFLINE,
112    ERR_SESSION_DEAD,
113    ERR_HANDSHAKE_NOTMATCH = -16000,
114    ERR_HANDSHAKE_CONNECTKEY_FAILED,
115    ERR_HANDSHAKE_HANGUP_CHILD,
116    ERR_SOCKET_FAIL = -17000,
117    ERR_SOCKET_DUPLICATE,
118    ERR_MODULE_JDWP_FAILED = -18000,
119    ERR_UT_MODULE_NOTREADY = -19000,
120    ERR_UT_MODULE_WAITMAX,
121    ERR_THREAD_MUTEX_FAIL = -20000,
122    ERR_PROCESS_SUB_FAIL = -21000,
123    ERR_PRIVELEGE_NEED = -22000,
124};
125
126// Flags shared by multiple modules
127enum AsyncEvent {
128    ASYNC_STOP_MAINLOOP = 0,
129    ASYNC_FREE_SESSION,
130    ASYNC_FREE_CHANNEL,
131};
132enum InnerCtrlCommand {
133    SP_START_SESSION = 0,
134    SP_STOP_SESSION,
135    SP_ATTACH_CHANNEL,
136    SP_DEATCH_CHANNEL,
137    SP_JDWP_NEWFD,
138    SP_ARK_NEWFD,
139};
140
141enum HdcCommand {
142    // core commands types
143    CMD_KERNEL_HELP = 0,
144    CMD_KERNEL_HANDSHAKE,
145    CMD_KERNEL_CHANNEL_CLOSE,
146    CMD_KERNEL_TARGET_DISCOVER = 4,
147    CMD_KERNEL_TARGET_LIST,
148    CMD_KERNEL_TARGET_ANY,
149    CMD_KERNEL_TARGET_CONNECT,
150    CMD_KERNEL_TARGET_DISCONNECT,
151    CMD_KERNEL_ECHO,
152    CMD_KERNEL_ECHO_RAW,
153    CMD_KERNEL_ENABLE_KEEPALIVE,
154    CMD_KERNEL_WAKEUP_SLAVETASK,
155    CMD_CHECK_SERVER,
156    CMD_CHECK_DEVICE,
157    CMD_WAIT_FOR,
158    // One-pass simple commands
159    CMD_UNITY_COMMAND_HEAD = 1000,  // not use
160    CMD_UNITY_EXECUTE,
161    CMD_UNITY_REMOUNT,
162    CMD_UNITY_REBOOT,
163    CMD_UNITY_RUNMODE,
164    CMD_UNITY_HILOG,
165    CMD_UNITY_ROOTRUN = 1007,
166    CMD_JDWP_LIST,
167    CMD_JDWP_TRACK,
168    CMD_UNITY_COMMAND_TAIL,  // not use
169    // It will be separated from unity in the near future
170    CMD_UNITY_BUGREPORT_INIT,
171    CMD_UNITY_BUGREPORT_DATA,
172    // Shell commands types
173    CMD_SHELL_INIT = 2000,
174    CMD_SHELL_DATA,
175    // Forward commands types
176    CMD_FORWARD_INIT = 2500,
177    CMD_FORWARD_CHECK,
178    CMD_FORWARD_CHECK_RESULT,
179    CMD_FORWARD_ACTIVE_SLAVE,
180    CMD_FORWARD_ACTIVE_MASTER,
181    CMD_FORWARD_DATA,
182    CMD_FORWARD_FREE_CONTEXT,
183    CMD_FORWARD_LIST,
184    CMD_FORWARD_REMOVE,
185    CMD_FORWARD_SUCCESS,
186    // File commands
187    CMD_FILE_INIT = 3000,
188    CMD_FILE_CHECK,
189    CMD_FILE_BEGIN,
190    CMD_FILE_DATA,
191    CMD_FILE_FINISH,
192    CMD_APP_SIDELOAD,
193    CMD_FILE_MODE,
194    CMD_DIR_MODE,
195    // App commands
196    CMD_APP_INIT = 3500,
197    CMD_APP_CHECK,
198    CMD_APP_BEGIN,
199    CMD_APP_DATA,
200    CMD_APP_FINISH,
201    CMD_APP_UNINSTALL,
202
203    // deprecated, remove later
204    CMD_UNITY_JPID = CMD_JDWP_LIST,
205
206    // Flashd commands
207    CMD_FLASHD_UPDATE_INIT = 4000,
208    CMD_FLASHD_FLASH_INIT,
209    CMD_FLASHD_CHECK,
210    CMD_FLASHD_BEGIN,
211    CMD_FLASHD_DATA,
212    CMD_FLASHD_FINISH,
213    CMD_FLASHD_ERASE,
214    CMD_FLASHD_FORMAT,
215    CMD_FLASHD_PROGRESS,
216};
217
218enum UsbProtocolOption {
219    USB_OPTION_HEADER = 1,
220    USB_OPTION_RESET = 2,
221    USB_OPTION_RESERVE4 = 4,
222    USB_OPTION_RESERVE8 = 8,
223    USB_OPTION_RESERVE16 = 16,
224};
225}
226#endif